summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjacksonmj <mj-pt@jacksonmj.co.uk>2012-05-20 18:42:37 (GMT)
committer jacksonmj <mj-pt@jacksonmj.co.uk>2012-05-20 22:22:37 (GMT)
commit089ea8b7a0d1e2252e4336a1b7e0512b0b449fd0 (patch)
tree23a7ae859f1c7133eda37d7ff5bd495096565259 /src
parentc23ded61f81cdab3802b33592390d6691bfd23f5 (diff)
downloadpowder-089ea8b7a0d1e2252e4336a1b7e0512b0b449fd0.zip
powder-089ea8b7a0d1e2252e4336a1b7e0512b0b449fd0.tar.gz
Change order of bomb loops - delete particles before creating sparks
Fixes pressurised INVS being immune to bomb, as the sparks were being deleted instead of the INVS.
Diffstat (limited to 'src')
-rw-r--r--src/elements/bomb.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/elements/bomb.c b/src/elements/bomb.c
index 2a826ff..e8544c9 100644
--- a/src/elements/bomb.c
+++ b/src/elements/bomb.c
@@ -44,18 +44,6 @@ int update_BOMB(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(nxi,2))/(pow((rad+1),2))+(pow(nxj,2))/(pow((rad+1),2))<=1) {
- nb = 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(nxi,2))/(pow(rad,2))+(pow(nxj,2))/(pow(rad,2))<=1)
@@ -69,6 +57,18 @@ int update_BOMB(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(nxi,2))/(pow((rad+1),2))+(pow(nxj,2))/(pow((rad+1),2))<=1) {
+ nb = 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;
+ }
+ }
//create_parts(x, y, 9, 9, PT_BOMB);
//create_parts(x, y, 8, 8, PT_NONE);
kill_part(i);