summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob1 <jfu614@gmail.com>2012-03-14 23:37:10 (GMT)
committer Jacob1 <jfu614@gmail.com>2012-03-14 23:37:10 (GMT)
commit8db62304149a5593eaebda50ebf4d60b149f75ec (patch)
tree9c6577dfe1e466b7b79d0570c72e6de5f7418472
parent803ded3b334abc27252974f3f6cdda282af6621d (diff)
downloadpowder-8db62304149a5593eaebda50ebf4d60b149f75ec.zip
powder-8db62304149a5593eaebda50ebf4d60b149f75ec.tar.gz
fusion step 3
-rw-r--r--nble.c9
-rw-r--r--src/elements/co2.c15
-rw-r--r--src/elements/h2.c4
3 files changed, 21 insertions, 7 deletions
diff --git a/nble.c b/nble.c
index ea8031a..43264b4 100644
--- a/nble.c
+++ b/nble.c
@@ -2,22 +2,21 @@
int update_NBLE(UPDATE_FUNC_ARGS)
{
- if (parts[i].temp > 5273.15 && pv[y/CELL][x/CELL] > 50.0f)
+ if (parts[i].temp > 5273.15 && pv[y/CELL][x/CELL] > 100.0f)
{
- parts[i].tmp = 1;
if (rand()%5 < 1)
{
int j;
float temp = parts[i].temp;
part_change_type(i,x,y,PT_PLSM);
parts[i].life = rand()%150+50;
- create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NEUT);
- create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC);
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NEUT); if (j != -1)
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC); if (j != -1)
j = 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 = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_CO2);
- if (j != -1) parts[j].temp = temp;
+ if (j != -1) parts[j].temp = temp - 1000;
parts[i].temp += 10000;
pv[y/CELL][x/CELL] += 30;
diff --git a/src/elements/co2.c b/src/elements/co2.c
index f820425..3356397 100644
--- a/src/elements/co2.c
+++ b/src/elements/co2.c
@@ -27,5 +27,20 @@ int update_CO2(UPDATE_FUNC_ARGS) {
kill_part(r>>8);
}
}
+ if (parts[i].temp > 9773.15 && pv[y/CELL][x/CELL] > 200.0f)
+ {
+ if (rand()%5 < 1)
+ {
+ int j;
+ kill_part(i);
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NEUT); if (j != -1) parts[j].temp = 15000;
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC); if (j != -1) parts[j].temp = 15000;
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_O2); if (j != -1) parts[j].temp = 15000;
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_SING); if (j != -1) { parts[j].temp = 15000; parts[i].life = rand()%100+450; }
+
+ parts[i].temp += 15000;
+ pv[y/CELL][x/CELL] += 100;
+ }
+ }
return 0;
}
diff --git a/src/elements/h2.c b/src/elements/h2.c
index c073014..e80f04a 100644
--- a/src/elements/h2.c
+++ b/src/elements/h2.c
@@ -46,8 +46,8 @@ int update_H2(UPDATE_FUNC_ARGS)
float temp = parts[i].temp;
part_change_type(i,x,y,PT_PLSM);
parts[i].life = rand()%150+50;
- j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NEUT);
- j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC);
+ create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NEUT);
+ create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC);
j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_PHOT);
if (j != -1) { parts[j].ctype = 0xFFFF00; parts[j].temp = temp; }