summaryrefslogtreecommitdiff
path: root/src/elements/nble.cpp
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-04-18 17:40:14 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-04-18 17:40:14 (GMT)
commitbf935ac7d8900d62db5007f0a6be13a0afb1491b (patch)
tree902448d4169ce3a37bda2c91a0f8cece575914ef /src/elements/nble.cpp
parent4ddf723167aa4d07b16ef1aaac6b4dff16c87a42 (diff)
downloadpowder-bf935ac7d8900d62db5007f0a6be13a0afb1491b.zip
powder-bf935ac7d8900d62db5007f0a6be13a0afb1491b.tar.gz
TPT: fusion step 2 + modify temp/pressure of step 1 803ded3b33
Diffstat (limited to 'src/elements/nble.cpp')
-rw-r--r--src/elements/nble.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/elements/nble.cpp b/src/elements/nble.cpp
new file mode 100644
index 0000000..c35859f
--- /dev/null
+++ b/src/elements/nble.cpp
@@ -0,0 +1,27 @@
+#include "simulation/Element.h"
+
+int update_NBLE(UPDATE_FUNC_ARGS)
+{
+ if (parts[i].temp > 5273.15 && sim->pv[y/CELL][x/CELL] > 50.0f)
+ {
+ parts[i].tmp = 1;
+ if (rand()%5 < 1)
+ {
+ int j;
+ float temp = parts[i].temp;
+ sim->part_change_type(i,x,y,PT_PLSM);
+ parts[i].life = rand()%150+50;
+ sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NEUT);
+ sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC);
+ j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_PHOT);
+ if (j != -1) { parts[j].ctype = 0xFF0000; parts[j].temp = temp; }
+
+ j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_CO2);
+ if (j != -1) parts[j].temp = temp;
+
+ parts[i].temp += 10000;
+ sim->pv[y/CELL][x/CELL] += 30;
+ }
+ }
+ return 0;
+}