diff options
| author | jacksonmj <jacksonmj@jacksonmj.none> | 2011-02-09 17:19:48 (GMT) |
|---|---|---|
| committer | jacksonmj <jacksonmj@jacksonmj.none> | 2011-02-09 17:19:48 (GMT) |
| commit | 457ceeff0a2b546484137d64872c04fed187b9c2 (patch) | |
| tree | bcb0ab8e2e924e149f7b432fb22c7847e7fbf658 /src/elements | |
| parent | 3de4d163a577def9f0c75e37bd80716e66a9ef0b (diff) | |
| download | powder-457ceeff0a2b546484137d64872c04fed187b9c2.zip powder-457ceeff0a2b546484137d64872c04fed187b9c2.tar.gz | |
BCLN and GOO advection fix
Diffstat (limited to 'src/elements')
| -rw-r--r-- | src/elements/bcln.c | 14 | ||||
| -rw-r--r-- | src/elements/goo.c | 14 |
2 files changed, 12 insertions, 16 deletions
diff --git a/src/elements/bcln.c b/src/elements/bcln.c index 3581fc2..36ad347 100644 --- a/src/elements/bcln.c +++ b/src/elements/bcln.c @@ -1,15 +1,13 @@ #include <element.h> int update_BCLN(UPDATE_FUNC_ARGS) { - if (!parts[i].life) + if (!parts[i].life && pv[y/CELL][x/CELL]>4.0f) + parts[i].life = rand()%40+80; + if (parts[i].life) { - if (pv[y/CELL][x/CELL]>4.0f) - { - float advection = 0.1f; - parts[i].vx += advection*vx[y/CELL][x/CELL]; - parts[i].vy += advection*vy[y/CELL][x/CELL]; - parts[i].life = rand()%40+80; - } + float advection = 0.1f; + parts[i].vx += advection*vx[y/CELL][x/CELL]; + parts[i].vy += advection*vy[y/CELL][x/CELL]; } if (!parts[i].ctype) { diff --git a/src/elements/goo.c b/src/elements/goo.c index 0818173..a3176e1 100644 --- a/src/elements/goo.c +++ b/src/elements/goo.c @@ -1,15 +1,13 @@ #include <element.h> int update_GOO(UPDATE_FUNC_ARGS) { - if (!parts[i].life) + if (!parts[i].life && pv[y/CELL][x/CELL]>1.0f) + parts[i].life = rand()%80+300; + if (parts[i].life) { - if (pv[y/CELL][x/CELL]>1.0f) - { - float advection = 0.1f; - parts[i].vx += advection*vx[y/CELL][x/CELL]; - parts[i].vy += advection*vy[y/CELL][x/CELL]; - parts[i].life = rand()%80+300; - } + float advection = 0.1f; + parts[i].vx += advection*vx[y/CELL][x/CELL]; + parts[i].vy += advection*vy[y/CELL][x/CELL]; } return 0; } |
