diff options
| author | savask <savask@yandex.ru> | 2012-04-27 12:33:49 (GMT) |
|---|---|---|
| committer | savask <savask@yandex.ru> | 2012-04-27 12:36:08 (GMT) |
| commit | 68ab2e31489a403dbb2361bc524246617168f121 (patch) | |
| tree | 616d6080c7b4f055749513d7731ae822862720b9 /src/elements | |
| parent | 1d36ac554c9715f9efa8c4c0ccde828fa0a650fa (diff) | |
| download | powder-68ab2e31489a403dbb2361bc524246617168f121.zip powder-68ab2e31489a403dbb2361bc524246617168f121.tar.gz | |
Gel won't move solids any more.
Diffstat (limited to 'src/elements')
| -rw-r--r-- | src/elements/gel.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/elements/gel.c b/src/elements/gel.c index ebc5824..d17a552 100644 --- a/src/elements/gel.c +++ b/src/elements/gel.c @@ -50,8 +50,14 @@ int update_GEL(UPDATE_FUNC_ARGS) { per *= 0.1; dx *= per; dy *= per; - parts[i].vx += dx; parts[r>>8].vx -= dx; - parts[i].vy += dy; parts[r>>8].vy -= dy; + parts[i].vx += dx; + parts[i].vy += dy; + + if ((ptypes[r&0xFF].state!=ST_SOLID && ptypes[r&0xFF].state!=ST_NONE) || (r&0xFF)==PT_GOO) + { + parts[r>>8].vx -= dx; + parts[r>>8].vy -= dy; + } } } return 0; |
