#include int update_CO2(UPDATE_FUNC_ARGS) { int r, rx, ry, np; 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){ kill_part(r>>8); if(1>(rand()%150)){ kill_part(i); return 1; } } if ((r)&&parts[i].ctype==5) { parts[i].ctype = 0; create_part(-1, x+rand()%3-1, y+rand()%3-1, PT_WATR); } if (((r&0xFF)==PT_WATR || (r&0xFF)==PT_DSTW) && 1>(rand()%250)) { part_change_type(i,x,y,PT_CBNW); kill_part(r>>8); } } return 0; }