summaryrefslogtreecommitdiff
path: root/src/elements
diff options
context:
space:
mode:
authorJacob1 <jfu614@gmail.com>2012-05-23 23:53:50 (GMT)
committer Jacob1 <jfu614@gmail.com>2012-05-23 23:53:50 (GMT)
commit1026963293716c8d340fcb857c0af092af92aa11 (patch)
tree6649ab39b146da9c9f56e6369227708e64fa837d /src/elements
parent0799c2e09d2e7a4237b393c8eaa61031418ec402 (diff)
downloadpowder-1026963293716c8d340fcb857c0af092af92aa11.zip
powder-1026963293716c8d340fcb857c0af092af92aa11.tar.gz
fusion changes
Diffstat (limited to 'src/elements')
-rw-r--r--src/elements/elec.c2
-rw-r--r--src/elements/h2.c12
-rw-r--r--src/elements/nble.c10
-rw-r--r--src/elements/pyro.c2
-rw-r--r--src/elements/sprk.c4
5 files changed, 14 insertions, 16 deletions
diff --git a/src/elements/elec.c b/src/elements/elec.c
index 667499f..9ee3876 100644
--- a/src/elements/elec.c
+++ b/src/elements/elec.c
@@ -94,7 +94,7 @@ int update_ELEC(UPDATE_FUNC_ARGS) {
kill_part(i);
return 1;
}
- if (ptypes[r&0xFF].properties & PROP_CONDUCTS && ((r&0xFF)!=PT_H2||parts[i].tmp!=1))
+ if (ptypes[r&0xFF].properties & PROP_CONDUCTS && ((r&0xFF)!=PT_H2||parts[i].temp<2273.15))
{
create_part(-1, x+rx, y+ry, PT_SPRK);
kill_part(i);
diff --git a/src/elements/h2.c b/src/elements/h2.c
index 212e56e..d03cd50 100644
--- a/src/elements/h2.c
+++ b/src/elements/h2.c
@@ -35,7 +35,7 @@ int update_H2(UPDATE_FUNC_ARGS)
}
if (parts[r>>8].temp > 2273.15)// && pv[y/CELL][x/CELL] > 50.0f)
continue;
- if (parts[i].tmp != 1)
+ if (parts[i].temp < 2273.15)
{
if (rt==PT_FIRE)
{
@@ -54,20 +54,18 @@ int update_H2(UPDATE_FUNC_ARGS)
}
if (parts[i].temp > 2273.15 && pv[y/CELL][x/CELL] > 50.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) parts[j].temp = temp;
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC); if (j != -1) parts[j].temp = temp;
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; }
- j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NBLE);
- if (j != -1) { parts[j].tmp = 1; parts[j].temp = temp; }
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_NBLE); if (j != -1) parts[j].temp = temp;
if (rand()%2)
{
@@ -75,7 +73,7 @@ int update_H2(UPDATE_FUNC_ARGS)
if (j != -1) { parts[j].tmp = 1; parts[j].temp = temp; }
}
- parts[i].temp += 6000;
+ parts[i].temp += 750+rand()%500;
pv[y/CELL][x/CELL] += 30;
}
}
diff --git a/src/elements/nble.c b/src/elements/nble.c
index bca0291..dea5787 100644
--- a/src/elements/nble.c
+++ b/src/elements/nble.c
@@ -25,16 +25,16 @@ int update_NBLE(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); 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_NEUT); if (j != -1) parts[j].temp = temp;
+ j = create_part(-3,x+rand()%3-1,y+rand()%3-1,PT_ELEC); if (j != -1) parts[j].temp = temp;
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 - 1000;
+ if (j != -1) parts[j].temp = temp;
- parts[i].temp += 10000;
- pv[y/CELL][x/CELL] += 30;
+ parts[i].temp += 1750+rand()%500;
+ pv[y/CELL][x/CELL] += 50;
}
}
return 0;
diff --git a/src/elements/pyro.c b/src/elements/pyro.c
index 854e62d..c09dd63 100644
--- a/src/elements/pyro.c
+++ b/src/elements/pyro.c
@@ -61,7 +61,7 @@ int update_PYRO(UPDATE_FUNC_ARGS) {
(t!=PT_SPRK || (rt!=PT_RBDM && rt!=PT_LRBD && rt!=PT_INSL)) &&
(t!=PT_PHOT || rt!=PT_INSL) &&
(rt!=PT_SPNG || parts[r>>8].life==0) &&
- (rt!=PT_H2 || (parts[r>>8].temp < 2273.15 && pv[y/CELL][x/CELL] < 50.0f)) &&
+ (rt!=PT_H2 || parts[r>>8].temp < 2273.15) &&
ptypes[rt].flammable && (ptypes[rt].flammable + (int)(pv[(y+ry)/CELL][(x+rx)/CELL]*10.0f))>(rand()%1000))
{
part_change_type(r>>8,x+rx,y+ry,PT_FIRE);
diff --git a/src/elements/sprk.c b/src/elements/sprk.c
index d7ee0f0..f1c8c8e 100644
--- a/src/elements/sprk.c
+++ b/src/elements/sprk.c
@@ -59,7 +59,7 @@ int update_SPRK(UPDATE_FUNC_ARGS) {
parts[nearp].ctype = PT_ETRD;
}
}
- else if (ct==PT_NBLE&&parts[i].life<=1&&parts[i].tmp!=1)
+ else if (ct==PT_NBLE&&parts[i].life<=1&&parts[i].temp<5273.15)
{
parts[i].life = rand()%150+50;
part_change_type(i,x,y,PT_PLSM);
@@ -194,7 +194,7 @@ int update_SPRK(UPDATE_FUNC_ARGS) {
conduct_sprk = 0;
if (rt==PT_INST&&ct!=PT_PSCN)
conduct_sprk = 0;
- if (rt == PT_NBLE && parts[r>>8].tmp == 1)
+ if (rt == PT_NBLE && parts[r>>8].temp > 5273.15)
conduct_sprk = 0;
if (conduct_sprk) {