Fix issue where heat transition would turn TNT to fire, TNT uses tmp for trigger state while Fire uses it for water vapourness.

This commit is contained in:
Simon Robertshaw 2011-12-21 20:23:27 +00:00
parent a716c59610
commit fc7f872d8b
2 changed files with 19 additions and 15 deletions

View File

@ -323,7 +323,7 @@ part_transition ptransitions[PT_NUM] =
/* ELEC */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT}, /* ELEC */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT},
/* ACEL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT}, /* ACEL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT},
/* DCEL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT}, /* DCEL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT},
/* TNT */ {IPL, NT, IPH, NT, ITL, NT, 673.0f, PT_FIRE}, /* TNT */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT},
/* IGNP */ {IPL, NT, IPH, NT, ITL, NT, 673.0f, PT_FIRE}, /* IGNP */ {IPL, NT, IPH, NT, ITL, NT, 673.0f, PT_FIRE},
/* BOYL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT}, /* BOYL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT},
/*FREE*//* GOL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT}, /*FREE*//* GOL */ {IPL, NT, IPH, NT, ITL, NT, ITH, NT},

View File

@ -4,6 +4,9 @@ int update_BANG(UPDATE_FUNC_ARGS) {
int r, rx, ry, nb; int r, rx, ry, nb;
if(parts[i].tmp==0) if(parts[i].tmp==0)
{ {
if(parts[i].temp>=673.0f)
parts[i].tmp = 1;
else
for (rx=-1; rx<2; rx++) for (rx=-1; rx<2; rx++)
for (ry=-1; ry<2; ry++) for (ry=-1; ry<2; ry++)
if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry)) if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
@ -36,6 +39,7 @@ int update_BANG(UPDATE_FUNC_ARGS) {
float otemp = parts[i].temp-275.13f; float otemp = parts[i].temp-275.13f;
//Explode!! //Explode!!
pv[y/CELL][x/CELL] += 0.5f; pv[y/CELL][x/CELL] += 0.5f;
parts[i].tmp = 0;
if(!(rand()%3)) if(!(rand()%3))
{ {
if(!(rand()%2)) if(!(rand()%2))