This page is used for previewing and submitting scripts for use with the Script Manager
Available Scripts
(2) TPTMulti by LBPHacker
(3) set wifi v2 by jacob1
(4) Script Paste by jacob1
(5) Random Element by jacob1
(6) Magical Merge Master 3000 by nucular
(7) More Fuel Mod-heavy by jward212
(9) Breakpoints (BRPT) by boxmein
(10) Cockroaches! by boxmein
(11) Random tree by ssccsscc
(12) Element with random properties by ssccsscc
(15) Minimalistic Element Dehider by nucular
(16) FPS Gauge by mniip
(17) TPT Radio by jward212
(18) Print Debugger by FeynmanLogomaker
(19) Powered BHOL by jacob1
(20) Light and lamps by electronic_steve
(21) Extremely Durable TTAN by QuentinADay
(22) New Buttons by QuentinADay
(23) Pure Energy by QuentinADay
(25) RCA's HUD XV Update I by RCAProduction
(27) 123456787654 vols by mjpowder
(28) Singularity Bomb by QuentinADay
(29) ES wifi set by electronic_steve
(30) Lua Elements Pack by FeynmanLogomaker
(31) stkm gun by jward212
(32) space building materials by kjack1111
(34) Rust bomb by Damian97
(35) Simple command block by ssccsscc
(36) Everlasting Fusion by QuentinADay
(37) Screenshot Organiser by mecha-man
(38) Napalm mod by cccp3
(39) Rocket fuel mod v0.15 by cccp3
(41) Useful web links by jward212
(42) TPT Logic Gates Mod by iamdumb
(43) ESTools by electronic_steve
(44) Head Crabs-HL2 by jward212
(45) Procedural Save Generator by boxmein
(46) smooth colours for nametag by jward212
(47) ZAKPACK by zak03
(49) Performance Monitor by FeynmanLogomaker
(51) Texter by byzod
(52) Texter default fonts by byzod
(53) Schicko's Font Pack for Texter by Schicko
(54) Realistic Element Names by Atomic10
(55) TPT's Mod V.3 Update 1 by Amy
(56) Temporaryaccount-Decorator by Temporaryaccount
(57) random save loader by jward212
(58) Tmp gradient display by ssccsscc
(59) particle re-orderer by mniip
(60) Electric Glow by jacob1
(61) More Fuel Mod-lite by jward212
(63) Rythidium by janekbe04
(64) Simple FPS GUI by Sfsjunior
(65) Enhanced Element Dehider by ChargedCreeper
(66) Graph of average temp by ssccsscc
(67) Template save loader by jacob1
(68) Lua Text Generator by jBot-42
(70) Pixel's Freezer by Pixelguru26
(71) Thingy | Fusion For Ever by TheChosenEvilOne
(72) op explosions by zolly_bro
(73) Scar by DorkyBobster
(74) ScreenShotMod by lill74
(77) Useful Things by TheEvilChosenOne
(78) Alchemy Mod by _MrN_
(79) Nuke v2 by Fnaf65
(80) Compressor mod by TheChosenEvilOne
(81) Custom Render Mode Loader by jacob1
(82) Spacewars by JosephMA
(83) MOAR - Alpha 0.1 by TheChosenEvilOne
(86) Element Creator by cxi
(88) Soapworm by LBPHacker
(90) Pressure Bomb by God_Kra
(91) SMFB by wntjq69
(92) Potato by cxi
(93) Subatomic Pack (BDS) by TPT_PL
(94) Acidic Pack (BDS) by TPT_PL
(95) Starbound Building Materials by Sanpypr
(96) Factory problems by TPT_PL
(97) Gamma Ray-diation by Kostia4381
(98) Magic by livingfossil
(99) Cross-window Copy/Cut/Paste by LBPHacker
(100) Langton's Ant with variations by LBPHacker
(101) Remote particle creator/deleter by TPT_PL
(102) Force fields by electronic_steve
(103) Reinforced Concrete by 12Me21
(105) TPT_PL's Lua Mod by TPT_PL
(106) Nuke v4 by Fnaf65
(107) CHEMMOD V1 by KevAK
(108) Chemicals by Ligan
(109) VonDaniel's Template by VonDaniel
(110) The Inaccurate Radioactivity Toy Mod by TuDoR2007
(112) textmonsterPack by textmonster404
(113) Meteor by TheScienceKid
(114) Tgpm by TuDoR2007
(115) Civilizations by TPT_PL
(116) RAD-MOD 1.2.1B by Kev_AK
(117) MicroLua by RamiLego4Game
(118) Extra customizable HUD by djy0212
(119) Ingame brush editor by ssccsscc
(120) Window Maker by Paul_31415
(121) CHEM-MOD V1.2B by Kev_AK
(122) Rainbow PHOT by Mrprocom
(123) stronger stickmanv by yuval
(124) 3D Pressure Visualizer by mniip
(125) Arkadian Liquid by JanKaszanka
(126) Fuel by nukers473
(127) Immersive Radioactivity v2.1 by Potbelly
(128) ElementLaunchingTool by juh9870
(129) CHEM-MOD_v1.2.2b by KevAK
(130) Slingshot by Mrprocom
(131) Perlin Noise Generator by DoubleF
(132) Element Replace by TomW1605
(133) Flooder V2 by TheAwesomeMutant
(134) Link Sign GUI by QuanTech
(135) Element dehider by 4e616d65
(136) Subphoton ROM Builder by mad-cow
(137) Hardened Dust by Liftski
(138) Bio-Vir by TheAwesomeMutant
(140) Orbit Simulator by Mrprocom
(141) johnnyou's Font for Texter by johnnyou (49796346)
(142) auto_wifi by phisically
(143) Layering helper by ssccsscc
(144) Layering Helper Extended by LuaMaster
(145) TPT Remade by TuDoR2007
(146) All-seeing sampler by djy0212
(147) Layering helper remastered by ssccsscc
(148) Eraser by thepowdertoy12
(149) EXPLOSIONS by olix3001
(150) Simple rocket fuel mod by ArseniyPlotnikov2006
(151) Pure Fission by Fnaf65
(154) Graph by ssccsscc
(155) Little's Pack! by LittleProgramming
(156) Lead by LoftisGaming
(157) WIFI Tuner by ssccsscc
(158) Previous Brush by TomW1605
(159) HUD Auto-Hider by Tim
(161) Stack tool by thepowdertoy12
(162) Oil and plastic by ArseniyPlotnikov2006
(163) Colored Ember by DUC
(164) Timer by ssccsscc
(165) Bacteria Mod by TuDoR2007
(166) Noise filter by LBPHacker
(167) Future-proof element dehider by LBPHacker
(168) RadioactiveNuke by DreamingWarlord
(169) Only Hot Element by DreamingWarlord
(170) Philosopher's Stone by Godhydra
(171) Conic section generator by LBPHacker
(172) Interface API by ssccsscc
(173) Metals&Materials by Ferrous26
(174) tpt.all by LBPHacker
(175) The Visual Elements Pack by Goblin01, vvv331
(176) Layering Helper Reforged by PowderNotSolid
(177) SNOWified SING by LBPHacker
(178) FPS Chart by Goblin01
(179) TPT font writer by Goblin01
(180) Simple Ruler by PowderNotSolid
(181) Heat Modifier by DreamingWarlord
(182) TPT Remade II by TuDoR2007
(183) Gravity simulator by ArseniyPlotnikov2k6
(184) Unobtainium by christheboss894
(185) TPTMIDI noteblock in tpt by djy0212
(186) DreamingWarlord's Lua Tool by DreamingWarlord
(187) Elements Tooltip by Goblin01
(189) Explodium script by 0d15ea5ebe57c0debadc0ffee0ddf00d
(190) more powered force elements by 6nop6nop
(191) Yzaak1Scifire Modpack by Yzaak1Scifire
(194) Fluor and more modpack! by galaktor
(195) Hot Powder by lieve_blendi
(196) Star by TUANMINHVIETNAM
(197) Heat Powders by lieve_blendi
(200) Tangeriinium (thx 2 cxi 4 code) by LostEditor
(201) Freezer by lieve_blendi
(202) Powder Power! by TPTSortaGuy
(203) PowderPlus v1.4 by PowderPlus Team
(204) fire by ME
(205) Stacked Goo Animations by Maticzpl
(206) Stickman Control for Android Version by PhauloRiquelme
(207) Spark Removal Button by Xyz
(208) More HEAC's! by Maxhd1234
(209) Immersive Radioactivity v3.0 by Potbelly
(210) Subframe Chipmaker Script by Maticzpl
(211) Realistic Propellants by ArseniyPlotnikov2k6
(212) Mass Equals Gravity by Maticzpl
(213) PhiMod v1 by ArolaunTech
(214) PC Controls for Android by Cracker1000
(217) Single-pixel pipe configurator by LBPHacker
(218) Omega Death Laser Gun by Dogeoum
(219) Notifications by Maticzpl
(221) Powderizer by ArolaunTech
(222) ElemDehider 1.2 by Inventor70
(223) Unobtainum V2 by DoomKittyAttack
(224) Organics Mod v0.2B by PowderPlus Team
(225) Gravity distortion by Avolte55
(226) tmp Wifi by PhauloRiquelme
(227) Alchemagica Mod v1.0 by RebMiami
(228) Fan Elements Mod by RebMiami
(229) Impossibilities by ArolaunTech
(230) Realistic Explosives by ArseniyPlotnikov2k6
(231) libactivation by anamorphic
(232) Alloy Brushes by Maticzpl
(233) Gravity bender by pres
(234) Slow Tick by Pixel
(235) Paste ID by Maticzpl
(236) many things by jadenflp2
(237) Territect by Rebmiami
(238) Better Descriptions v1.0.5 by ashyboi2022
(239) LIGHTNING SPRK by GOLmaster10101
(240) Small Bombs by juh9870
(241) Save Shop by aaccbb
(242) Moving solids v1.3.0 Beta by ArolaunTech
(244) Alchemistry by rdococ
(245) ETRD (Formerly PowderIM) by aaccbb
(246) RadonX by Justadirtblock
(248) Water-X by deuterium_oxide
(250) Indestructible INSL by CheekyRand0m
(252) Console's Mod by Console/Compec
(255) Slow motion by LBPHacker
(256) Powered Repeller by Hythonia
(257) Zeta's Electric Tools. by Zetalasis
(258) Azure serum (AZSR) by ALumpOfPowderToy
(259) COLORFULSAND by xert
(260) Lightning Circle by defaultuser0
(261) Powder Future Tech by JonaHungary
(262) TPTGlowingSolids by DestinyDyson
(263) Volcano Bomb by I_am_the_NugsWorld
(264) Neon Lights by Rebmiami
(265) Radioactive Materials by xyz
(266) Eater mod by VIPERGAMEZ
(267) the biology mod by someone
(268) Atomic Physics by qe
(269) Pure Radiation by ronansb
(270) Fake Elements by That_PowderToy_Guy
(271) Tachyons and MISC by RamenNoods
(272) Exotic Particles by rdococ
(273) FPS Slider by aaccbb
(274) Enphosian's Radioactive mod pack by Enphosian
(276) ROM Builder by QnpfvTPz
(277) acb's Idea Generator by aaccbb
(278) Bode's Grapher by Bodester
(279) Gradient Tool by Bodester
(280) Better FPS Slider by ngmoco
(281) MyWIFI by Bodester
(282) acb's Slow-Mo Script by aaccbb
(283) Fun n' Chemicals by 0xHenryMC
(284) Resistant coating by git4rker
(285) Nationwide script by Kit237
(286) weird alphabet.lua by alice_loona_ot12
(287) MT's font for texter by Kit237
(288) Compiler for the SCE computer by NoVIcE by NoVIcE
(289) Perlin Noise Map Generator by Kit236
(290) hell fire element by Hecker
(291) Power stuff by William
(292) Missile by BaCOn
(293) Wargame's things by Kit236
(294) Inert Gas by EwguhMicBewguhGuy
(295) Average Temperature Display by tptQuantification
(296) Radicons by stillthere
(297) ROCKET by stillthere
(298) NUUKE! by stillthere
(299) SubpixelScope by Rebmiami
(300) Unobtanium Element Pack by AlgoPowdo
(301) Magnets by TheSuperNova
(302) library007 2.0 3000 by 008cff
(316) TPTASM: Universal assembler for TPT computers by LBPHacker
+ Submit new script!
Title:
Author:
Script:
--- RADX
local radio = elements.allocate("TIMO", "RADX")
elements.element(elements.DEFAULT_PT_GLOW)
elem.property(elem.TIMO_PT_RADX, "Name", "RADX")
elem.property(elem.TIMO_PT_RADX, "Colour", 0x148345)
elem.property(elem.TIMO_PT_RADX, "Description", "Transmutative liquid.")
elem.property(elem.TIMO_PT_RADX, "Properties", elem.TYPE_LIQUID+elem.PROP_DEADLY+elem.PROP_RADIOACTIVE+elem.PROP_NEUTPENETRATE+elem.PROP_HOT_GLOW)
elem.property(elem.TIMO_PT_RADX, "MenuSection", elem.SC_NUCLEAR)
elem.property(elem.TIMO_PT_RADX, "MenuVisible", 1)
elem.property(elem.TIMO_PT_RADX, "Weight", 49.44)
elem.property(elem.TIMO_PT_RADX, "Gravity", .03)
elem.property(elem.TIMO_PT_RADX, "Falldown", 2)
elem.property(elem.TIMO_PT_RADX, "Diffusion", 0.08)
elem.property(elem.TIMO_PT_RADX, "HighTemperature", 3980.15)
elem.property(elem.TIMO_PT_RADX, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
sim.can_move(elem.DEFAULT_PT_PHOT, elem.TIMO_PT_RADX, 2)
sim.can_move(elem.DEFAULT_PT_ELEC, elem.TIMO_PT_RADX, 2)
tpt.element_func(NU, tpt.element('RADX'))
function RADX(i,x,y,s,n)
local mytmp = sim.partProperty(i,'tmp')
local mytemp = sim.partProperty(i,'temp')
local mypres = sim.pressure(x/4,y/4)
local spacer = math.random(1,20)
r = sim.partID(x+math.random(-2,2),y+math.random(-2,2))
if r~= nil then
-- STNE
if sim.partProperty(r,'type') == elem.DEFAULT_PT_STNE then
--ISOTOPES
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0
if mytemp > 546 and mytemp < 995 and math.random(1,118) == 1 then -- Between 273C and 722C
sim.partProperty(r,'type', elem.DEFAULT_PT_CLST)
end
if mytemp > 372 and mytemp < 383 then -- Between 99C and 110C
sim.partProperty(r,'tmp', 1)
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+200)
end
if mytemp > 323 and mytemp < 345 and math.random(1,118) == 1 then -- Between 50C and 72C
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
end
if mytemp > 246 and mytemp < 275 and math.random(1,118) == 1 then -- Between -27C and 2C
sim.partProperty(r,'type', elem.DEFAULT_PT_SAND)
end
elseif sim.partProperty(r,'tmp') == 1 then -- ISOTOPE-1
if math.random(1,118) == 1 then
if mytemp > 246 and mytemp < 271 then -- Between -27C and -2C
sim.partProperty(r,'tmp', 0)
sim.partProperty(r,'type', elem.DEFAULT_PT_CNCT)
end
end
end
end
-- STNE END
-- BREL
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BREL then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0
if math.random(1,240) == 1 then
if mytemp > 289 and mytemp < 325 and math.random(1,20) == 1 then -- Between 16C and 52C
sim.partProperty(r,'type', elem.DEFAULT_PT_STNE)
end
if mytemp > 246 and mytemp < 275 then -- Between -27C and 2C
sim.partProperty(r,'type', elem.DEFAULT_PT_BRMT)
end
end
end
end
-- BREL END
-- WATR
if sim.partProperty(r,'type') == elem.DEFAULT_PT_WATR then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0
if mytemp > 271 and mytemp < 289 and math.random(1,44) == 1 then -- Between -2C and 16C
sim.partProperty(r,'temp', 60)
sim.partProperty(r,'type', elem.DEFAULT_PT_SNOW)
end
end
end
-- WATR END
-- ICE
if sim.partProperty(r,'type') == elem.DEFAULT_PT_ICE then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0
if mytemp > 271 and mytemp < 289 and math.random(1,44) == 1 then -- Between -2C and 16C
sim.partProperty(r,'temp', 60)
sim.partProperty(r,'type', elem.DEFAULT_PT_SNOW)
end
elseif sim.partProperty(r,'tmp') == 1 then -- ISOTOPE-1
if mytemp > 173 and mytemp < 213 and math.random(1,14) == 1 then -- Between -60C and -100C
sim.partProperty(r,'ctype', elem.TIMO_PT_TACT)
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)-700)
end
end
end
-- ICE END
-- CNCT
if sim.partProperty(r,'type') == elem.DEFAULT_PT_CNCT then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0
if math.random(1,125) == 1 then
if mytemp > 303 and mytemp < 315 then -- Between 30C and 42C
sim.partProperty(r,'tmp', 1)
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)-600)
end
if mytemp > 163 and mytemp < 243 then -- Between -110C and -40C
sim.partProperty(r,'tmp', 1)
sim.partProperty(r,'type', elem.DEFAULT_PT_BRMT)
end
if mytemp > 661 and mytemp < 698 then -- Between 388C and 425C
sim.partProperty(r,'type', elem.DEFAULT_PT_CLST)
end
end
elseif sim.partProperty(r,'tmp') == 1 then -- ISOTOPE-1
if mytemp > 259 and mytemp < 268 then -- Between -14C and -5C
sim.partProperty(r,'tmp', 1)
sim.partProperty(r,'type', elem.DEFAULT_PT_ICE)
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+1200)
end
end
end
-- CNCT END
-- CLST
if sim.partProperty(r,'type') == elem.DEFAULT_PT_CLST then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0
if math.random(1,150) == 1 then
if mytemp > 663 and mytemp < 703 then -- Between 390C and 430C
end
end
elseif sim.partProperty(r,'tmp') == 1 then -- ISOTOPE-1
end
end
-- CLST END
-- SAND
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SAND then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0.
if mytemp > 663 and mytemp < 703 then -- Between 390C and 430C
if math.random(1,150) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_CLST)
end
end
end
end
-- SAND END
-- BRMT
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BRMT then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0.
if math.random(1,100) == 1 then
if mytemp > 1086 and mytemp < 1233 then -- Between 813C and 960C
sim.partProperty(r,'tmp2', math.random(1,3))
sim.partProperty(r,'type', elem.DEFAULT_PT_PQRT)
end
end
if math.random(1,200) == 1 then
if mytemp > 526 and mytemp < 533 then -- Between 253C and 260C
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
sim.partProperty(i,'type', elem.DEFAULT_PT_GLOW)
end
end
elseif sim.partProperty(r,'tmp') == 1 then
if math.random(1,225) == 1 then
if mytemp > 973 and mytemp < 1023 then -- Between 700C and 750C
sim.partProperty(r,'tmp2', math.random(4,6))
sim.partProperty(r,'type', elem.DEFAULT_PT_PQRT)
end
end
if math.random(1,110) == 1 then
if mytemp > 70 and mytemp < 133 then -- Between -203C and -140C
sim.partProperty(r,'type', elem.DEFAULT_PT_BRCK)
end
end
end
end
-- BRMT END
-- POLO
if sim.partProperty(r,'type') == elem.DEFAULT_PT_POLO then
if sim.partProperty(r,'tmp') == 0 then -- ISOTOPE-0.
if math.random(1,100) == 1 then
if mytemp > 1086 and mytemp < 1233 then -- Between 813C and 960C
end
end
end
end
-- POLO END
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BGLA and math.random(1,550) == 1 then
if math.random(1,20) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
elseif math.random(1,20) == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
elseif math.random(1,20) == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_STNE)
if math.random(1,2) == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_STNE)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PQRT and math.random(1,850) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BGLA)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SAND and math.random(1,650) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
if math.random(1,220) == 1 then
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
sim.partProperty(i,'type', elem.DEFAULT_PT_STNE)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL and sim.partProperty(i,'temp') > 353.15 and math.random(1,150) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_DEUT)
sim.partProperty(r,'life', math.random(240,720))
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_ELEC)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_ELEC)
tpt.create(x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_ELEC)
if math.random(1,1320) == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_RAD)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_COAL and math.random(1,350) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_DEUT)
sim.partProperty(r,'life', 14,32)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
end
--- SOLID REACTIONS
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BMTL and math.random(1,920) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_IRON)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), "BCOL")
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLNT and math.random(1,36) == 1 then
sim.partProperty(r,'tmp2', sim.partProperty(r,'tmp2') + 35)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON and math.random(1,520) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_GOLD)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
--- specials
if sim.partProperty(r,'type') == elem.DEFAULT_PT_ISOZ and math.random(1,40) == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_RADX)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
sim.pressure(x/4,y/4, math.abs(mypres) + 3)
end
-- URAN
if sim.partProperty(r,'type') == elem.DEFAULT_PT_URAN then
if sim.partProperty(r,'tmp') == 0 then
if math.random(1,540) == 1 then
sim.partProperty(r,'tmp', 1)
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
if math.random(1,440) == 1 then
sim.partProperty(r,'tmp', 1)
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_EMBR)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_EMBR)
end
elseif sim.partProperty(r,'tmp') == 1 then
if math.random(1,540) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_ACT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
elseif sim.partProperty(r,'tmp') == 8 then --WEAKFORCE ADDER
sim.partProperty(r,'pavg0', 5) -- SET TO WEAKFORCE 5.
sim.partProperty(r,'tmp', 16)
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
end
end
-- URAN END
-- PLUT
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT then
if sim.partProperty(r,'pavg0') == 0 then
if sim.partProperty(r,'tmp') == 0 then
elseif sim.partProperty(r,'tmp') == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_PACT)
sim.partProperty(r,'tmp', 3)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_STNE)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
end
end
-- PLUT END
if sim.partProperty(r,'type') == elem.DEFAULT_PT_GLOW and math.random(1,40) == 1 then
if math.random(1,40) == 1 then
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
sim.partProperty(r,'type', elem.DEFAULT_PT_ISOZ)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
elseif math.random(1,20) == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_NUCL)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_HYGN)
end
end
--- reversions
if sim.partProperty(r,'type') == elem.DEFAULT_PT_GOLD and math.random(1,520) == 1 then
if math.random(1,40) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_IRON)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_ISOZ)
elseif math.random(1,40) == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_IRON)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT and math.random(1,2520) == 1 and sim.partProperty(r,'tmp') == 2 then
if math.random(1,40) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_SALT)
elseif math.random(1,40) == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_STNE)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
end
end
--ACTPACTTACT
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PQRT and math.random(1,350) == 1 then
local PQRTBREL = math.random(1,4)
if PQRTBREL == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
elseif PQRTBREL == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
elseif PQRTBREL == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
elseif PQRTBREL == 4 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BMTL and math.random(1,150) == 1 then
end
--ACTPACTTACTEND
end
--- SALT REACTIONS
if r~= nil then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 0 and math.random(1,60) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_SALT)
sim.partProperty(r,'tmp', math.random(3,9))
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_HYGN)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 3 and math.random(1,60) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_CLST)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_HYGN)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 4 and math.random(1,20) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_SAND)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_HYGN)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 5 and math.random(1,30) == 1 and sim.partProperty(i,'temp') < 313.15 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PQRT)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_SAND)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 6 and math.random(1,40) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BRMT)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 7 and math.random(1,60) == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_NUCL)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 8 and math.random(1,40) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 9 and math.random(1,60) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_ISOZ)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_SAND)
sim.partProperty(i,'temp', math.abs(mytemp) + 62.00)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 11 and math.random(1,2) == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_RAD)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') == 12 and math.random(1,25) == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_NUCL)
end
end
--- SALT REACTIONS END
--- PLUT REACTIONS START
---if r~= nil then
--- if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_PLUT and sim.partProperty(r,'tmp2') == 0 then
--- sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
--- sim.partProperty(r,'ctype', elem.DEFAULT_PT_NONE)
--- sim.partProperty(r,'tmp', math.random(0,2))
--- sim.partProperty(r,'tmp2', 1)
---
--- if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT and sim.partProperty(r,'tmp') == 0 and math.random(1,40) == 1 and sim.partProperty(r,'tmp2') == 1 then
--- sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
--- end
--- if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT and sim.partProperty(r,'tmp') == 1 and math.random(1,40) == 1 and sim.partProperty(r,'tmp2') == 1 then
--- sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
--- end
--- if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT and sim.partProperty(r,'tmp') == 2 and math.random(1,40) == 1 and sim.partProperty(r,'tmp2') == 1 then
--- sim.partProperty(r,'type', elem.DEFAULT_PT_HYGN)
--- sim.partProperty(i,'temp', math.abs(mytemp) + 862.00)
--- sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_HYGN)
--- end
---end
--- PLUT REACTIONS END
-- transmutation
if r~= nil then
local transmuteRDM = math.random(1,6)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BRCK then
if transmuteRDM == 2 then
sim.partProperty(r,'tmp', math.random(0,2))
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT then
if sim.partProperty(r,'tmp', 2) then
if math.random(1,22) == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_RBDM then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
sim.partProperty(i,'temp', math.abs(mytemp) - 4.00)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_PACT)
sim.partProperty(r,'tmp', math.random(0,2))
sim.partProperty(r,'temp', math.abs(mytemp) - 18.00)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
sim.partProperty(r,'tmp', math.random(0,2))
if math.random(1,32) == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_GLOW)
sim.partProperty(i,'tmp', 5)
end
end
end
end
end
tpt.element_func(RADX,radio)
local nucl = elements.allocate("TIMO", "NUCL")
elements.element(elements.DEFAULT_PT_GLOW)
elem.property(elem.TIMO_PT_NUCL, "Name", "NUCL")
elem.property(elem.TIMO_PT_NUCL, "Colour", 0x446735)
elem.property(elem.TIMO_PT_NUCL, "Description", "Radioactive breeding material.")
elem.property(elem.TIMO_PT_NUCL, "Properties", elem.TYPE_LIQUID+elem.PROP_DEADLY+elem.PROP_RADIOACTIVE+elem.PROP_NEUTPENETRATE+elem.PROP_HOT_GLOW)
elem.property(elem.TIMO_PT_NUCL, "MenuSection", elem.SC_NUCLEAR)
elem.property(elem.TIMO_PT_NUCL, "MenuVisible", 1)
elem.property(elem.TIMO_PT_NUCL, "Weight", 11.44)
elem.property(elem.TIMO_PT_NUCL, "Gravity", .09)
elem.property(elem.TIMO_PT_NUCL, "Falldown", 2)
elem.property(elem.TIMO_PT_NUCL, "Diffusion", 0.015)
elem.property(elem.TIMO_PT_NUCL, "HighTemperature", 3380.15)
elem.property(elem.TIMO_PT_NUCL, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
sim.can_move(elem.DEFAULT_PT_ELEC, elem.TIMO_PT_NUCL, 2)
sim.can_move(elem.DEFAULT_PT_PHOT, elem.TIMO_PT_NUCL, 2)
tpt.element_func(NU, tpt.element('NUCL'))
local function nuclUpdate (i,x,y,s,n)
local mytemp = sim.partProperty(i,'temp')
local mypres = sim.pressure(x/4,y/4)
r = sim.partID(x+math.random(-1,1),y+math.random(-1,1))
if r~= nil then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_WATR or sim.partProperty(r,'type') == elem.DEFAULT_PT_WTRV or sim.partProperty(r,'type') == elem.DEFAULT_PT_DSTW then
if sim.partProperty(i,'temp') > 373.15 then
sim.pressure(x/4,y/4,math.abs(mypres)+180)
sim.partProperty(r,'type', elem.DEFAULT_PT_HYGN)
sim.partProperty(r,'temp', math.abs(mytemp) + 4658.15)
sim.partProperty(i,'life', 82)
sim.partProperty(i,'temp', 9724.15)
tpt.set_property("temp", math.abs(mytemp) + 7162.00, x, y)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_DEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
end
end
end
if r~= nil then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
if sim.pressure(x/4,y/4) > 3.5 and math.random(1,6) == 1 then
sim.partProperty(r,'temp', 2724.15)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_NEUT)
end
end
end
if r~= nil then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT and math.random(1,600) == 1 and sim.pressure(x/4,y/4) > 130 then
sim.pressure(x/4,y/4, math.abs(mypres) + 48)
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
sim.partProperty(r,'temp', math.abs(mytemp) + 3712.00)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_POLO)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_STNE)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_NEUT)
end
end
if r~= nil and sim.partProperty(i,'temp') < 573.15 and math.random(1,100) == 1 then
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
end
if r~= nil and sim.partProperty(i,'temp') > 573.15 and math.random(1,100) == 1 then
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
end
if r~= nil and math.random(1,10) == 1 and sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
sim.partProperty(i,'temp', math.abs(mytemp) + 22.00)
sim.pressure(x/4,y/4, math.abs(mypres) + 12)
tpt.set_property("vx", math.random(-2,2), i)
tpt.set_property("vy", math.random(-2,2), i)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
end
if r~= nil and sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_POLO and math.random(1,220) == 1 then
sim.partProperty(i,'temp', math.abs(mytemp) + 122.00)
sim.pressure(x/4,y/4, math.abs(mypres) + 24)
sim.partProperty(i,'type', elem.DEFAULT_PT_SALT)
sim.partProperty(i,'tmp', 7)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_BOYL)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
if math.random(1,320) == 1 then
sim.partKill(r)
end
end
if sim.pressure(x/4,y/4) > 180 and math.random(1,50) == 1 then
tpt.set_property("temp", math.abs(mytemp) + 6472.00, x+math.random(-1,1), y+math.random(-1,1))
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
tpt.create(x+math.random(-1,2), y+math.random(-1,2), "PROT")
if math.random(1,12) == 1 then
sim.partProperty(i,'temp', math.abs(mytemp) + 9122.00)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RAD)
if math.random(1,12) == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_SALT)
sim.partProperty(i,'tmp', 7)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_RADX)
end
end
end
if r~= nil and sim.partProperty(r,'type') == elem.DEFAULT_PT_PROT then
if sim.pressure(x/4,y/4) > 240 and math.random(1,220) then
local rdmchance = math.random(1,10)
if rdmchance == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_SALT)
sim.partProperty(i,'tmp', math.random(1,12))
elseif rdmchance == 2 then
sim.partProperty(i,'type', elem.DEFAULT_PT_SALT)
sim.partProperty(i,'tmp', math.random(7,11))
elseif rdmchance == 3 or rdmchance == 4 then
sim.partProperty(i,'type', elem.TIMO_PT_RADX)
elseif rdmchance == 5 or rdmchance == 6 or rdmchance == 7 then
sim.partProperty(i,'type', elem.DEFAULT_PT_SALT)
sim.partProperty(i,'tmp', 11)
elseif rdmchance == 8 or rdmchance == 9 or rdmchance == 10 then
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
end
end
end
if r~= nil and sim.partProperty(r,'type') == elem.TIMO_PT_RADX then
if sim.pressure(x/4,y/4) < 2 and math.random(1,220) == 1 then
tpt.set_property("vx", math.random(-1,1), r)
tpt.set_property("vy", math.random(-1,1), r)
end
end
end
tpt.element_func(NUCL,nucl)
elem.property(nucl, "Update",nuclUpdate)
--- radioactive ore
local RADORE = elements.allocate("TIMO", "RAD")
elements.element(elements.DEFAULT_PT_SAND)
elem.property(elem.TIMO_PT_RAD, "Name", "RAD")
elem.property(elem.TIMO_PT_RAD, "Colour", 0x246355)
elem.property(elem.TIMO_PT_RAD, "Description", "Radioactive ore.")
elem.property(elem.TIMO_PT_RAD, "Properties", elem.TYPE_PART+elem.PROP_DEADLY+elem.PROP_NEUTPENETRATE+elem.PROP_HOT_GLOW)
elem.property(elem.TIMO_PT_RAD, "MenuSection", elem.SC_NUCLEAR)
elem.property(elem.TIMO_PT_RAD, "MenuVisible", 1)
elem.property(elem.TIMO_PT_RAD, "Gravity", .04)
elem.property(elem.TIMO_PT_RAD, "Weight", 90)
elem.property(elem.TIMO_PT_RAD, "Falldown", 1)
sim.can_move(elem.DEFAULT_PT_ELEC, elem.TIMO_PT_RAD, 2)
sim.can_move(elem.DEFAULT_PT_PHOT, elem.TIMO_PT_RAD, 2)
tpt.element_func(NU, tpt.element('RAD'))
local function RADUpdate(i,x,y,s,n)
local mytemp = sim.partProperty(i,'temp')
local mypres = sim.pressure(x/4,y/4)
local dis = sim.partProperty(i,'temp')
local transmuteRDM = math.random(1,6)
r = sim.partID(x+math.random(-1,1),y+math.random(-1,1))
if r~= nil then
if dis > 791.15 and sim.partProperty(i,'tmp') == 0 then
tpt.set_property('tmp', math.random(1,13), x, y)
end
end
local oretype = sim.partProperty(i,'tmp')
if dis > 793.15 and math.random(1,67) == 1 then
if oretype == 1 then
sim.partChangeType(i, tpt.element('SALT'))
sim.partProperty(i,'tmp', math.random(7,8))
elseif oretype == 2 then
sim.partChangeType(i, tpt.element('POLO'))
sim.partProperty(i,'tmp', math.random(0,3))
elseif oretype == 3 then
sim.partChangeType(i, tpt.element('GLOW'))
oretype = nil
elseif oretype == 4 then
sim.partProperty(i,'ctype', elem.TIMO_PT_RADX)
sim.partChangeType(i, tpt.element('LAVA'))
oretype = nil
elseif oretype == 5 then
sim.partChangeType(i, tpt.element('URAN'))
oretype = nil
elseif oretype == 6 then
sim.partChangeType(i, tpt.element('POLO'))
sim.partProperty(i,'tmp', 1)
elseif oretype == 7 then
sim.partProperty(i,'ctype', elem.TIMO_PT_TACT)
sim.partChangeType(i, tpt.element('LAVA'))
elseif oretype == 8 then
sim.partProperty(i,'tmp', math.random(6,11))
sim.partChangeType(i, tpt.element('SALT'))
elseif oretype == 9 then
sim.partProperty(i,'tmp', math.random(0,5))
sim.partChangeType(i, tpt.element('POLO'))
elseif oretype == 10 then
sim.partProperty(i,'tmp', 0)
sim.partChangeType(i, tpt.element('RADX'))
elseif oretype == 11 then
sim.partChangeType(i, tpt.element('TACT'))
sim.partProperty(i,'tmp', 11)
elseif oretype == 12 then
sim.partProperty(i,'temp', 8)
sim.partProperty(i,'tmp', 2)
sim.partProperty(i,'ctype', elem.TIMO_PT_TACT)
sim.partChangeType(i, tpt.element('ICE'))
elseif oretype == 13 then
sim.partProperty(i,'ctype', elem.TIMO_PT_PACT)
sim.partChangeType(i, tpt.element('SNOW'))
end
end
if r~= nil then
local transmuteRDM = math.random(1,6)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
if sim.pressure(x/4,y/4) > 1 then
sim.partProperty(r,'temp', math.abs(mytemp) + 62.00)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NBLE and sim.partProperty(r,'tmp') == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_ISOZ)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.pressure(x/4,y/4, math.abs(mypres) - 14)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BGLA then
sim.partProperty(r,'tmp', 5)
if math.random(1,10) == 1 then
sim.partProperty(i,'life', sim.partProperty(i,'life')+60+(math.random(-4,4)*3))
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_POLO then
local chance = math.random(1,5)
if chance == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
elseif chance == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_NUCL)
elseif chance == 3 then
sim.partProperty(r,'type', elem.TIMO_PT_RAD)
elseif chance == 4 then
sim.partProperty(r,'type', elem.DEFAULT_PT_DUST)
elseif chance == 5 then
sim.partProperty(r,'type', elem.DEFAULT_PT_GLOW)
sim.partCreate(-3, x, y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_DUST)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_CNCT then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_POLO)
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_URAN)
sim.partProperty(r,'tmp', 2)
elseif transmuteRDM == 3 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_BREL)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PSTE then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_GLOW)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_OIL)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_FIRE then
if transmuteRDM == 1 then
sim.partProperty(r,'temp', sim.partProperty(i,'temp')+(math.random(40,75)*180))
elseif transmuteRDM == 2 then
sim.partProperty(r,'life', 650)
sim.partProperty(r,'type', elem.DEFAULT_PT_EMBR)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BMTL then
if dis < 323.15 then
if math.random(1,68) == 1 then
sim.partCreate(-3, x, y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
if transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BRCK)
sim.partProperty(r,'type', elem.DEFAULT_PT_BRCK)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_RBDM)
sim.partProperty(r,'tmp', transmuteRDM)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_BMTL)
end
end
end
if sim.partProperty(r,'tmp') == 1 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(r,'ctype', elem.TIMO_PT_RAD)
if math.random(1,14) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_CRMC)
sim.partProperty(r,'temp', sim.partProperty(i,'temp')+260)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_MERC then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_RBDM)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_RBDM)
elseif transmuteRDM > 2 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL then
local DUSTFSEP = math.random(1,2)
if DUSTFSEP == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_DUST)
elseif DUSTFSEP == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BCOL)
end
end
end
end
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SMKE then
if dis < 373.15 and transmuteRDM == 6 then
sim.partProperty(r,'type', elem.DEFAULT_PT_FIRE)
sim.partProperty(r,'temp', sim.partProperty(r,'temp')-130)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+260)
if math.random(1,10) then
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
sim.partProperty(r,'pavg0', 5) --SET TO NONREACT
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SNOW and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_WATR then
sim.partProperty(r,'life', 400+math.random(-13,13))
sim.partProperty(r,'type', elem.DEFAULT_PT_PLSM)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_OXYG then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_CFLM)
sim.partProperty(r,'ctype', elem.TIMO_PT_RAD)
if math.random(1,120) == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_TACT)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_POLO)
end
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_FOG)
sim.partProperty(r,'ctype', elem.TIMO_PT_RAD)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_WATR then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_HYGN)
sim.partProperty(r,'tmp', 5)
if math.random(1,140) == 1 then
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NITR)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SLTW then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_HYGN)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_HYGN)
if math.random(1,26) then
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NBLE)
sim.partProperty(r,'tmp', 1)
end
end
if math.random(1,60) == 1 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NBLE and sim.partProperty(r,'tmp', 0) then
sim.partProperty(r,'tmp', 1)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL and sim.partProperty(r,'ctype') == elem.TIMO_PT_ACT then
sim.partProperty(r,'ctype', elem.TIMO_PT_ACT)
sim.partProperty(r,'type', elem.DEFAULT_PT_SNOW)
sim.partProperty(i,'temp', 3)
sim.partProperty(r,'temp', 3)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL and sim.partProperty(r,'ctype') == elem.TIMO_PT_PACT then
sim.partProperty(r,'ctype', elem.TIMO_PT_PACT)
sim.partProperty(r,'type', elem.DEFAULT_PT_SNOW)
sim.partProperty(i,'temp', 3)
sim.partProperty(r,'temp', 3)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL and sim.partProperty(r,'ctype') == elem.TIMO_PT_TACT then
sim.partProperty(r,'ctype', elem.TIMO_PT_TACT)
sim.partProperty(r,'type', elem.DEFAULT_PT_SNOW)
sim.partProperty(i,'temp', 3)
sim.partProperty(r,'temp', 3)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_CFLM)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_HYGN then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_HYGN)
sim.partProperty(r,'type', elem.DEFAULT_PT_SPRK)
sim.partProperty(r,'life', 4)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BGLA then
if math.random(1,120) == 1 then
if transmuteRDM == 1 then
sim.partProperty(i,'ctype', elem.DEFAULT_PT_BGLA)
sim.partProperty(r,'type', elem.DEFAULT_PT_RBDM)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_BGLA)
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
elseif transmuteRDM == 2 then
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_POLO)
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
sim.partProperty(r,'tmp', 1)
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
elseif transmuteRDM > 2 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+760)
sim.partProperty(r,'temp', sim.partProperty(r,'temp')+1460)
sim.partProperty(r,'type', elem.DEFAULT_PT_PQRT)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_PQRT)
end
end
end
end
end
end
tpt.element_func(RAD,RADORE)
elem.property(elem.TIMO_PT_RAD, "Update",RADUpdate)
---end radioactive ore
--- transition nuclear metal
local act = elements.allocate("TIMO", "ACT")
elements.element(elements.DEFAULT_PT_PQRT)
elem.property(elem.TIMO_PT_ACT, "Name", "ACT")
elem.property(elem.TIMO_PT_ACT, "Colour", 0x927121)
elem.property(elem.TIMO_PT_ACT, "Description", "Metallic metastable.")
elem.property(elem.TIMO_PT_ACT, "Properties", elem.TYPE_PART+elem.PROP_DEADLY+elem.PROP_HOT_GLOW+elem.PROP_NEUTPASS+elem.PROP_RADIOACTIVE)
elem.property(elem.TIMO_PT_ACT, "MenuSection", 10)
elem.property(elem.TIMO_PT_ACT, "MenuVisible", 1)
elem.property(elem.TIMO_PT_ACT, "Weight", 90)
elem.property(elem.TIMO_PT_ACT, "Gravity", 1)
elem.property(elem.TIMO_PT_ACT, "Falldown", 1)
elem.property(elem.TIMO_PT_ACT, "AirLoss", 0.02)
elem.property(elem.TIMO_PT_ACT, "Loss", 0.001)
elem.property(elem.TIMO_PT_ACT, "AirDrag", 0.4)
elem.property(elem.TIMO_PT_ACT, "Advection", 0.13)
elem.property(elem.TIMO_PT_ACT, "Diffusion", 0.01)
elem.property(elem.TIMO_PT_ACT, "HeatConduct", 1)
elem.property(elem.TIMO_PT_ACT, "HighTemperature", 1636.35)
elem.property(elem.TIMO_PT_ACT, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
sim.can_move(elem.DEFAULT_PT_ELEC, elem.TIMO_PT_ACT, 2)
sim.can_move(elem.DEFAULT_PT_PHOT, elem.TIMO_PT_ACT, 2)
tpt.element_func(NU, tpt.element('ACT'))
local function actUpdate(i,x,y,s,n)
local mytemp = sim.partProperty(i,'temp')
local mypres = sim.pressure(x/4,y/4)
r = sim.partID(x+math.random(-1,1),y+math.random(-1,1))
if r~= nil then
local weakforce = sim.partProperty(i,'pavg0')
local transmuteRDM = math.random(1,6)
-- -- WEAKFORCE INDUCTORS
-- WEAKFORCE 0
if weakforce == 0 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_FIRE then
sim.partProperty(i,'pavg0', 5) -- SET TO WEAKFORCE 5
sim.partProperty(r,'temp', 1073.15)
sim.partProperty(i,'temp', 823.15)
sim.partProperty(r,'life', 43)
sim.partProperty(r,'type', elem.DEFAULT_PT_PLSM)
end
end
-- WEAKFORCE 0 END
-- WEAKFORCE 5
if weakforce == 5 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
sim.partProperty(i,'pavg0', 0) -- SET TO WEAKFORCE 0
if weakforce == 1 and sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+50)
end
end
end
-- WEAKFORCE 5 END
-- -- WEAKFORCE INTERACTIONS
-- WEAKFORCE 4 -- GRVT
if weakforce == 4 then
if math.random(1,120) == 1 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_GRVT)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_GRVT then
sim.partProperty(r,'life', math.random(8,12))
sim.partProperty(r,'vx', 0)
sim.partProperty(r,'vy', 0)
end
end
-- WEAKFORCE 5
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT and weakforce == 5 and sim.partProperty(r,'life') == 2 and sim.partProperty(r,'tmp') == 2 then -- BASIC EXPLODE
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'temp', 10000)
sim.partProperty(r,'temp', 10000)
sim.pressure(x/4,y/4,255)
tpt.set_property("vx", math.random(-20,20), r)
tpt.set_property("vy", math.random(-20,20), r)
tpt.set_property("vx", math.random(-20,20), i)
tpt.set_property("vy", math.random(-20,20), i)
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
sim.partProperty(i,'type', elem.DEFAULT_PT_URAN)
end
end
-- WEAKFORCE INTERACTIONS END, WEAKFORCE 0 (DEFAULT) BELOW
-- TRANSMUTEGENERALRATE -- WEAKFORCE 0
if math.random(1,2) == 1 and weakforce == 0 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SAWD then
sim.partProperty(r,'type', elem.DEFAULT_PT_DUST)
sim.partProperty(r,'ctype', elem.TIMO_PT_ACT)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+300)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BRMT then
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_TUNG then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_POLO)
sim.partProperty(i,'type', elem.TIMO_PT_TACT)
end
elseif sim.partProperty(r,'ctype') == elem.DEFAULT_PT_NONE then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
end
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_QRTZ and sim.partProperty(r,'tmp2') < 5 then
sim.partProperty(r,sim.FIELD_DCOLOUR, (sim.partProperty(r,sim.FIELD_DCOLOUR)+sim.partProperty(i,sim.FIELD_DCOLOUR))/2)
if math.random(1,30) == 1 then
sim.partProperty(r,'tmp', sim.partProperty(r,'tmp')+1)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL and math.random(1,300) then
sim.partProperty(r,'ctype', elem.TIMO_PT_ACT)
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BCOL)
if math.random(1,30) == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_BRMT)
sim.partProperty(i,'ctype', elem.DEFAULT_PT_TUNG)
end
elseif transmuteRDM == 2 then
if sim.partProperty(i,'tmp') == 0 then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
sim.partProperty(i,'tmp', sim.partProperty(i,'tmp')+1)
elseif sim.partProperty(i,'tmp') == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_SAND)
if math.random(1,45) == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_TUNG)
sim.partProperty(i,'ctype', elem.TIMO_PT_ACT)
sim.partProperty(i,'tmp', sim.partProperty(i,'tmp')+1)
end
elseif sim.partProperty(i,'tmp') > 2 then
local polotown = math.random(1,3)
if polotown == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
sim.partProperty(r,'type', elem.DEFAULT_PT_BRMT)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_PLUT)
elseif polotown == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_DUST)
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
elseif polotown == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PQRT)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
sim.partProperty(r,'temp', sim.partProperty(r,'temp')+50)
end
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_WATR or sim.partProperty(r,'type') == elem.DEFAULT_PT_DSTW or sim.partProperty(r,'type') == elem.DEFAULT_PT_WTRV then
sim.partProperty(r,'pavg0', 0)
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_POLO then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_ISOZ)
sim.partProperty(r,'tmp', 0)
elseif sim.partProperty(r,'ctype') == elem.TIMO_PT_TACT then
if sim.partProperty(r,'tmp') == 2 then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
sim.partProperty(i,'type', elem.TIMO_PT_TACT)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
sim.partProperty(i,'type', elem.DEFAULT_PT_TACT)
end
end
sim.partProperty(r,'tmp', 1)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-3,3))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-3,3))
end
end
--if weakfspark
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SPRK and math.random(1,35) == 1 or math.random(1,420) == 70 then
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-0.01,0.01))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-0.01,0.01))
sim.partProperty(r,'temp', sim.partProperty(i,'temp')/2+sim.partProperty(i,'temp')+(sim.partProperty(r,'vx')+sim.partProperty(r,'vy')))
if math.random(1,2) == 1 then
sim.partProperty(i,'tmp', 1)
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+2000)
sim.pressure(x/4,y/4, math.abs(mypres) + 14)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-7,7))
elseif math.random(1,3) == 1 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_URAN then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
end
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+7000)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.pressure(x/4,y/4, math.abs(mypres) + 24)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-13,13))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-13,17))
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
sim.partProperty(r,'tmp', 0)
end
end
--end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_URAN then
if math.random(1,10) == 1 and sim.partProperty(r,'tmp') == 2 and sim.partProperty(r,'life') == 0 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-6,6))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-6,6))
sim.partProperty(r,'temp', sim.partProperty(r,'temp')+2000)
end
if sim.partProperty(r,'life') == 2 and sim.partProperty(r,'tmp') == 2 then
--SUPER SPECIAL URANIUM
end
end
-- DECAY
if math.random(1,160) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+165)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-1,1))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-1,1))
if math.random(1,30) == 1 then
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-7,7))
sim.partProperty(i,'tmp', math.random(1,2))
if transmuteRDM == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
elseif transmuteRDM == 2 and math.random(1,16) == 1 then
sim.partProperty(i,'pavg0', 5) -- SET TO WEAKFORCE 5 -- NONREACT "WASTE"
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
--sim.partProperty(i,'life', sim.partProperty(i,'life')+1)
if math.random(1,10) == 1 then
if transmuteRDM == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
end
if transmuteRDM == 3 and math.random(1,13) == 1 then
sim.partProperty(i,'pavg0', 5) -- SET TO WEAKFORCE 5 -- NONREACT "WASTE"
end
end
end
-- DECAY END
end--TRANSMUTEGENERALRATE END
end
end
tpt.element_func(ACT,act)
elem.property(act, "Update",actUpdate)
--- end transition nuclear metal
--- transition nuclear metal 2
local pact = elements.allocate("TIMO", "PACT")
elements.element(elements.DEFAULT_PT_PQRT)
elem.property(elem.TIMO_PT_PACT, "Name", "PACT")
elem.property(elem.TIMO_PT_PACT, "Colour", 0x727323)
elem.property(elem.TIMO_PT_PACT, "Description", "Metallic metastable.")
elem.property(elem.TIMO_PT_PACT, "Properties", elem.TYPE_PART+elem.PROP_DEADLY+elem.PROP_HOT_GLOW+elem.PROP_NEUTPASS+elem.PROP_RADIOACTIVE)
elem.property(elem.TIMO_PT_PACT, "MenuSection", 10)
elem.property(elem.TIMO_PT_PACT, "MenuVisible", 1)
elem.property(elem.TIMO_PT_PACT, "Weight", 90)
elem.property(elem.TIMO_PT_PACT, "Gravity", 1)
elem.property(elem.TIMO_PT_PACT, "Falldown", 1)
elem.property(elem.TIMO_PT_PACT, "AirLoss", 0)
elem.property(elem.TIMO_PT_PACT, "Loss", 0)
elem.property(elem.TIMO_PT_PACT, "AirDrag", 0.3)
elem.property(elem.TIMO_PT_PACT, "Advection", 4)
elem.property(elem.TIMO_PT_PACT, "Diffusion", 0.13)
elem.property(elem.TIMO_PT_PACT, "HeatConduct", 2)
elem.property(elem.TIMO_PT_PACT, "HighTemperature", 1376.35)
elem.property(elem.TIMO_PT_PACT, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
sim.can_move(elem.DEFAULT_PT_ELEC, elem.TIMO_PT_PACT, 2)
sim.can_move(elem.DEFAULT_PT_PHOT, elem.TIMO_PT_PACT, 2)
tpt.element_func(NU, tpt.element('PACT'))
local function pactUpdate(i,x,y,s,n)
local mytemp = sim.partProperty(i,'temp')
local mypres = sim.pressure(x/4,y/4)
local weakforce = sim.partProperty(i,'pavg0')
r = sim.partID(x+math.random(-1,1),y+math.random(-1,1))
if r~= nil then
local transmuteRDM = math.random(1,6)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_WATR or sim.partProperty(r,'type') == elem.DEFAULT_PT_DSTW or sim.partProperty(r,'type') == elem.DEFAULT_PT_WTRV then
if sim.partProperty(r,'ctype') == elem.TIMO_PT_TACT then
if sim.partProperty(r,'tmp') == 0 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
if transmuteRDM == 1 then
sim.partProperty(r,'tmp', 2)
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_POLO)
elseif transmuteRDM == 3 then
sim.partProperty(i,'pavg0', 0) --SET TO REACT
end
elseif sim.partProperty(r,'tmp') == 1 then
sim.partProperty(r,'tmp', 4)
sim.partProperty(r,'type', elem.DEFAULT_PT_NBLE)
end
end
end
-- WEAKFORCE INTERACTIONS
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
if sim.partProperty(r,'tmp') == 5 then
sim.partProperty(i,'pavg0', 5) --SET TO NONREACT
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_FIRE then
sim.partProperty(i,'pavg0', 5) --SET TO NONREACT
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_GOLD then
if sim.partProperty(r,'tmp') == 0 then
sim.partProperty(r,'tmp', 5)
sim.partProperty(i,'pavg0', 0) --SET TO REACT
end
end
if weakforce == 0 then
if math.random(1,300) == 1 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT then
sim.partProperty(r,'type', elem.DEFAULT_PT_TACT)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_PLUT then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.TIMO_PT_ACT)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+5725)
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_URAN)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+387)
sim.partProperty(r,'tmp', 2)
elseif transmuteRDM == 3 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_BREL)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_GOLD then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
end
end
if math.random(1,300) == 1 and sim.pressure(x/4,y/4) < -3 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NONE then
sim.partProperty(r,'type', elem.DEFAULT_PT_PROT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x+math.random(-2,2), y+math.random(-2,2), elem.DEFAULT_PT_PHOT)
end
end
--- DECAY
if math.random(1,42) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+625)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT and sim.partProperty(r,'tmp') == 3 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+2725)
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-6,6))
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-6,6))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-6,6))
end
if math.random(1,46) == 1 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_CLST then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
end
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-1,1))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-1,1))
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
end
end
--- DECAY END
-- NEUTREACT
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-0.5,0.5))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-0.5,0.5))
if sim.partProperty(r,'type') == elem.DEFAULT_PT_URAN then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
end
if math.random(1,10) == 1 then
sim.partProperty(r,'temp', sim.partProperty(i,'temp')/2+sim.partProperty(i,'temp')+(sim.partProperty(r,'vx')+sim.partProperty(r,'vy')))
if math.random(1,2) == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+2000)
sim.pressure(x/4,y/4, math.abs(mypres) + 14)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-3,3))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-4,4))
if math.random(1,3) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+7000)
sim.pressure(x/4,y/4, math.abs(mypres) + 24)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-6,6))
end
end
end
end
-- NEUTREACT END
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT then
if math.random(1,10) == 1 then
if sim.partProperty(r,'tmp') == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_PACT)
elseif sim.partProperty(r,'tmp') == 0 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
sim.partProperty(r,'tmp', 2)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_URAN then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
sim.partProperty(r,'tmp', 2)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
sim.partProperty(r,'tmp', 3)
sim.partProperty(r,'pavg0', 5)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_SALT and sim.partProperty(r,'tmp') > 0 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
sim.partProperty(r,'type', elem.DEFAULT_PT_STNE)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_URAN)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_STNE then
if math.random(1,40) == 1 then
if transmuteRDM == 1 then
if math.random(1,16) == 1 then
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-6,6))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-6,6))
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
end
elseif transmuteRDM == 2 then
if math.random(1,8) == 1 then
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-6,6))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-6,6))
sim.partProperty(r,'type', elem.DEFAULT_PT_BRMT)
sim.pressure(x/4,y/4, math.abs(mypres) + -0.2)
if math.random(1,32) == 1 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'tmp', transmuteRDM)
sim.partProperty(i,'type', elem.DEFAULT_PT_IRON)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+15)
end
end
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BRMT then
if sim.partProperty(r,'tmp') == 5 and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_NONE then
if transmuteRDM == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_TACT)
sim.partProperty(r,'type', elem.TIMO_PT_RAD)
elseif transmuteRDM == 2 then
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
elseif transmuteRDM == 3 then
sim.partProperty(i,'type', elem.TIMO_PT_TACT)
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
elseif transmuteRDM == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_BREL)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
end
end
end
end --weakforce end
end
end
--end
tpt.element_func(PACT,pact)
elem.property(pact, "Update",pactUpdate)
--- end transition nuclear metal 2
--- transition nuclear metal 3
local tact = elements.allocate("TIMO", "TACT")
elements.element(elements.DEFAULT_PT_PQRT)
elem.property(elem.TIMO_PT_TACT, "Name", "TACT")
elem.property(elem.TIMO_PT_TACT, "Colour", 0x988888)
elem.property(elem.TIMO_PT_TACT, "Description", "Metallic metastable.")
elem.property(elem.TIMO_PT_TACT, "Properties", elem.TYPE_PART+elem.PROP_DEADLY+elem.PROP_HOT_GLOW+elem.PROP_RADIOACTIVE+elem.PROP_NEUTPASS)
elem.property(elem.TIMO_PT_TACT, "MenuSection", 10)
elem.property(elem.TIMO_PT_TACT, "MenuVisible", 1)
elem.property(elem.TIMO_PT_TACT, "Weight", 90)
elem.property(elem.TIMO_PT_TACT, "Gravity", 1)
elem.property(elem.TIMO_PT_TACT, "Falldown", 1)
elem.property(elem.TIMO_PT_TACT, "AirLoss", 0.01)
elem.property(elem.TIMO_PT_TACT, "Loss", 0.02)
elem.property(elem.TIMO_PT_TACT, "AirDrag", 0.31)
elem.property(elem.TIMO_PT_TACT, "Advection", 0.3776)
elem.property(elem.TIMO_PT_TACT, "Diffusion", 0)
elem.property(elem.TIMO_PT_TACT, "HeatConduct", 26)
elem.property(elem.TIMO_PT_TACT, "HighTemperature", 3826.35)
elem.property(elem.TIMO_PT_TACT, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
sim.can_move(elem.DEFAULT_PT_ELEC, elem.TIMO_PT_TACT, 2)
sim.can_move(elem.DEFAULT_PT_PHOT, elem.TIMO_PT_TACT, 2)
sim.can_move(elem.DEFAULT_PT_PROT, elem.TIMO_PT_TACT, 0)
sim.can_move(elem.DEFAULT_PT_NEUT, elem.TIMO_PT_TACT, 1)
sim.can_move(elem.DEFAULT_PT_MERC, elem.TIMO_PT_TACT, 1)
sim.can_move(elem.DEFAULT_PT_LAVA, elem.TIMO_PT_TACT, 1)
sim.can_move(elem.TIMO_PT_ACT, elem.TIMO_PT_TACT, 1)
tpt.element_func(NU, tpt.element('TACT'))
local function tactUpdate(i,x,y,s,n)
local mytemp = sim.partProperty(i,'temp')
local mypres = sim.pressure(x/4,y/4)
local weakforce = sim.partProperty(i,'pavg0')
r = sim.partID(x+math.random(-1,1),y+math.random(-1,1))
if r~= nil then
local transmuteRDM = math.random(1,6)
-- -- WEAKFORCE INDUCTORS
-- WEAKFORCE 0
if weakforce == 0 then
end
-- WEAKFORCE INTERACTIONS
if sim.partProperty(r,'type') == elem.DEFAULT_PT_FIRE then
sim.partProperty(i,'pavg0', 5)
sim.partProperty(i,sim.FIELD_DCOLOUR, sim.partProperty(i,sim.FIELD_DCOLOUR)+math.random(5,25)) --NONREACT color ?
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_WATR or sim.partProperty(r,'type') == elem.DEFAULT_PT_DSTW or sim.partProperty(r,'type') == elem.DEFAULT_PT_WTRV then
sim.partProperty(i,'pavg0', 0)
sim.partProperty(i,'life', 0)
sim.partProperty(i,'tmp', 0)
sim.partProperty(i,'tmp2', 0)
end
-- WEAKFORCE INTERACTIONS END
--TRANSMUTEGENERALRATE -- WEAKFORCE 0
if weakforce == 0 then -- 0WEAKFORCE 1 -- NEUTREACT DECAY
if sim.partProperty(i,'life') == 0 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
sim.partProperty(i,'life', 1)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-5,5))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-4,4))
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+6000)
---sim.pressure(x/4,y/4, math.abs(mypres) + 14)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_CRMC then
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+1000)
end
end
elseif sim.partProperty(i,'life') == 1 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
if math.random(1,15) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+math.random(2000,9000))
sim.pressure(x/4,y/4, math.abs(mypres) + 24)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-8,8))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-5,5))
end
if transmuteRDM == 1 then
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-3,3))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-3,3))
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+7500)
sim.pressure(x/4,y/4, math.abs(mypres) + 16)
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
elseif transmuteRDM == 2 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
elseif transmuteRDM == 6 and math.random(1,56) == 1 then
sim.partProperty(i,'pavg0', 5)
end
end
end
end --- 0WEAKFORCE 1 END
if weakforce == 0 then -- 0WEAKFORCE 2 -- DECAY
if math.random(1,2360) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+465)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-1,1))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-1,1))
if math.random(1,14) == 1 then
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-7,7))
sim.partProperty(i,'tmp', math.random(1,2))
if transmuteRDM == 1 then
sim.partProperty(i,'pavg0', 5) --NONREACT
sim.partProperty(i,sim.FIELD_DCOLOUR, sim.partProperty(i,sim.FIELD_DCOLOUR)+math.random(5,25)) --NONREACT color ?
elseif transmuteRDM == 2 then
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-7,7))
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+465)
elseif transmuteRDM == 3 then
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)-1)
end
elseif transmuteRDM == 4 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+210)
if math.random(1,3) == 1 then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)-1)
end
elseif transmuteRDM == 5 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)-1)
elseif sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_IRON then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+3)
local pssst = math.random(1,3)
if pssst == 1 then
if math.random(1,3) == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_METL)
end
elseif pssst == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_PTCT)
elseif pssst == 3 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_NTCT)
end
end
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
elseif transmuteRDM == 6 then
local blocal = math.random(1,3)
if blocal == 1 then
sim.partProperty(i,'tmp', math.random(1,3)+11)
sim.partProperty(i,'type', elem.DEFAULT_PT_SALT)
sim.partProperty(i,'life', 0)
elseif blocal == 2 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SALT then
if sim.partProperty(r,'tmp') == 12 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
elseif sim.partProperty(r,'tmp') == 13 and math.random(1,10) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
elseif sim.partProperty(r,'tmp') == 14 then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
end
end
elseif blocal == 3 then
local tlocal = math.random(1,4)
if tlocal == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
sim.partProperty(i,'tmp', 2)
elseif tlocal == 2 then
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
elseif tlocal == 3 then
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
elseif tlocal == 4 then
sim.partProperty(i,'pavg0', 5) -- INERT ACT
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
end
end
end
end
end
end -- 0WEAKFORCE 2 END
if math.random(1,2) == 1 and weakforce == 0 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_QRTZ and sim.partProperty(r,'tmp2') < 15 then
if transmuteRDM == 1 then
sim.partProperty(r,sim.FIELD_DCOLOUR, (sim.partProperty(r,sim.FIELD_DCOLOUR)+sim.partProperty(i,sim.FIELD_DCOLOUR))/sim.partProperty(i,sim.FIELD_DCOLOUR))
end
if math.random(1,30) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'tmp2', sim.partProperty(r,'tmp2')+1)
elseif transmuteRDM == 2 then
sim.partProperty(r,'tmp2', sim.partProperty(r,'tmp2')+3)
elseif transmuteRDM == 3 then
sim.partProperty(r,'tmp2', sim.partProperty(r,'tmp2')-2)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PQRT and sim.partProperty(r,'tmp2') < 15 then
if transmuteRDM == 1 then
sim.partProperty(r,sim.FIELD_DCOLOUR, (sim.partProperty(r,sim.FIELD_DCOLOUR)+sim.partProperty(i,sim.FIELD_DCOLOUR))/sim.partProperty(i,sim.FIELD_DCOLOUR))
end
if math.random(1,30) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'tmp2', sim.partProperty(r,'tmp2')+1)
elseif transmuteRDM == 2 then
sim.partProperty(r,'tmp2', sim.partProperty(r,'tmp2')+3)
elseif transmuteRDM == 3 then
sim.partProperty(r,'tmp2', sim.partProperty(r,'tmp2')-2)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SAWD then
if sim.partProperty(i,'tmp2') == 0 then
sim.partProperty(r,'life', 110)
sim.partProperty(r,'tmp2', math.random(1,500))
sim.partProperty(r,'type', elem.DEFAULT_PT_BCOL)
sim.partProperty(r,'ctype', elem.TIMO_PT_TACT)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+300)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'tmp2', 1)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BRMT then
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_TUNG then
sim.partProperty(r,'temp', sim.partProperty(i,'temp')+3333)
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_IRON)
end
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_WOOD then
sim.partProperty(r,'life', 110)
sim.partProperty(r,'tmp', 50)
sim.partProperty(r,'type', elem.DEFAULT_PT_COAL)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLNT then
sim.partProperty(r,'life', 110)
sim.partProperty(r,'tmp', 50)
sim.partProperty(r,'type', elem.DEFAULT_PT_COAL)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BCOL then
if sim.partProperty(i,'tmp2') == 1 and math.random(1,46) == 1 then
if transmuteRDM == 1 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+1300)
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-13,13))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-13,13))
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-6,6))
elseif transmuteRDM == 2 then
sim.partProperty(r,'tmp', 2)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-26,26))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-26,26))
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+8300)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
sim.partCreate(-1, x, y, elem.DEFAULT_PT_URAN)
sim.pressure(x/4,y/4, math.abs(mypres) + 48)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_TUNG then
if math.random(1,14) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+400)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
end
if transmuteRDM == 1 then
sim.partCreate(-1, x, y, elem.DEFAULT_PT_URAN)
elseif transmuteRDM == 2 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+600)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
if math.random(1,720) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_IRON)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BRMT then
if math.random(1,48) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+120)
end
if math.random(1,290) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
end
end
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_TUNG then
if math.random(1,14) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+400)
if transmuteRDM == 1 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
elseif transmuteRDM == 2 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+600)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
end
end
end
end
--if sim.partProperty(r,'type') == elem.DEFAULT_PT_WATR or sim.partProperty(r,'type') == elem.DEFAULT_PT_DSTW or sim.partProperty(r,'type') == elem.DEFAULT_PT_WTRV then
-- if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_POLO then
-- if transmuteRDM == 1 and math.random(1,10) == 1 then
-- sim.partProperty(r,'ctype', elem.TIMO_PT_TACT)
-- end
-- elseif sim.partProperty(r,'ctype') == elem.DEFAULT_PT_ISOZ then
-- sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
-- sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-7,7))
-- end
--end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_POLO then
--sim.partProperty(i,sim.FIELD_DCOLOUR, sim.partProperty(i,sim.FIELD_DCOLOUR)-3000)
if sim.partProperty(r,'tmp') == 0 then
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-13,13))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-13,13))
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-6,6))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-6,6))
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+1300)
sim.partProperty(r,'temp', sim.partProperty(r,'temp')+600)
sim.partProperty(r,'type', elem.TIMO_PT_PACT)
elseif sim.partProperty(r,'tmp') == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
elseif sim.partProperty(r,'tmp') == 2 then
local clocal = math.random(1,2)
if clocal == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
elseif clocal == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
end
elseif sim.partProperty(r,'tmp') > 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_CLST then
if math.random(1,62) == 1 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_GLOW then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-3, x+math.random(-1,1), y+math.random(-1,1), elem.DEFAULT_PT_NEUT)
sim.partCreate(-1, x+math.random(-1,1), y+math.random(-1,1), elem.TIMO_PT_ACT)
sim.partProperty(r,'vx', math.random(-2,2))
sim.partProperty(r,'vy', math.random(-2,2))
sim.partProperty(i,'temp', sim.partProperty(i,'temp')-200)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_DUST and sim.partProperty(r,'ctype') == elem.TIMO_PT_ACT then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
end
end
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_STNE)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_SAND)
elseif transmuteRDM == 4 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BCOL)
elseif transmuteRDM == 5 then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
elseif transmuteRDM == 6 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BREL then
sim.partProperty(i,sim.FIELD_DCOLOUR, sim.partProperty(i,sim.FIELD_DCOLOUR)+12)
if math.random(1,60) == 1 then
local colorTactBrellerd = math.random(1,5)
if colorTactBrellerd == 1 and sim.partProperty(r,'type') == elem.DEFAULT_PT_BREL then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+600)
elseif colorTactBrellerd == 2 and sim.partProperty(r,'type') == elem.DEFAULT_PT_BREL then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+100)
end
end
if math.random(1,230) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_STNE)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
elseif transmuteRDM == 4 then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
elseif transmuteRDM == 5 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
elseif transmuteRDM == 6 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_SAND then
if math.random(1,140) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_RAD)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_RAD)
elseif transmuteRDM == 3 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
sim.partProperty(r,'type', elem.DEFAULT_PT_CRMC)
end
elseif transmuteRDM == 4 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
elseif transmuteRDM == 5 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
elseif transmuteRDM == 6 then
local SANDTOR = math.random(1,3)
if SANDTOR == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
sim.partProperty(r,'vx', sim.partProperty(r,'vx')+math.random(-43,43))
sim.partProperty(r,'vy', sim.partProperty(r,'vy')+math.random(-43,43))
sim.partProperty(i,'vx', sim.partProperty(i,'vx')+math.random(-33,33))
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-33,33))
elseif SANDTOR == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_PACT)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+1300)
sim.partProperty(i,'vy', sim.partProperty(i,'vy')+math.random(-33,33))
elseif SANDTOR == 3 then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
if sim.partProperty(r,'type') == elem.DEFAULT_PT_IRON then
sim.partProperty(r,'type', elem.DEFAULT_PT_CRMC)
end
end
end
end
if sim.partProperty(r,'ctype') == elem.TIMO_PT_ACT and math.random(1,8) == 1 then
if sim.partProperty(r,'tmp2') == 0 then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.TIMO_PT_TACT)
sim.partProperty(r,'tmp2', 1)
sim.partProperty(r,'pavg0', 5) -- SET TO WEAKFORCE 5. pavg0 is weakforce. 0 = react, 5 = nonreact, other is custom
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_PLUT)
sim.partProperty(r,'tmp2', 1)
elseif transmuteRDM == 3 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_POLO)
sim.partProperty(r,'tmp2', 1)
sim.partProperty(r,'tmp', 0)
end
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_COAL and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_NONE then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_POLO)
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+6)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_BRMT then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+60)
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
end
if math.random(1,13) == 1 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_RBDM then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_BMTL then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_GOLD)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_RBDM)
sim.partProperty(r,'tmp', 5)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_IRON)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_RBDM)
sim.partProperty(r,'tmp', 5)
end
end
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_BRMT then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BRMT)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_RAD)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_RBDM)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LRBD then
sim.partProperty(r,'type', elem.TIMO_PT_TACT)
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_BMTL then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_IRON)
sim.partProperty(r,'tmp', 1)
elseif transmuteRDM == 2 then
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
end
if sim.partProperty(r,'ctype') == elem.DEFAULT_PT_BRMT then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BRMT)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.TIMO_PT_RADX)
sim.partProperty(r,'ctype', elem.DEFAULT_PT_LRBD)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_PHOT)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_STNE then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)-4)
if math.random(1,16) == 1 then
local colorTactStonerd = math.random(1,5)
if colorTactStonerd == 1 then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+12)
elseif colorTactStonerd == 2 then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+6)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_URAN then
if sim.partProperty(r,'tmp2') == 0 and math.random(1,140) then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
if math.random(1,32) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_LAVA)
sim.partProperty(r,'ctype', elem.TIMO_PT_PACT)
end
elseif transmuteRDM == 2 then
sim.partProperty(r,'type', elem.DEFAULT_PT_PLUT)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+300)
elseif transmuteRDM == 3 then
sim.partProperty(r,'tmp', sim.partProperty(r,'tmp')+1)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+400)
elseif transmuteRDM == 4 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
elseif transmuteRDM == 5 then
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+150)
elseif transmuteRDM == 6 then
sim.partProperty(r,'type', elem.DEFAULT_PT_BREL)
if math.random(1,3) == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
sim.partProperty(r,'pavg0', 5)
if math.random(1,10) == 1 then
sim.partProperty(i,'pavg0', 5)
end
end
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_PLUT then
if sim.partProperty(r,'tmp') == 0 then
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)-7)
if math.random(1,350) then
if transmuteRDM == 1 then
sim.partProperty(r,'type', elem.TIMO_PT_ACT)
if math.random(1,42) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_LAVA)
sim.partProperty(r,'ctype', elem.TIMO_PT_ACT)
sim.partProperty(r,'pavg0', 5)
end
elseif transmuteRDM == 2 then
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+600)
elseif transmuteRDM == 3 then
sim.partProperty(r,'tmp', 1)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+800)
elseif transmuteRDM > 3 then
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+350)
end
end
elseif sim.partProperty(r,'tmp') == 1 then
elseif sim.partProperty(r,'tmp') == 2 then
sim.partProperty(i,'temp', sim.partProperty(r,'temp')+200)
if math.random(1,120) == 1 then
sim.partProperty(r,'type', elem.DEFAULT_PT_URAN)
sim.partProperty(r,sim.FIELD_DCOLOUR, sim.partProperty(r,sim.FIELD_DCOLOUR)+3)
end
end
end
end --TRANSMUTEGENERALRATE END
if math.random(1,10) == 1 then --LAVATRANSMUTERATE
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_POLO then
if math.random(1,300) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.TIMO_PT_ACT)
sim.partProperty(r,'pavg0', 5) -- NONREACT ACT
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
elseif transmuteRDM == 3 then
sim.partProperty(r,'ctype', elem.TIMO_PT_RAD)
elseif transmuteRDM == 4 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_STNE)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_PLUT then
sim.partProperty(r,'ctype', elem.TIMO_PT_ACT)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_TACT then
sim.partProperty(r,'ctype', elem.TIMO_PT_PACT)
sim.partProperty(i,'temp', sim.partProperty(r,'temp')-350)
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_BRMT then
if math.random(1,300) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_METL)
elseif transmuteRDM == 3 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_IRON)
sim.partProperty(r,'tmp', 5)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_BRCK then
if math.random(1,300) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_GOLD)
sim.partProperty(r,'tmp', 5)
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_QRTZ)
elseif transmuteRDM == 3 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_POLO)
sim.partProperty(r,'tmp', 0)
sim.partProperty(r,'tmp2', 9)
elseif transmuteRDM == 4 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_STNE)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_CNCT then
if math.random(1,300) == 1 then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_POLO)
sim.partProperty(r,'tmp', 0)
sim.partProperty(r,'tmp2', 9)
end
end
end
if sim.partProperty(r,'type') == elem.DEFAULT_PT_LAVA and sim.partProperty(r,'ctype') == elem.DEFAULT_PT_SALT then
if math.random(1,300) == 1 then
if sim.partProperty(r,'tmp') == 0 then
if transmuteRDM == 1 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_WTRV) --oddity
elseif transmuteRDM == 2 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_TUNG)
elseif transmuteRDM == 3 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_BREL)
elseif transmuteRDM == 4 then
sim.partProperty(r,'ctype', elem.DEFAULT_PT_STNE)
end
end
end
end
end --LAVATRANSMUTERATE END
end
end
tpt.element_func(TACT,tact)
elem.property(tact, "Update",tactUpdate)
--- end transition nuclear metal 3
--- actinide solid neutpass
local LAMBDA = elements.allocate("TIMO", "LAMD")
elements.element(elements.DEFAULT_PT_IRON)
elem.property(elem.TIMO_PT_LAMD, "Name", "LAMD")
elem.property(elem.TIMO_PT_LAMD, "Colour", 0x555555)
elem.property(elem.TIMO_PT_LAMD, "Description", "Lambda-type allotrope.")
elem.property(elem.TIMO_PT_LAMD, "Properties", elem.TYPE_SOLID+elem.PROP_HOT_GLOW+elem.PROP_DEADLY+elem.PROP_RADIOACTIVE+elem.PROP_NEUTPASS)
elem.property(elem.TIMO_PT_LAMD, "Gravity", 0)
elem.property(elem.TIMO_PT_LAMD, "Advection", 0)
elem.property(elem.TIMO_PT_LAMD, "Diffusion", 0)
elem.property(elem.TIMO_PT_LAMD, "AirDrag", 0)
elem.property(elem.TIMO_PT_LAMD, "MenuSection", 9)
elem.property(elem.TIMO_PT_LAMD, "MenuVisible", 1)
elem.property(elem.TIMO_PT_LAMD, "AirLoss", 1)
elem.property(elem.TIMO_PT_LAMD, "Loss", 0)
elem.property(elem.TIMO_PT_LAMD, "Weight", 99)
elem.property(elem.TIMO_PT_LAMD, "Falldown", 0)
elem.property(elem.TIMO_PT_LAMD, "HeatConduct", 1)
elem.property(elem.TIMO_PT_LAMD, "HighTemperature", 6626.75)
elem.property(elem.TIMO_PT_LAMD, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
elem.property(elem.TIMO_PT_LAMD, "HighPressure", 63)
elem.property(elem.TIMO_PT_LAMD, "HighPressureTransition", elements.TIMO_PT_TACT)
sim.can_move(elem.DEFAULT_PT_ELEC, elem.TIMO_PT_LAMD, 2)
sim.can_move(elem.DEFAULT_PT_PHOT, elem.TIMO_PT_LAMD, 2)
sim.can_move(elem.DEFAULT_PT_NEUT, elem.TIMO_PT_LAMD, 2)
tpt.element_func(NU, tpt.element('LAMD'))
local function LambdaUpdate(i,x,y,s,n)
local mytemp = sim.partProperty(i,'temp')
local mypres = sim.pressure(x/4,y/4)
r = sim.partID(x+math.random(-1,1),y+math.random(-1,1))
nB = sim.partID(x+math.random(-2,2),y+math.random(-2,2))
if sim.partProperty(i,'temp') > 2200 then
end
if nB~=nil then
if sim.partProperty(nB,'type') == elem.DEFAULT_PT_URAN then
sim.partProperty(nB,'type', elem.DEFAULT_PT_PLUT)
end
end
if r~=nil then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_URAN then
sim.partProperty(r,'type', elem.DEFAULT_PT_POLO)
end
-- TACT DECAY
if math.random(1,3660) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+715)
if math.random(1,60) == 1 then
sim.partProperty(i,'tmp', math.random(1,2))
if transmuteRDM == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+975)
elseif transmuteRDM == 5 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+115)
elseif transmuteRDM == 6 then
local tlocal = math.random(1,3)
if tlocal == 1 then
sim.partProperty(i,'type', elem.DEFAULT_PT_PLUT)
sim.partProperty(r,'tmp', 2)
elseif tlocal == 2 then
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
elseif tlocal == 3 then
sim.partProperty(i,'type', elem.TIMO_PT_ACT)
end
end
end
end
-- TACT DECAY END
-- TACT NEUTREACT
if sim.partProperty(i,'life') == 0 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
sim.partProperty(i,'life', 1)
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+4000)
---sim.pressure(x/4,y/4, math.abs(mypres) + 14)
if math.random(1,60) == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
end
end
elseif sim.partProperty(i,'life') == 1 then
if sim.partProperty(r,'type') == elem.DEFAULT_PT_NEUT then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+math.random(2000,9000))
if math.random(1,15) == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+math.random(2000,9000))
sim.pressure(x/4,y/4, math.abs(mypres) + 24)
sim.partCreate(-3, x, y, elem.DEFAULT_PT_NEUT)
end
if transmuteRDM == 1 then
sim.partProperty(i,'temp', sim.partProperty(i,'temp')+7500)
sim.pressure(x/4,y/4, math.abs(mypres) + 16)
if math.random(1,30) == 1 then
sim.partProperty(i,'type', elem.TIMO_PT_PACT)
end
end
end
end
-- TACT NEUTREACT END
end
end
tpt.element_func(LAMD,LAMBDA)
elem.property(elem.TIMO_PT_LAMD, "Update",LambdaUpdate)
--- actinide solid end