#include int update_O2(UPDATE_FUNC_ARGS) { int r,rx,ry; for(rx=-2; rx<3; rx++) for(ry=-2; ry<3; ry++) if (x+rx>=0 && y+ry>0 && x+rx>8)>=NPART || !r) continue; if((r&0xFF)==PT_FIRE) { parts[r>>8].life+=(rand()/(RAND_MAX/100))*2; parts[r>>8].temp+=(rand()/(RAND_MAX/100)); parts[i].tmp++; } } if(parts[i].tmp>=50) { create_part(i,x,y,PT_FIRE); parts[i].life+=(rand()/(RAND_MAX/100))+50; parts[i].temp+=(rand()/(RAND_MAX/100)); } return 0; }