constant MAX_TEMPERATURE = 4800.0
function update():
explode? = false
if this particle's temperature > MAX_TEMPERATURE:
if there's O2 near this particle:
explode? = true
if (this particle's temperature > MAX_TEMPERATURE and 1/20 chance) or explode?:
if 1/20 chance:
set pressure to 50
if 1/100 chance:
transform into FIRE with life (random(0, 500))
otherwise
transform into LAVA(TUNG)
skip moving and return
if explode?:
set this particle's temperature to MAX_TEMPERATURE + 200-800 K
set this particle's vx and vy to random numbers between 0 and 50
set TTAN "Update" property to this function
Why can't changing the high pressure transition fix that?
local function noshatter(i, x, y, s, nt)
sim.partProperty(i, "type", tpt.el.tung.id)
sim.partProperty(i, "ctype", 0)
end
pcall(elem.property, tpt.el.brmt.id, "Update", noshatter, "yayerror")
local function ignore() end
elem.property(tpt.el.tung.id, "Update", ignore)
local function noshatter(i, x, y, s, nt)
if sim.partProperty(i, "type") == tpt.el.brmt.id then
sim.partProperty(i, "type", tpt.el.tung.id)
sim.partProperty(i, "ctype", 0)
end
end
elem.property(tpt.el.tung.id, "Update", noshatter)