diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-11-05 20:10:35 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-11-05 20:10:35 (GMT) |
| commit | 150a2e528ee41cb596b59c8a3c9ec62e9bf686fa (patch) | |
| tree | 4aa02da9f38c5f24acc5ac1176d4010ace8fc8dd /src/simulation/elements/EXOT.cpp | |
| parent | 8614a2d9638da8ee6982e2a8eadf95eaf5365aa6 (diff) | |
| parent | 7da144fbae1dac390ddf3bbcc69a990cf91398ac (diff) | |
| download | powder-150a2e528ee41cb596b59c8a3c9ec62e9bf686fa.zip powder-150a2e528ee41cb596b59c8a3c9ec62e9bf686fa.tar.gz | |
Merge branch 'master' of github.com:FacialTurd/PowderToypp
Diffstat (limited to 'src/simulation/elements/EXOT.cpp')
| -rw-r--r-- | src/simulation/elements/EXOT.cpp | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/src/simulation/elements/EXOT.cpp b/src/simulation/elements/EXOT.cpp index 2f96254..03eca2f 100644 --- a/src/simulation/elements/EXOT.cpp +++ b/src/simulation/elements/EXOT.cpp @@ -22,16 +22,16 @@ Element_EXOT::Element_EXOT() Flammable = 0; Explosive = 0; Meltable = 0; - Hardness = 20; + Hardness = 2; - Weight = 45; + Weight = 46; Temperature = R_TEMP-2.0f +273.15f; - HeatConduct = 29; + HeatConduct = 250; Description = "Exotic matter. Explodes with excess exposure to electrons."; State = ST_LIQUID; - Properties = TYPE_LIQUID|PROP_NEUTPENETRATE; + Properties = TYPE_LIQUID; LowPressure = IPL; LowPressureTransition = NT; @@ -56,7 +56,7 @@ int Element_EXOT::update(UPDATE_FUNC_ARGS) { r = pmap[y+ry][x+rx]; if (!r) continue; - if ((r&0xFF)==PT_WARP) + if ((r&0xFF) == PT_WARP) { if (parts[r>>8].tmp2>2000) if (1>rand()%100) @@ -64,8 +64,22 @@ int Element_EXOT::update(UPDATE_FUNC_ARGS) { parts[i].tmp2 += 100; } } - if ((r&0xFF)==PT_EXOT && parts[r>>8].life==1500 && 1>rand()%1000) + else if ((r&0xFF) == PT_EXOT && parts[r>>8].life == 1500 && 1>rand()%1000) parts[i].life = 1500; + else if ((r&0xFF) == PT_LAVA) + { + if (parts[r>>8].ctype == PT_TTAN && 1>rand()%10) + { + parts[r>>8].ctype = PT_VIBR; + sim->kill_part(i); + return 1; + } + /*else if (parts[r>>8].ctype == PT_VIBR && 1>rand()%1000) + { + sim->kill_part(i); + return 1; + }*/ + } if ((parts[i].tmp>245) && (parts[i].life>1000)) if ((r&0xFF)!=PT_EXOT && (r&0xFF)!=PT_BREC && (r&0xFF)!=PT_DMND && (r&0xFF)!=PT_CLNE && (r&0xFF)!=PT_PRTI && (r&0xFF)!=PT_PRTO && (r&0xFF)!=PT_PCLN && (r&0xFF)!=PT_PHOT && (r&0xFF)!=PT_VOID && (r&0xFF)!=PT_NBHL && (r&0xFF)!=PT_WARP && (r&0xFF)!=PT_NEUT) { @@ -179,7 +193,7 @@ int Element_EXOT::graphics(GRAPHICS_FUNC_ARGS) } else { - float frequency = 0.01300; + float frequency = 0.01300; *colr = (sin(frequency*q + 6.00) * 127 + ((b/2.9) + 80)); *colg = (sin(frequency*q + 6.00) * 127 + ((b/2.9) + 80)); *colb = (sin(frequency*q + 6.00) * 127 + ((b/2.9) + 80)); |
