diff options
Diffstat (limited to 'src/elements/h2.cpp')
| -rw-r--r-- | src/elements/h2.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/elements/h2.cpp b/src/elements/h2.cpp index 7298ebc..8ebc1a9 100644 --- a/src/elements/h2.cpp +++ b/src/elements/h2.cpp @@ -43,23 +43,24 @@ int update_H2(UPDATE_FUNC_ARGS) 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_NEUT); + j = 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) parts[j].ctype = 0xFFFF00; + if (j != -1) { parts[j].ctype = 0xFFFF00; parts[j].temp = temp; } j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NBLE); - if (j) parts[j].tmp = 1; + if (j != -1) { parts[j].tmp = 1; parts[j].temp = temp; } + if (rand()%2) { j = sim->create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NBLE); - if (j) parts[j].tmp = 1; + if (j != -1) { parts[j].tmp = 1; parts[j].temp = temp; } } - if (parts[i].temp < 4273.15) - parts[i].temp = 4273.15; - sim->pv[y/CELL][x/CELL] += 50; + parts[i].temp += 6000; + sim->pv[y/CELL][x/CELL] += 30; } } return 0; |
