diff options
| author | cracker64 <cracker642@gmail.com> | 2013-03-01 05:41:53 (GMT) |
|---|---|---|
| committer | cracker64 <cracker642@gmail.com> | 2013-03-01 05:41:53 (GMT) |
| commit | 0d70547cf059b5bd0a7a4a0acd9251fb94c6115e (patch) | |
| tree | 99a0b212eeecee83662d963da052b439375acbf3 /src/simulation/elements/FIRE.cpp | |
| parent | 5873d6958641af21b92fcb039d26c336331f19e7 (diff) | |
| download | powder-0d70547cf059b5bd0a7a4a0acd9251fb94c6115e.zip powder-0d70547cf059b5bd0a7a4a0acd9251fb94c6115e.tar.gz | |
More fixes to fix fixes and new fixes to fix stuff.
Diffstat (limited to 'src/simulation/elements/FIRE.cpp')
| -rw-r--r-- | src/simulation/elements/FIRE.cpp | 51 |
1 files changed, 30 insertions, 21 deletions
diff --git a/src/simulation/elements/FIRE.cpp b/src/simulation/elements/FIRE.cpp index 37745ab..35c7758 100644 --- a/src/simulation/elements/FIRE.cpp +++ b/src/simulation/elements/FIRE.cpp @@ -50,31 +50,40 @@ Element_FIRE::Element_FIRE() int Element_FIRE::update(UPDATE_FUNC_ARGS) { int r, rx, ry, rt, t = parts[i].type; - if (t==PT_PLSM && parts[i].ctype == PT_NBLE && parts[i].life <=1) + switch (t) { - sim->part_change_type(i,x,y,PT_NBLE); - parts[i].life = 0; - } - else if (t==PT_FIRE && parts[i].life <=1) - { - if ((parts[i].tmp&0x3) == 3){ - sim->part_change_type(i,x,y,PT_DSTW); - parts[i].life = 0; - parts[i].ctype = PT_FIRE; - } - else if (parts[i].temp<625) + case PT_PLSM: + if (parts[i].life <=1) { - sim->part_change_type(i,x,y,PT_SMKE); - parts[i].life = rand()%20+250; + if (parts[i].ctype == PT_NBLE) + { + sim->part_change_type(i,x,y,PT_NBLE); + parts[i].life = 0; + } + else if ((parts[i].tmp&0x3) == 3){ + sim->part_change_type(i,x,y,PT_DSTW); + parts[i].life = 0; + parts[i].ctype = PT_FIRE; + } } - } - else if (t==PT_PLSM && parts[i].life <=1) - { - if ((parts[i].tmp&0x3) == 3){ - sim->part_change_type(i,x,y,PT_DSTW); - parts[i].life = 0; - parts[i].ctype = PT_FIRE; + break; + case PT_FIRE: + if (parts[i].life <=1) + { + if ((parts[i].tmp&0x3) == 3){ + sim->part_change_type(i,x,y,PT_DSTW); + parts[i].life = 0; + parts[i].ctype = PT_FIRE; + } + else if (parts[i].temp<625) + { + sim->part_change_type(i,x,y,PT_SMKE); + parts[i].life = rand()%20+250; + } } + break; + default: + break; } for (rx=-2; rx<3; rx++) for (ry=-2; ry<3; ry++) |
