diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2011-11-21 00:48:39 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2011-11-21 00:48:39 (GMT) |
| commit | 876c861c425ad424ffc5af4bf39b2a3441b50f9a (patch) | |
| tree | 2140759c599a763e9887bd3a0ee119fbeb37ef33 /src/main.c | |
| parent | 8c6e7caaff883f9c7df111df65737547bd280c7a (diff) | |
| download | powder-876c861c425ad424ffc5af4bf39b2a3441b50f9a.zip powder-876c861c425ad424ffc5af4bf39b2a3441b50f9a.tar.gz | |
Fix LCRY/ELEC infinite loop, BIZR turns photons into electrons, SING explodes with electrons, electrons react with deut.
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 33 |
1 files changed, 21 insertions, 12 deletions
@@ -1035,21 +1035,30 @@ int parse_save(void *save, int size, int replace, int x0, int y0, unsigned char } } } - if(ver<67 && (ty==PT_LCRY)){ - //New LCRY uses TMP not life - if(parts[i-1].life>=10) + if(ty==PT_LCRY){ + if(ver<67) { - parts[i-1].life = 10; - parts[i-1].tmp = 3; - } - else if(parts[i-1].life<=0) - { - parts[i-1].life = 0; - parts[i-1].tmp = 0; + //New LCRY uses TMP not life + if(parts[i-1].life>=10) + { + parts[i-1].life = 10; + parts[i-1].tmp2 = 10; + parts[i-1].tmp = 3; + } + else if(parts[i-1].life<=0) + { + parts[i-1].life = 0; + parts[i-1].tmp2 = 0; + parts[i-1].tmp = 0; + } + else if(parts[i-1].life < 10 && parts[i-1].life > 0) + { + parts[i-1].tmp = 1; + } } - else if(parts[i-1].life < 10 && parts[i-1].life > 0) + else { - parts[i-1].tmp = 1; + parts[i-1].tmp2 = parts[i-1].life; } } if (!ptypes[parts[i-1].type].enabled) |
