TPT: Change order of bomb loops - delete particles before creating sparks 089ea8b7a0

This commit is contained in:
Simon Robertshaw 2012-06-12 18:45:03 +01:00
parent 391165409d
commit 48459fc40d

View File

@ -77,18 +77,6 @@ int Element_BOMB::update(UPDATE_FUNC_ARGS)
int nxi;
int nxj;
pmap[y][x] = 0;
for (nxj=-(rad+1); nxj<=(rad+1); nxj++)
for (nxi=-(rad+1); nxi<=(rad+1); nxi++)
if ((pow((float)nxi,2))/(pow((float)(rad+1),2))+(pow((float)nxj,2))/(pow((float)(rad+1),2))<=1) {
nb = sim->create_part(-1, x+nxi, y+nxj, PT_BOMB);
if (nb!=-1) {
parts[nb].tmp = 1;
parts[nb].life = 50;
parts[nb].temp = MAX_TEMP;
parts[nb].vx = rand()%20-10;
parts[nb].vy = rand()%20-10;
}
}
for (nxj=-rad; nxj<=rad; nxj++)
for (nxi=-rad; nxi<=rad; nxi++)
if ((pow((float)nxi,2))/(pow((float)rad,2))+(pow((float)nxj,2))/(pow((float)rad,2))<=1)
@ -102,6 +90,18 @@ int Element_BOMB::update(UPDATE_FUNC_ARGS)
parts[nb].temp = MAX_TEMP;
}
}
for (nxj=-(rad+1); nxj<=(rad+1); nxj++)
for (nxi=-(rad+1); nxi<=(rad+1); nxi++)
if ((pow((float)nxi,2))/(pow((float)(rad+1),2))+(pow((float)nxj,2))/(pow((float)(rad+1),2))<=1) {
nb = sim->create_part(-1, x+nxi, y+nxj, PT_BOMB);
if (nb!=-1) {
parts[nb].tmp = 1;
parts[nb].life = 50;
parts[nb].temp = MAX_TEMP;
parts[nb].vx = rand()%20-10;
parts[nb].vy = rand()%20-10;
}
}
//CreateParts(x, y, 9, 9, PT_BOMB);
//CreateParts(x, y, 8, 8, PT_NONE);
sim->kill_part(i);
@ -137,4 +137,4 @@ int Element_BOMB::graphics(GRAPHICS_FUNC_ARGS)
}
Element_BOMB::~Element_BOMB() {}
Element_BOMB::~Element_BOMB() {}