summaryrefslogtreecommitdiff
path: root/src/elements/spng.cpp
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-05-07 16:59:50 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-05-07 16:59:50 (GMT)
commit51b17badf4c72270bb762ea795d05d51c8b355e3 (patch)
treeb66671e0496b68114c6e91eedb58bf783d5343c0 /src/elements/spng.cpp
parentfb111f42d00dd8a2041bae970c0913e096ac5101 (diff)
downloadpowder-51b17badf4c72270bb762ea795d05d51c8b355e3.zip
powder-51b17badf4c72270bb762ea795d05d51c8b355e3.tar.gz
A bit of refactoring (elements)
Diffstat (limited to 'src/elements/spng.cpp')
-rw-r--r--src/elements/spng.cpp110
1 files changed, 0 insertions, 110 deletions
diff --git a/src/elements/spng.cpp b/src/elements/spng.cpp
deleted file mode 100644
index 868b1e6..0000000
--- a/src/elements/spng.cpp
+++ /dev/null
@@ -1,110 +0,0 @@
-#include "simulation/Element.h"
-
-int update_SPNG(UPDATE_FUNC_ARGS) {
- int r, trade, rx, ry, tmp, np;
- if (sim->pv[y/CELL][x/CELL]<=3 && sim->pv[y/CELL][x/CELL]>=-3&&parts[i].temp<=374.0f)
- {
- for (rx=-1; rx<2; rx++)
- for (ry=-1; ry<2; ry++)
- if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
- {
- r = pmap[y+ry][x+rx];
- if (!r)
- continue;
- if ((r&0xFF)==PT_WATR&&33>=rand()/(RAND_MAX/100)+1)
- {
- parts[i].life++;
- sim->kill_part(r>>8);
- }
- }
- }
- else
- for (rx=-1; rx<2; rx++)
- for (ry=-1; ry<2; ry++)
- if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
- {
- r = pmap[y+ry][x+rx];
- if ((!r)&&parts[i].life>=1)//if nothing then create water
- {
- np = sim->create_part(-1,x+rx,y+ry,PT_WATR);
- if (np>-1) parts[i].life--;
- }
- }
- for ( trade = 0; trade<9; trade ++)
- {
- rx = rand()%5-2;
- ry = rand()%5-2;
- if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
- {
- r = pmap[y+ry][x+rx];
- if (!r)
- continue;
- if ((r&0xFF)==PT_SPNG&&(parts[i].life>parts[r>>8].life)&&parts[i].life>0)//diffusion
- {
- tmp = parts[i].life - parts[r>>8].life;
- if (tmp ==1)
- {
- parts[r>>8].life ++;
- parts[i].life --;
- trade = 9;
- }
- else if (tmp>0)
- {
- parts[r>>8].life += tmp/2;
- parts[i].life -= tmp/2;
- trade = 9;
- }
- }
- }
- }
- tmp = 0;
- if (parts[i].life>0)
- {
- for (rx=-1; rx<2; rx++)
- for (ry=-1; ry<2; ry++)
- if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
- {
- r = pmap[y+ry][x+rx];
- if (!r)
- continue;
- if ((r&0xFF)==PT_FIRE)
- {
- tmp++;
- if (parts[r>>8].life>60)
- parts[r>>8].life -= parts[r>>8].life/60;
- else if (parts[r>>8].life>2)
- parts[r>>8].life--;
- }
- }
- }
- if (tmp && parts[i].life>3)
- parts[i].life -= parts[i].life/3;
- if (tmp>1)
- tmp = tmp/2;
- if (tmp || parts[i].temp>=374)
- for (rx=-1; rx<2; rx++)
- for (ry=-1; ry<2; ry++)
- if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry))
- {
- r = pmap[y+ry][x+rx];
- if ((!r)&&parts[i].life>=1)//if nothing then create steam
- {
- np = sim->create_part(-1,x+rx,y+ry,PT_WTRV);
- if (np>-1)
- {
- parts[np].temp = parts[i].temp;
- tmp--;
- parts[i].life--;
- parts[i].temp -= 20.0f;
- }
- }
- }
- if (tmp>0)
- {
- if (parts[i].life>tmp)
- parts[i].life -= tmp;
- else
- parts[i].life = 0;
- }
- return 0;
-}