fix CRAY(SPRK) bugs, make CRAY act more like before again

This commit is contained in:
jacob1 2013-02-22 00:19:12 -05:00
parent 3da733b027
commit 40c4289ce8

View File

@ -65,6 +65,7 @@ int Element_CRAY::update(UPDATE_FUNC_ARGS)
if ((r&0xFF)!=PT_CRAY && (r&0xFF)!=PT_PSCN && (r&0xFF)!=PT_INST && (r&0xFF)!=PT_METL && (r&0xFF)!=PT_SPRK && (r&0xFF)<PT_NUM)
{
parts[i].ctype = r&0xFF;
//parts[i].temp = parts[r>>8].temp;
}
}
} else if (parts[i].life==0) { // only fire when life is 0, but nothing sets the life right now
@ -96,14 +97,20 @@ int Element_CRAY::update(UPDATE_FUNC_ARGS)
if (nr!=-1) {
parts[nr].dcolour = colored;
}
if((!destroy || parts[i].ctype != PT_SPRK) && !--partsRemaining)
docontinue = 0;
} else if ((r&0xFF)==PT_FILT) { // get color if passed through FILT
colored = wavelengthToDecoColour(parts[r>>8].ctype);
} else if ((r&0xFF) == PT_CRAY || nostop) {
docontinue = 1;
} else if(destroy && ((r&0xFF) != PT_DMND)) {
sim->kill_part(r>>8);
} else if ((r&0xFF) != PT_CRAY && !nostop) {
if(!--partsRemaining)
docontinue = 0;
}
if(!--partsRemaining)
else
docontinue = 0;
if(!partsRemaining)
docontinue = 0;
}
}