summaryrefslogtreecommitdiff
path: root/src/simulation/elements/O2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/simulation/elements/O2.cpp')
-rw-r--r--src/simulation/elements/O2.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/simulation/elements/O2.cpp b/src/simulation/elements/O2.cpp
index 1167e76..4a48512 100644
--- a/src/simulation/elements/O2.cpp
+++ b/src/simulation/elements/O2.cpp
@@ -81,14 +81,19 @@ int Element_O2::update(UPDATE_FUNC_ARGS)
if (rand()%5 < 1)
{
int j;
- sim->part_change_type(i,x,y,PT_PLSM);
- parts[i].life = rand()%150+50;
+ sim->create_part(i,x,y,PT_BRMT);
+
j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NEUT); if (j != -1) parts[j].temp = 15000;
j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_PHOT); if (j != -1) parts[j].temp = 15000;
- j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_BRMT); if (j != -1) parts[j].temp = 15000;
- j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_SING); if (j != -1) { parts[j].temp = 15000; parts[i].life = rand()%25+50; }
+ j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_PLSM); if (j != -1) parts[j].temp = 15000;
+ if (rand()%5 < 2) {
+ j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_SING);
+ if (j != -1) {
+ parts[j].temp = 15000; parts[i].life = rand()%25+50;
+ }
+ }
- parts[i].temp += 15000;
+ parts[i].temp = 15000;
sim->pv[y/CELL][x/CELL] += 300;
}
}