summaryrefslogtreecommitdiff
path: root/src/elements/aray.c
diff options
context:
space:
mode:
authorjacksonmj <mj-pt@jacksonmj.co.uk>2012-02-04 01:34:22 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-02-05 14:45:30 (GMT)
commit68ab3ca3ca846ac5911cbfaa7c511b8f13108a54 (patch)
tree05de2af20a5756a2018532a26be65c1c4bb39f05 /src/elements/aray.c
parent1a5cd45eb8949fd8e81019337e4a92278e83d19b (diff)
downloadpowder-68ab3ca3ca846ac5911cbfaa7c511b8f13108a54.zip
powder-68ab3ca3ca846ac5911cbfaa7c511b8f13108a54.tar.gz
More SPRK life checks for electronic elements
Check life>0, because SPRK changes back to its ctype when life==0. This could result in SPRK being found/not found depending on particle order, so pretend SPRK is not there if life==0 (it will disappear during the current frame).
Diffstat (limited to 'src/elements/aray.c')
-rw-r--r--src/elements/aray.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/elements/aray.c b/src/elements/aray.c
index cce5e2d..4379635 100644
--- a/src/elements/aray.c
+++ b/src/elements/aray.c
@@ -11,7 +11,7 @@ int update_ARAY(UPDATE_FUNC_ARGS) {
r = pmap[y+ry][x+rx];
if (!r)
continue;
- if ((r&0xFF)==PT_SPRK && parts[r>>8].life<4) {
+ if ((r&0xFF)==PT_SPRK && parts[r>>8].life>0 && parts[r>>8].life<4) {
int destroy = (parts[r>>8].ctype==PT_PSCN)?1:0;
int nostop = (parts[r>>8].ctype==PT_INST)?1:0;
for (docontinue = 1, nxx = 0, nyy = 0, nxi = rx*-1, nyi = ry*-1; docontinue; nyy+=nyi, nxx+=nxi) {