summaryrefslogtreecommitdiff
path: root/src/elements/wire.c
diff options
context:
space:
mode:
authorjacksonmj <mj-pt@jacksonmj.co.uk>2012-02-03 23:35:44 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-02-05 14:45:29 (GMT)
commit6bdc05cc40a89b6454fdbaca7a2315a07f085bf9 (patch)
treeddda52ecac10186b524f397983ebcb2c116fba02 /src/elements/wire.c
parenta4ad6ee428759346604437f416e27606b6ce09a1 (diff)
downloadpowder-6bdc05cc40a89b6454fdbaca7a2315a07f085bf9.zip
powder-6bdc05cc40a89b6454fdbaca7a2315a07f085bf9.tar.gz
Separate loop for updating life, and add SPRK life checks to most electronics
Diffstat (limited to 'src/elements/wire.c')
-rw-r--r--src/elements/wire.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/elements/wire.c b/src/elements/wire.c
index e48e131..2177ec7 100644
--- a/src/elements/wire.c
+++ b/src/elements/wire.c
@@ -29,7 +29,12 @@ int update_WIRE(UPDATE_FUNC_ARGS) {
r = pmap[y+ry][x+rx];
if (!r)
continue;
- if((r&0xFF)==PT_SPRK && parts[r>>8].ctype==PT_PSCN){parts[i].ctype=1; parts[r>>8].life=0; return 0;}
+ if((r&0xFF)==PT_SPRK && parts[r>>8].life<4 && parts[r>>8].ctype==PT_PSCN)
+ {
+ parts[i].ctype=1;
+ parts[r>>8].life=0;
+ return 0;
+ }
else if((r&0xFF)==PT_NSCN && parts[i].tmp==1){create_part(-1, x+rx, y+ry, PT_SPRK);}
else if((r&0xFF)==PT_WIRE && parts[r>>8].tmp==1 && !parts[i].tmp){count++;}
}