Guest User

fuelmod 1.9

a guest
Jul 7th, 2015
271
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. colourRGB = {255,255,255}
  2. FuelMod = {["version"] = 1.9}
  3.  
  4. --petrol
  5. local antifrzz = elements.allocate("JWARD", "AFRZ")
  6. local petrolgas = elements.allocate("JWARD", "PTLV")
  7. local petrol = elements.allocate("JWARD", "PTRL")
  8. elements.element(elements.JWARD_PT_PTRL, elements.element(elements.DEFAULT_PT_GEL))
  9. elements.property(elements.JWARD_PT_PTRL, "Name", "PTRL")
  10. elements.property(elements.JWARD_PT_PTRL, "Description", "Petrol. Highly flammable liquid.")
  11. elements.property(elements.JWARD_PT_PTRL, "Colour", 0x0A4A5C)
  12. elements.property(elements.JWARD_PT_PTRL, "MenuSection", SC_LIQUID)
  13. elements.property(elements.JWARD_PT_PTRL, "Gravity", 0.6)
  14. elements.property(elements.JWARD_PT_PTRL, "Flammable", 0)
  15. elements.property(elements.JWARD_PT_PTRL, "Explosive", 0)
  16. elements.property(elements.JWARD_PT_PTRL, "Loss", 0.8)
  17. elements.property(elements.JWARD_PT_PTRL, "AirLoss", 0.94)
  18. elements.property(elements.JWARD_PT_PTRL, "AirDrag", 0.02)
  19. elements.property(elements.JWARD_PT_PTRL, "Advection", 0.8)
  20. elements.property(elements.JWARD_PT_PTRL, "Weight", 12)
  21. elements.property(elements.JWARD_PT_PTRL, "Diffusion", 0)
  22. elements.property(elements.JWARD_PT_PTRL, "Meltable", 0)
  23. elements.property(elements.JWARD_PT_PTRL, "Hardness", 0)
  24. elements.property(elements.JWARD_PT_PTRL, "Falldown", 2)
  25. elements.property(elements.JWARD_PT_PTRL, "Properties", TYPE_LIQUID)
  26. elements.property(elements.JWARD_PT_PTRL, "State", ST_LIQUID)
  27. elements.property(elements.JWARD_PT_PTRL, "Temperature", 295.15)
  28. elements.property(elements.JWARD_PT_PTRL, "HeatConduct", 78)
  29. elements.property(elements.JWARD_PT_PTRL, "HighTemperature", 333.15)
  30. elements.property(elements.JWARD_PT_PTRL, "HighTemperatureTransition", elements.JWARD_PT_PTLV)
  31. elements.property(elements.JWARD_PT_PTRL, "LowTemperature", 225.15)
  32. elements.property(elements.JWARD_PT_PTRL, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  33. function PTRL(i,x,y,s,n)
  34. reaction = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  35. cal = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  36.     if cal == tpt.element('acel') then
  37.         if reaction == kerosene then
  38.             sim.partChangeType(i, tpt.element('JETB'))
  39.         end
  40.     end
  41.     if reaction == tpt.element('sprk') or reaction == tpt.element('ligh') then
  42.         sim.partChangeType(i, tpt.element('fire'))
  43.     end
  44. end
  45. tpt.element_func(PTRL,petrol)
  46.  
  47. elements.element(elements.JWARD_PT_PTLV, elements.element(elements.DEFAULT_PT_HYGN))
  48. elements.property(elements.JWARD_PT_PTLV, "Name", "PTLV")
  49. elements.property(elements.JWARD_PT_PTLV, "Description", "petrol gas")
  50. elements.property(elements.JWARD_PT_PTLV, "Colour", 0x0A4A5C)
  51. elements.property(elements.JWARD_PT_PTLV, "MenuVisible", 0)
  52. elements.property(elements.JWARD_PT_PTLV, "Gravity", -0.02)
  53. elements.property(elements.JWARD_PT_PTLV, "Flammable", 500)
  54. elements.property(elements.JWARD_PT_PTLV, "Explosive", 1)
  55. elements.property(elements.JWARD_PT_PTLV, "Loss", 0.75)
  56. elements.property(elements.JWARD_PT_PTLV, "AirLoss", 0.97)
  57. elements.property(elements.JWARD_PT_PTLV, "AirDrag", 0.01)
  58. elements.property(elements.JWARD_PT_PTLV, "Advection", 1)
  59. elements.property(elements.JWARD_PT_PTLV, "Weight", 0)
  60. elements.property(elements.JWARD_PT_PTLV, "Diffusion", 0.7)
  61. elements.property(elements.JWARD_PT_PTLV, "Meltable", 0)
  62. elements.property(elements.JWARD_PT_PTLV, "Hardness", 0)
  63. elements.property(elements.JWARD_PT_PTLV, "Falldown", 0)
  64. elements.property(elements.JWARD_PT_PTLV, "Properties", TYPE_GAS)
  65. elements.property(elements.JWARD_PT_PTLV, "State", ST_GAS)
  66. elements.property(elements.JWARD_PT_PTLV, "Temperature", 343.15)
  67. elements.property(elements.JWARD_PT_PTLV, "HeatConduct", 80)
  68. elements.property(elements.JWARD_PT_PTLV, "LowTemperature", 333.14)
  69. elements.property(elements.JWARD_PT_PTLV, "LowTemperatureTransition", elements.JWARD_PT_PTRL)
  70. function PTLV(i,x,y,s,n)
  71. cal = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  72.     if cal == tpt.element('sprk') or cal == tpt.element('ligh') then
  73.         sim.partChangeType(i, tpt.element('fire'))
  74.     end
  75. end
  76. tpt.element_func(PTLV,petrolgas)
  77.  
  78. elements.element(elements.JWARD_PT_AFRZ, elements.element(elements.DEFAULT_PT_GEL))
  79. elements.property(elements.JWARD_PT_AFRZ, "Name", "AFRZ")
  80. elements.property(elements.JWARD_PT_AFRZ, "Description", "antifreeze, keeps your fuel nice and toasty. methnol")
  81. elements.property(elements.JWARD_PT_AFRZ, "Colour", 0x0C3F5B)
  82. elements.property(elements.JWARD_PT_AFRZ, "MenuSection", SC_LIQUID)
  83. elements.property(elements.JWARD_PT_AFRZ, "Gravity", 0.6)
  84. elements.property(elements.JWARD_PT_AFRZ, "Flammable", 65)
  85. elements.property(elements.JWARD_PT_AFRZ, "Explosive", 0)
  86. elements.property(elements.JWARD_PT_AFRZ, "Loss", 0.8)
  87. elements.property(elements.JWARD_PT_AFRZ, "AirLoss", 0.94)
  88. elements.property(elements.JWARD_PT_AFRZ, "AirDrag", 0.02)
  89. elements.property(elements.JWARD_PT_AFRZ, "Advection", 0.8)
  90. elements.property(elements.JWARD_PT_AFRZ, "Weight", 12)
  91. elements.property(elements.JWARD_PT_AFRZ, "Diffusion", 0)
  92. elements.property(elements.JWARD_PT_AFRZ, "Meltable", 0)
  93. elements.property(elements.JWARD_PT_AFRZ, "Hardness", 0)
  94. elements.property(elements.JWARD_PT_AFRZ, "Falldown", 2)
  95. elements.property(elements.JWARD_PT_AFRZ, "State", ST_LIQUID)
  96. elements.property(elements.JWARD_PT_AFRZ, "Temperature", 295.15)
  97. elements.property(elements.JWARD_PT_AFRZ, "HeatConduct", 78)
  98. elements.property(elements.JWARD_PT_AFRZ, "Properties", elem.TYPE_LIQUID+elem.PROP_DEADLY)
  99. function AFRZ(i,x,y,s,n)
  100.     warm = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  101.     warm2 = tpt.get_property("temp",x,y)
  102.     if warm == tpt.element('sprk') or warm == tpt.element('ligh') then
  103.         sim.partChangeType(i, tpt.element('fire'))
  104.     end
  105.     if warm == petrol and warm2 < 276 then
  106.         tpt.set_property('temp', 296 ,x, y)
  107.     end
  108.     if warm == tpt.el.desl.id and warm2 < 276 then
  109.         tpt.set_property('temp', 296 ,x, y)
  110.     end
  111.     if warm == BioDiesel and warm2 < 276 then
  112.         tpt.set_property('temp', 296 ,x, y)
  113.     end
  114.     if warm == jetfuel and warm2 < 276 then
  115.         tpt.set_property('temp', 296 ,x, y)
  116.     end
  117.     if warm == tpt.el.ice.id and warm2 < 276 then
  118.         tpt.set_property('temp', 296 ,x, y)
  119.     end
  120.     if warm == tpt.el.wtrv.id and warm2 > 1100 then
  121.         sim.partChangeType(i, tpt.element('coke'))
  122.     end
  123. end
  124. tpt.element_func(AFRZ, tpt.element('AFRZ'))
  125.  
  126. --diesel & bio diesel
  127. local Dieselgas = elements.allocate("JWARD", "DSLV")
  128. local potash_lye = elements.allocate("JWARD", "PLYE")
  129. local cooking_oil = elements.allocate("JWARD", "COIL")
  130. local BioDiesel = elements.allocate("JWARD", "BDSL")
  131.  
  132. elements.element(elements.JWARD_PT_DSLV, elements.element(elements.DEFAULT_PT_HYGN))
  133. elements.property(elements.JWARD_PT_DSLV, "Name", "DSLV")
  134. elements.property(elements.JWARD_PT_DSLV, "Description", "diesel gas")
  135. elements.property(elements.JWARD_PT_DSLV, "Colour", 0x440000)
  136. elements.property(elements.JWARD_PT_DSLV, "MenuVisible", 0)
  137. elements.property(elements.JWARD_PT_DSLV, "Gravity", -0.02)
  138. elements.property(elements.JWARD_PT_DSLV, "Flammable", 550)
  139. elements.property(elements.JWARD_PT_DSLV, "Explosive", 1)
  140. elements.property(elements.JWARD_PT_DSLV, "Loss", 0.75)
  141. elements.property(elements.JWARD_PT_DSLV, "AirLoss", 0.97)
  142. elements.property(elements.JWARD_PT_DSLV, "AirDrag", 0.01)
  143. elements.property(elements.JWARD_PT_DSLV, "Advection", 1)
  144. elements.property(elements.JWARD_PT_DSLV, "Weight", 0)
  145. elements.property(elements.JWARD_PT_DSLV, "Diffusion", 0.7)
  146. elements.property(elements.JWARD_PT_DSLV, "Meltable", 0)
  147. elements.property(elements.JWARD_PT_DSLV, "Hardness", 0)
  148. elements.property(elements.JWARD_PT_DSLV, "Falldown", 0)
  149. elements.property(elements.JWARD_PT_DSLV, "Properties", TYPE_GAS)
  150. elements.property(elements.JWARD_PT_DSLV, "State", ST_GAS)
  151. elements.property(elements.JWARD_PT_DSLV, "Temperature", 483.15)
  152. elements.property(elements.JWARD_PT_DSLV, "HeatConduct", 80)
  153. elements.property(elements.JWARD_PT_DSLV, "LowTemperature", 473.15)
  154. elements.property(elements.JWARD_PT_DSLV, "LowTemperatureTransition", elements.DEFAULT_PT_DESL)
  155. function DSLV(i,x,y,s,n)
  156. cal = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  157.     if cal == tpt.element('sprk') or cal == tpt.element('ligh') then
  158.         sim.partChangeType(i, tpt.element('fire'))
  159.     end
  160. end
  161. tpt.element_func(DSLV,Dieselgas)
  162.  
  163.  
  164. elements.element(elements.JWARD_PT_COIL, elements.element(elements.DEFAULT_PT_GEL))
  165. elements.property(elements.JWARD_PT_COIL, "Name", "COIL")
  166. elements.property(elements.JWARD_PT_COIL, "Description", "Cooking oil")
  167. elements.property(elements.JWARD_PT_COIL, "Colour", 0xA57214)
  168. elements.property(elements.JWARD_PT_COIL, "MenuSection", 7)
  169. elements.property(elements.JWARD_PT_COIL, "Gravity", 0.6)
  170. elements.property(elements.JWARD_PT_COIL, "Flammable", 1)
  171. elements.property(elements.JWARD_PT_COIL, "Explosive", 0)
  172. elements.property(elements.JWARD_PT_COIL, "Loss", 0.7)
  173. elements.property(elements.JWARD_PT_COIL, "AirLoss", 0.91)
  174. elements.property(elements.JWARD_PT_COIL, "AirDrag", 0.02)
  175. elements.property(elements.JWARD_PT_COIL, "Advection", 0.9)
  176. elements.property(elements.JWARD_PT_COIL, "Weight", 10)
  177. elements.property(elements.JWARD_PT_COIL, "Meltable", 0)
  178. elements.property(elements.JWARD_PT_COIL, "Hardness", 86)
  179. elements.property(elements.JWARD_PT_COIL, "Falldown", 2)
  180. elements.property(elements.JWARD_PT_COIL, "Properties", TYPE_LIQUID)
  181. elements.property(elements.JWARD_PT_COIL, "State", ST_LIQUID)
  182. elements.property(elements.JWARD_PT_COIL, "Temperature", 295.15)
  183. elements.property(elements.JWARD_PT_COIL, "HeatConduct", 100)
  184. function COIL(i,x,y,s,n)
  185.     cx = math.random(-3,3)
  186.     cy = math.random(-5,1)
  187.     reaction = tpt.get_property("temp",x,y)
  188.     bio = tpt.get_property("type",x + math.random(-2,2), y + math.random(-2,2))
  189.     bioo = tpt.get_property("type",x + math.random(-2,2), y + math.random(-2,2))
  190.     biooo = tpt.get_property("type",x + cy, y + cx)
  191.     local noncatalyst = tpt.get_property("life",x,y)
  192.     if reaction > 363.15 and biooo ~= true then
  193.         tpt.delete(x,y)
  194.         tpt.create(x + cx, y + cy, 'COIL')
  195.     end
  196.     if bio == potash_lye and bioo == antifrzz then
  197.         if cy == 1 then
  198.             sim.partChangeType(i, tpt.element('GLCR'))
  199.         else
  200.             sim.partChangeType(i, tpt.element('BDSL'))
  201.         end
  202.     end
  203.     if biooo == potash_lye and bioo == tpt.element('watr') and reaction > 290 and reaction < 330 then
  204.         sim.partChangeType(i, tpt.element('SOAP'))
  205.         tpt.delete(x + cx,y + cy)
  206.     end
  207. end
  208. tpt.element_func(COIL, tpt.element('COIL'))
  209.  
  210. elements.element(elements.JWARD_PT_BDSL, elements.element(elements.DEFAULT_PT_GEL))
  211. elements.property(elements.JWARD_PT_BDSL, "Name", "BDSL")
  212. elements.property(elements.JWARD_PT_BDSL, "Description", "Bio Diesel. Made from cooking oil.")
  213. elements.property(elements.JWARD_PT_BDSL, "Colour", 0x331000)
  214. elements.property(elements.JWARD_PT_BDSL, "MenuSection", SC_LIQUID)
  215. elements.property(elements.JWARD_PT_BDSL, "Gravity", 0.6)
  216. elements.property(elements.JWARD_PT_BDSL, "Flammable", 0)
  217. elements.property(elements.JWARD_PT_BDSL, "Explosive", 0)
  218. elements.property(elements.JWARD_PT_BDSL, "Loss", 0.8)
  219. elements.property(elements.JWARD_PT_BDSL, "AirLoss", 0.94)
  220. elements.property(elements.JWARD_PT_BDSL, "AirDrag", 0.02)
  221. elements.property(elements.JWARD_PT_BDSL, "Advection", 0.8)
  222. elements.property(elements.JWARD_PT_BDSL, "Weight", 12)
  223. elements.property(elements.JWARD_PT_BDSL, "Diffusion", 0)
  224. elements.property(elements.JWARD_PT_BDSL, "Meltable", 0)
  225. elements.property(elements.JWARD_PT_BDSL, "Hardness", 0)
  226. elements.property(elements.JWARD_PT_BDSL, "Falldown", 2)
  227. elements.property(elements.JWARD_PT_BDSL, "Properties", TYPE_LIQUID)
  228. elements.property(elements.JWARD_PT_BDSL, "State", ST_LIQUID)
  229. elements.property(elements.JWARD_PT_BDSL, "Temperature", 295.15)
  230. elements.property(elements.JWARD_PT_BDSL, "HeatConduct", 99)
  231. elements.property(elements.JWARD_PT_BDSL, "HighTemperature", 403.15)
  232. elements.property(elements.JWARD_PT_BDSL, "HighTemperatureTransition", elements.JWARD_PT_DSLV)
  233. function BDSL(i,x,y,s,n)
  234.     findcoil = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  235.     otherfind = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  236.     if findcoil == cooking_oil then
  237.         tpt.set_property('life', 2 ,x, y)
  238.     end
  239.     if findcoil == tpt.el.acel.id then
  240.         if otherfind == tpt.el.desl.id then
  241.         sim.partChangeType(i, tpt.element('desl'))
  242.         end
  243.     end
  244.     if otherfind == tpt.element('sprk') or otherfind == tpt.element('ligh') then
  245.         sim.partChangeType(i, tpt.element('fire'))
  246.     end
  247. end
  248. tpt.element_func(BDSL, tpt.element('BDSL'))
  249.  
  250. function desl(i,x,y,s,n)
  251.     crack = math.random(0,1)
  252.     otherfind = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  253.     if buttonable == 1 and otherfind == tpt.el.brel.id then
  254.         if crack == 0 then
  255.             sim.partChangeType(i, petrol)
  256.         end
  257.         if crack == 1 then
  258.             sim.partChangeType(i, tpt.element('PRPN'))
  259.         end
  260.     end
  261. end
  262. tpt.element_func(desl,tpt.el.desl.id)
  263.  
  264. elements.element(elements.JWARD_PT_PLYE, elements.element(elements.DEFAULT_PT_BCOL))
  265. elements.property(elements.JWARD_PT_PLYE, "Name", "PLYE")
  266. elements.property(elements.JWARD_PT_PLYE, "Description", "potash lye")
  267. elements.property(elements.JWARD_PT_PLYE, "Colour", 0xCCCCCC)
  268. elements.property(elements.JWARD_PT_PLYE, "MenuSection", 8)
  269. elements.property(elements.JWARD_PT_PLYE, "Gravity", .35)
  270. elements.property(elements.JWARD_PT_PLYE, "Flammable", 0)
  271. elements.property(elements.JWARD_PT_PLYE, "Explosive", 0)
  272. elements.property(elements.JWARD_PT_PLYE, "Loss", 0.15)
  273. elements.property(elements.JWARD_PT_PLYE, "AirLoss", 0.96)
  274. elements.property(elements.JWARD_PT_PLYE, "AirDrag", 0.03)
  275. elements.property(elements.JWARD_PT_PLYE, "Advection", 0.4)
  276. elements.property(elements.JWARD_PT_PLYE, "Weight", 60)
  277. elements.property(elements.JWARD_PT_PLYE, "Diffusion", 0)
  278. elements.property(elements.JWARD_PT_PLYE, "Falldown", 1)
  279. elements.property(elements.JWARD_PT_PLYE, "Hardness", 0)
  280. elements.property(elements.JWARD_PT_PLYE, "HeatConduct", 62)
  281. elements.property(elements.JWARD_PT_PLYE, "Properties", elem.PROP_DEADLY)
  282. elements.property(elements.JWARD_PT_PLYE, "HighTemperature", 679.15)
  283. elements.property(elements.JWARD_PT_PLYE, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
  284. function PLYE(i,x,y,s,n)
  285.     cy = math.random(-1,1)
  286.     cx = math.random(-1,1)
  287.     reaction = tpt.get_property("type",x+cx,y+cy)
  288.     if reaction == tpt.el.acid.id then
  289.         if cy == 1 then
  290.             sim.partChangeType(i, tpt.element('hygn'))
  291.         else
  292.             sim.partChangeType(i, tpt.element('SLTW'))
  293.         end
  294.     end
  295. end
  296. tpt.element_func(PLYE, tpt.element('PLYE'))
  297.  
  298. function ACIDBASE(i,x,y,s,n)
  299.     cy = math.random(-1,1)
  300.     cx = math.random(-1,1)
  301.     reaction = tpt.get_property("type",x+cx,y+cy)
  302.     if reaction == tpt.element('PLYE') then
  303.         if cy == 1 then
  304.             sim.partChangeType(i, tpt.element('hygn'))
  305.         else
  306.             sim.partChangeType(i, tpt.element('SLTW'))
  307.         end
  308.     end
  309.     if buttonable == 0 then
  310.         if reaction == tpt.element('C4') or reaction == tpt.element('NITR') or reaction == tpt.element('GUN') or reaction == tpt.element('RBDM') or reaction == tpt.element('LRBD') then
  311.             sim.partChangeType(i, tpt.element('fire'))
  312.         end
  313.         if reaction == tpt.element('WTRV') then
  314.             sim.partChangeType(i, tpt.element('CAUS'))
  315.         end
  316.     else
  317.     if reaction == tpt.element('GLCR') then
  318.         sim.partChangeType(i, tpt.element('NITR'))
  319.     end
  320.     end
  321. end
  322. tpt.element_func(ACIDBASE, tpt.element('acid'), 1)
  323.  
  324. --o0o NITROGEN o0o--
  325. local nitrogen = elements.allocate("JWARD", "N2")
  326. local Diazane = elements.allocate("JWARD", "N2H4")
  327. local DinitrogenTetroxide = elements.allocate("JWARD", "N2O4")
  328. local nitrous = elements.allocate("JWARD", "N2O")
  329. local need4speed = elements.allocate("JWARD", "LN2O")
  330. local anfoness = elements.allocate("JWARD", "ANFO")
  331. local liquidTNT = elements.allocate("JWARD", "LTNT")
  332. elements.element(elements.JWARD_PT_LN2O, elements.element(elements.DEFAULT_PT_GEL))
  333. elements.property(elements.JWARD_PT_LN2O, "Name", "LN2O")
  334. elements.property(elements.JWARD_PT_LN2O, "Description", "Liquid Nitrous Oxide. Burns very quickly and very hot.")
  335. elements.property(elements.JWARD_PT_LN2O, "Colour", 0x33C1F5)
  336. elements.property(elements.JWARD_PT_LN2O, "MenuSection", 7)
  337. elements.property(elements.JWARD_PT_LN2O, "Gravity", 0.8)
  338. elements.property(elements.JWARD_PT_LN2O, "Flammable", 6000)
  339. elements.property(elements.JWARD_PT_LN2O, "Explosive", 0)
  340. elements.property(elements.JWARD_PT_LN2O, "Loss", 0.5)
  341. elements.property(elements.JWARD_PT_LN2O, "AirLoss", 0.94)
  342. elements.property(elements.JWARD_PT_LN2O, "AirDrag", 0.03)
  343. elements.property(elements.JWARD_PT_LN2O, "Advection", 0.7)
  344. elements.property(elements.JWARD_PT_LN2O, "Weight", 43)
  345. elements.property(elements.JWARD_PT_LN2O, "Diffusion", 0)
  346. elements.property(elements.JWARD_PT_LN2O, "Meltable", 0)
  347. elements.property(elements.JWARD_PT_LN2O, "Hardness", 0)
  348. elements.property(elements.JWARD_PT_LN2O, "Falldown", 2)
  349. elements.property(elements.JWARD_PT_LN2O, "Properties", TYPE_LIQUID)
  350. elements.property(elements.JWARD_PT_LN2O, "State", ST_LIQUID)
  351. elements.property(elements.JWARD_PT_LN2O, "Temperature", 174)
  352. elements.property(elements.JWARD_PT_LN2O, "HeatConduct", 58)
  353. elements.property(elements.JWARD_PT_LN2O, "HighTemperature", 185)
  354. elements.property(elements.JWARD_PT_LN2O, "HighTemperatureTransition", elements.JWARD_PT_N2O)
  355. elements.property(elements.JWARD_PT_LN2O, "LowTemperature", 160.15)
  356. elements.property(elements.JWARD_PT_LN2O, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  357.  
  358. elements.element(elements.JWARD_PT_N2O, elements.element(elements.DEFAULT_PT_CO2))
  359. elements.property(elements.JWARD_PT_N2O, "Name", "N2O")
  360. elements.property(elements.JWARD_PT_N2O, "Description", "Nitrous Oxide. Highly flammable RACE CAR oxidizer!!!.")
  361. elements.property(elements.JWARD_PT_N2O, "Colour", 0x43DAFF)
  362. elements.property(elements.JWARD_PT_N2O, "MenuSection", 6)
  363. elements.property(elements.JWARD_PT_N2O, "Gravity", 0)
  364. elements.property(elements.JWARD_PT_N2O, "Flammable", 5000)
  365. elements.property(elements.JWARD_PT_N2O, "Explosive", 0)
  366. elements.property(elements.JWARD_PT_N2O, "Loss", 0.7)
  367. elements.property(elements.JWARD_PT_N2O, "AirLoss", 0.91)
  368. elements.property(elements.JWARD_PT_N2O, "AirDrag", 0.02)
  369. elements.property(elements.JWARD_PT_N2O, "Advection", 0.9)
  370. elements.property(elements.JWARD_PT_N2O, "Weight", 0)
  371. elements.property(elements.JWARD_PT_N2O, "Diffusion", 1.5)
  372. elements.property(elements.JWARD_PT_N2O, "Meltable", 0)
  373. elements.property(elements.JWARD_PT_N2O, "Hardness", 0)
  374. elements.property(elements.JWARD_PT_N2O, "Falldown", 0)
  375. elements.property(elements.JWARD_PT_N2O, "Properties", TYPE_GAS)
  376. elements.property(elements.JWARD_PT_N2O, "State", ST_GAS)
  377. elements.property(elements.JWARD_PT_N2O, "Temperature", 295.15)
  378. elements.property(elements.JWARD_PT_N2O, "HeatConduct", 80)
  379. elements.property(elements.JWARD_PT_N2O, "LowTemperature", 185.67)
  380. elements.property(elements.JWARD_PT_N2O, "LowTemperatureTransition", elements.JWARD_PT_LN2O)
  381. function N2O(i,x,y,s,n)
  382.     reaction = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  383.     ol = math.random(-1,1)
  384.     if reaction == tpt.el.fire.id or reaction == tpt.el.plsm.id then
  385.         if ol == 0 then
  386.             sim.partChangeType(i, tpt.element('N2'))
  387.         end
  388.         if ol == -1 then
  389.             sim.partChangeType(i, tpt.element('thdr'))
  390.         end
  391.         if ol == 1 then
  392.             sim.partChangeType(i, tpt.element('plsm'))
  393.         end
  394.     end
  395. end
  396. tpt.element_func(N2O,nitrous)
  397.  
  398. elements.element(elements.JWARD_PT_N2O4, elements.element(elements.DEFAULT_PT_GEL))
  399. elements.property(elements.JWARD_PT_N2O4, "Name", "N2O4")
  400. elements.property(elements.JWARD_PT_N2O4, "Description", "Dinitrogen Tetroxide rocket oxidizer")
  401. elements.property(elements.JWARD_PT_N2O4, "Colour", 0x30CEC6)
  402. elements.property(elements.JWARD_PT_N2O4, "MenuSection", 5)
  403. elements.property(elements.JWARD_PT_N2O4, "Gravity", 0.8)
  404. elements.property(elements.JWARD_PT_N2O4, "Flammable", 30)
  405. elements.property(elements.JWARD_PT_N2O4, "Explosive", 0)
  406. elements.property(elements.JWARD_PT_N2O4, "Loss", 0.7)
  407. elements.property(elements.JWARD_PT_N2O4, "AirLoss", 0.91)
  408. elements.property(elements.JWARD_PT_N2O4, "AirDrag", 0.03)
  409. elements.property(elements.JWARD_PT_N2O4, "Advection", 0.6)
  410. elements.property(elements.JWARD_PT_N2O4, "Weight", 46)
  411. elements.property(elements.JWARD_PT_N2O4, "Diffusion", 1.5)
  412. elements.property(elements.JWARD_PT_N2O4, "Meltable", 0)
  413. elements.property(elements.JWARD_PT_N2O4, "Hardness", 0)
  414. elements.property(elements.JWARD_PT_N2O4, "Falldown", 2)
  415. elements.property(elements.JWARD_PT_N2O4, "Properties", TYPE_LIQUID)
  416. elements.property(elements.JWARD_PT_N2O4, "State", ST_LIQUID)
  417. elements.property(elements.JWARD_PT_N2O4, "Temperature", 295.15)
  418. elements.property(elements.JWARD_PT_N2O4, "HeatConduct", 78)
  419. elements.property(elements.JWARD_PT_N2O4, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  420. elements.property(elements.JWARD_PT_N2O4, "LowTemperature", 261.9)
  421. function N2O4(i,x,y,s,n)
  422.     ol = math.random(-1,1)
  423.     rocket = tpt.get_property("type",x+math.random(-2,2),y+math.random(-2,2))
  424.     if rocket == Diazane or rocket == tpt.element('plsm') or rocket == tpt.element('fire') or rocket == tpt.element('thdr') then
  425.         if ol == -1 then
  426.             sim.partChangeType(i, tpt.element('plsm'))
  427.         end
  428.         if ol == 0 then
  429.             sim.partChangeType(i, tpt.element('thdr'))
  430.         end
  431.         if ol == 1 then
  432.             sim.partChangeType(i, tpt.element('n2'))
  433.         end
  434.     end
  435. end
  436. tpt.element_func(N2O4,DinitrogenTetroxide)
  437.  
  438. elements.element(elements.JWARD_PT_LTNT, elements.element(elements.DEFAULT_PT_GEL))
  439. elements.property(elements.JWARD_PT_LTNT, "Name", "LTNT")
  440. elements.property(elements.JWARD_PT_LTNT, "Description", "liquid TNT")
  441. elements.property(elements.JWARD_PT_LTNT, "Colour", 0xBF605A)
  442. elements.property(elements.JWARD_PT_LTNT, "MenuSection", 5)
  443. elements.property(elements.JWARD_PT_LTNT, "Gravity", 1)
  444. elements.property(elements.JWARD_PT_LTNT, "Flammable", 20)
  445. elements.property(elements.JWARD_PT_LTNT, "Explosive", 0)
  446. elements.property(elements.JWARD_PT_LTNT, "Loss", 0.7)
  447. elements.property(elements.JWARD_PT_LTNT, "AirLoss", 0.91)
  448. elements.property(elements.JWARD_PT_LTNT, "AirDrag", 0.03)
  449. elements.property(elements.JWARD_PT_LTNT, "Advection", 0.8)
  450. elements.property(elements.JWARD_PT_LTNT, "Weight", 46)
  451. elements.property(elements.JWARD_PT_LTNT, "Diffusion", 0)
  452. elements.property(elements.JWARD_PT_LTNT, "Meltable", 0)
  453. elements.property(elements.JWARD_PT_LTNT, "Hardness", 0)
  454. elements.property(elements.JWARD_PT_LTNT, "Falldown", 2)
  455. elements.property(elements.JWARD_PT_LTNT, "Properties", TYPE_LIQUID)
  456. elements.property(elements.JWARD_PT_LTNT, "State", ST_LIQUID)
  457. elements.property(elements.JWARD_PT_LTNT, "Temperature", 363.25)
  458. elements.property(elements.JWARD_PT_LTNT, "HeatConduct", 83)
  459. elements.property(elements.JWARD_PT_LTNT, "LowTemperatureTransition", elements.DEFAULT_PT_TNT)
  460. elements.property(elements.JWARD_PT_LTNT, "LowTemperature", 353.25)
  461. function LTNT(i,x,y,s,n)
  462.     cy = math.random(-1,1)
  463.     cx = math.random(-1,1)
  464.     ol = math.random(-1,1)
  465.     reaction = tpt.get_property("type",x+cx,y+cy)
  466.     atemp = tpt.get_property("temp",x,y)
  467.     if reaction == tpt.el.fire.id or reaction == tpt.el.embr.id or reaction == tpt.el.thdr.id or reaction == tpt.el.sprk.id then
  468.         if ol == 1 then
  469.             sim.partChangeType(i, tpt.element('coal'))
  470.         end
  471.         if ol == 0 then
  472.             sim.partChangeType(i, tpt.element('coal'))
  473.         end
  474.         if ol == -1 then
  475.             sim.partChangeType(i, tpt.element('thdr'))
  476.         end
  477.     end
  478.     if atemp > 513.15 then
  479.         sim.partChangeType(i, tpt.element('coal'))
  480.     end
  481. end
  482. tpt.element_func(LTNT, tpt.element('LTNT'))
  483.  
  484.  
  485. elements.element(elements.JWARD_PT_N2H4, elements.element(elements.DEFAULT_PT_GEL))
  486. elements.property(elements.JWARD_PT_N2H4, "Name", "N2H4")
  487. elements.property(elements.JWARD_PT_N2H4, "Description", "Hydrazine rocket fuel")
  488. elements.property(elements.JWARD_PT_N2H4, "Colour", 0xB6F064)
  489. elements.property(elements.JWARD_PT_N2H4, "MenuSection", 5)
  490. elements.property(elements.JWARD_PT_N2H4, "Gravity", 1)
  491. elements.property(elements.JWARD_PT_N2H4, "Flammable", 1)
  492. elements.property(elements.JWARD_PT_N2H4, "Explosive", 1)
  493. elements.property(elements.JWARD_PT_N2H4, "Loss", 0.7)
  494. elements.property(elements.JWARD_PT_N2H4, "AirLoss", 0.91)
  495. elements.property(elements.JWARD_PT_N2H4, "AirDrag", 0.03)
  496. elements.property(elements.JWARD_PT_N2H4, "Advection", 0.8)
  497. elements.property(elements.JWARD_PT_N2H4, "Weight", 46)
  498. elements.property(elements.JWARD_PT_N2H4, "Diffusion", 1.5)
  499. elements.property(elements.JWARD_PT_N2H4, "Meltable", 0)
  500. elements.property(elements.JWARD_PT_N2H4, "Hardness", 0)
  501. elements.property(elements.JWARD_PT_N2H4, "Falldown", 2)
  502. elements.property(elements.JWARD_PT_N2H4, "Properties", TYPE_LIQUID)
  503. elements.property(elements.JWARD_PT_N2H4, "State", ST_LIQUID)
  504. elements.property(elements.JWARD_PT_N2H4, "Temperature", 295.15)
  505. elements.property(elements.JWARD_PT_N2H4, "HeatConduct", 83)
  506. elements.property(elements.JWARD_PT_N2H4, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  507. elements.property(elements.JWARD_PT_N2H4, "LowTemperature", 275.15)
  508. N2H4Update = function(i, x, y, s, n)
  509.     local randomi = math.random(-1,1)
  510.     local clife = tpt.get_property('life', x, y)
  511.     if clife > 1 then
  512.         for cx = -1, 1, 2 do
  513.             for cy = -1, 1, 2 do
  514.                 if randomi == 1 then
  515.                     tpt.create(x + cx, y + cy, 'fire')
  516.                 end
  517.                 if randomi == 0 then
  518.                     tpt.create(x + cx, y + cy, 'N2')
  519.                 end
  520.                 if randomi == -1 then
  521.                     tpt.create(x + cx, y + cy, 'HYGN')
  522.                 end
  523.                 tpt.set_property('temp', 3000, x, y)
  524.             end
  525.         end
  526.         tpt.set_property('life', clife - 1, x, y)
  527.     elseif clife == 1 then
  528.         tpt.set_property('type', 0, x, y)
  529.     elseif s > 0 then
  530.         for cx = -1, 1, 2 do
  531.             for cy = -1, 1, 2 do
  532.                 if tpt.get_property('type', x + cx, y + cy) == 4 or tpt.get_property('type', x + cx, y + cy) == 49 then
  533.                     tpt.set_property('life', 500, x, y)
  534.                     return true
  535.                 end
  536.             end
  537.         end
  538.     end
  539. end
  540. tpt.element_func(N2H4Update, tpt.element('N2H4'))
  541.  
  542. elements.element(elements.JWARD_PT_N2, elements.element(elements.DEFAULT_PT_CO2))
  543. elements.property(elements.JWARD_PT_N2, "Name", "N2")
  544. elements.property(elements.JWARD_PT_N2, "Description", "Nitrogen Gas.")
  545. elements.property(elements.JWARD_PT_N2, "Colour", 0x5E52FF)
  546. elements.property(elements.JWARD_PT_N2, "MenuSection", SC_GAS)
  547. elements.property(elements.JWARD_PT_N2, "Gravity", 0)
  548. elements.property(elements.JWARD_PT_N2, "Flammable", 0)
  549. elements.property(elements.JWARD_PT_N2, "Explosive", 1)
  550. elements.property(elements.JWARD_PT_N2, "Loss", 0.3)
  551. elements.property(elements.JWARD_PT_N2, "AirLoss", 0.99)
  552. elements.property(elements.JWARD_PT_N2, "AirDrag", 0.01)
  553. elements.property(elements.JWARD_PT_N2, "Advection", 2.0)
  554. elements.property(elements.JWARD_PT_N2, "Weight", 0)
  555. elements.property(elements.JWARD_PT_N2, "Diffusion", 2.75)
  556. elements.property(elements.JWARD_PT_N2, "State", ST_GAS)
  557. elements.property(elements.JWARD_PT_N2, "Properties", elem.TYPE_GAS)
  558. elements.property(elements.JWARD_PT_N2, "LowTemperatureTransition", elements.DEFAULT_PT_LN2)
  559. elements.property(elements.JWARD_PT_N2, "LowTemperature", 76)
  560. elements.property(elements.JWARD_PT_N2, "HeatConduct", 80)
  561. function N2(i,x,y,s,n)
  562.     calstmp = tpt.get_property("tmp2",x,y)
  563.     if calstmp == 1 then
  564.         sim.partChangeType(i, tpt.element('N2O'))
  565.     end
  566.     if tpt.get_property("tmp", i) == 0 then
  567.         tpt.set_property("tmp", 1, i)
  568.     end
  569. end
  570. tpt.element_func(N2, tpt.element('N2'))
  571.  
  572. function LN2(i,x,y,s,nt)
  573. if tpt.get_property("tmp", i) == 1 then
  574. if tpt.get_property("temp", i) >= 77 then
  575. tpt.set_property("type","N2",i)
  576. end
  577. end
  578. if tpt.get_property("tmp", i) == 0 then
  579. if tpt.get_property("temp", i) >= 77 then
  580. tpt.set_property("type","none",i)
  581. end
  582. end
  583. end
  584. tpt.element_func(LN2, tpt.element('ln2'))
  585.  
  586. function HYGN(i,x,y,s,n)
  587.     calstmp = tpt.get_property("tmp2",i)
  588.     if calstmp == 1 then
  589.         sim.partChangeType(i, tpt.element('DSTW'))
  590.     end
  591. end
  592. tpt.element_func(HYGN, tpt.element('HYGN'))
  593.  
  594. elements.element(elements.JWARD_PT_ANFO, elements.element(elements.DEFAULT_PT_BCOL))
  595. elements.property(elements.JWARD_PT_ANFO, "Name", "ANFO")
  596. elements.property(elements.JWARD_PT_ANFO, "Description", "anfo explosive")
  597. elements.property(elements.JWARD_PT_ANFO, "Colour", 0xFFCECA)
  598. elements.property(elements.JWARD_PT_ANFO, "MenuSection", 5)
  599. elements.property(elements.JWARD_PT_ANFO, "Gravity", 0.54)
  600. elements.property(elements.JWARD_PT_ANFO, "Flammable", 0)
  601. elements.property(elements.JWARD_PT_ANFO, "Explosive", 0)
  602. elements.property(elements.JWARD_PT_ANFO, "Loss", 0)
  603. elements.property(elements.JWARD_PT_ANFO, "AirLoss", 0.96)
  604. elements.property(elements.JWARD_PT_ANFO, "AirDrag", 0.03)
  605. elements.property(elements.JWARD_PT_ANFO, "Advection", 0)
  606. elements.property(elements.JWARD_PT_ANFO, "Weight", 75)
  607. elements.property(elements.JWARD_PT_ANFO, "Diffusion", 0)
  608. elements.property(elements.JWARD_PT_ANFO, "Falldown", 1)
  609. elements.property(elements.JWARD_PT_ANFO, "Hardness", 0)
  610. elements.property(elements.JWARD_PT_ANFO, "HeatConduct", 62)
  611. elements.property(elements.JWARD_PT_ANFO, "Properties", elem.TYPE_PART+elem.PROP_DEADLY)
  612. elements.property(elements.JWARD_PT_ANFO, "State", ST_SOLID)
  613. function ANFO(i,x,y,s,n)
  614.     cy = math.random(-1,1)
  615.     cx = math.random(-1,1)
  616.     ol = math.random(0,1)
  617.     reaction = tpt.get_property("type",x+cx,y+cy)
  618.     atemp = tpt.get_property("temp",x,y)
  619.     calstmp = tpt.get_property("tmp2",x,y)
  620.     if reaction == tpt.el.acid.id then
  621.         if ol == 1 then
  622.             sim.partChangeType(i, tpt.element('salt'))
  623.         else
  624.             sim.partChangeType(i, tpt.element('acid'))
  625.         end
  626.     end
  627.     if reaction == tpt.el.fire.id then
  628.         if cx == 1 then
  629.             sim.partChangeType(i, tpt.element('thdr'))
  630.         end
  631.         if cx == 0 then
  632.             if ol == 1 then
  633.                 sim.partChangeType(i, tpt.element('hygn'))
  634.             else
  635.                 sim.partChangeType(i, tpt.element('oxyg'))
  636.             end
  637.             if cx == -1 then
  638.                 sim.partChangeType(i, tpt.element('N2O'))
  639.             end
  640.         end
  641.     end
  642.     if atemp > 483.15 then
  643.         if ol == 1 then
  644.             sim.partChangeType(i, tpt.element('wtrv'))
  645.         else
  646.             sim.partChangeType(i, tpt.element('N2O'))
  647.         end
  648.     end
  649.     if calstmp == 1 then
  650.         sim.partChangeType(i, tpt.element('n2o4'))
  651.     end
  652. end
  653. tpt.element_func(ANFO, tpt.element('ANFO'))
  654.  
  655. --extra
  656. local solidhydrogen = elements.allocate("JWARD", "SHYG")
  657. local liquidhydrogen = elements.allocate("JWARD", "LHYG")
  658. local catalyst = elements.allocate("JWARD", "CALS")
  659. local propane = elements.allocate("JWARD", "PRPN")
  660. local Glycerol = elements.allocate("JWARD", "GLCR")
  661.  
  662. elements.element(elements.JWARD_PT_SHYG, elements.element(elements.DEFAULT_PT_DMND))
  663. elements.property(elements.JWARD_PT_SHYG, "Colour", 0x7395FE)
  664. elements.property(elements.JWARD_PT_SHYG, "Name", "SHYG")
  665. elements.property(elements.JWARD_PT_SHYG, "Description", "solid hydrogen")
  666. elements.property(elements.JWARD_PT_SHYG, "HeatConduct", 83)
  667. elements.property(elements.JWARD_PT_SHYG, "Flammable", 0)
  668. elements.property(elements.JWARD_PT_SHYG, "Temperature", 10.15)
  669. elements.property(elements.JWARD_PT_SHYG, "HighTemperature", 13.15)
  670. elements.property(elements.JWARD_PT_SHYG, "HighTemperatureTransition", elements.JWARD_PT_LHYG)
  671. elements.property(elements.JWARD_PT_SHYG, "MenuSection", 9)
  672.  
  673. elements.element(elements.JWARD_PT_LHYG, elements.element(elements.DEFAULT_PT_GEL))
  674. elements.property(elements.JWARD_PT_LHYG, "Colour", 0x5070FF)
  675. elements.property(elements.JWARD_PT_LHYG, "Name", "LHYG")
  676. elements.property(elements.JWARD_PT_LHYG, "Description", "liquid hydrogen")
  677. elements.property(elements.JWARD_PT_LHYG, "HeatConduct", 83)
  678. elements.property(elements.JWARD_PT_LHYG, "Flammable", 2)
  679. elements.property(elements.JWARD_PT_LHYG, "Temperature", 15.15)
  680. elements.property(elements.JWARD_PT_LHYG, "HighTemperature", 20.15)
  681. elements.property(elements.JWARD_PT_LHYG, "HighTemperatureTransition", elements.DEFAULT_PT_HYGN)
  682. elements.property(elements.JWARD_PT_LHYG, "LowTemperature", 13.15)
  683. elements.property(elements.JWARD_PT_LHYG, "LowTemperatureTransition", elements.JWARD_PT_SHYG)
  684.  
  685. elements.element(elements.JWARD_PT_CALS, elements.element(elements.DEFAULT_PT_DMND))
  686. elements.property(elements.JWARD_PT_CALS, "Colour", 0x90965F)
  687. elements.property(elements.JWARD_PT_CALS, "Name", "CALS")
  688. elements.property(elements.JWARD_PT_CALS, "Description", "catalyst, used to make multi element machines")
  689. elements.property(elements.JWARD_PT_CALS, "HeatConduct", 0)
  690. function CALS(i,x,y,s,n)
  691.     calsd = tpt.get_property("type",x,y+1)
  692.     calsu = tpt.get_property("type",x,y-1)
  693.     calsr = tpt.get_property("type",x+1,y)
  694.     calsl = tpt.get_property("type",x-1,y)
  695.     calsdr = tpt.get_property("type",x+1,y+1)
  696.     calsdl = tpt.get_property("type",x-1,y+1)
  697.     calsur = tpt.get_property("type",x+1,y-1)
  698.     calsul = tpt.get_property("type",x-1,y-1)
  699.     if calsu == tpt.el.gold.id and calsd == tpt.el.gold.id then
  700.         tpt.set_property('tmp2', 1, x+math.random(-1,1),y+math.random(-1,1))
  701.     end
  702.     if calsdr == tpt.el.metl.id and calsdl == tpt.el.metl.id and calsur == tpt.el.metl.id and calsul == tpt.el.metl.id then
  703.         tpt.set_property('tmp2', 2, x+math.random(-2,2),y+math.random(-2,2))
  704.     end
  705.     if calsu == tpt.el.glas.id and calsdr == tpt.el.ttan.id and calsdl == tpt.el.ttan.id then
  706.         tpt.set_property('ctype', tpt.element('ptrl'), x+math.random(-2,2),y+math.random(-2,2))
  707.     end
  708.     if calsu == tpt.el.glas.id and calsd == tpt.el.glas.id then
  709.         tpt.set_property('tmp2', 1, x+math.random(-2,2),y+math.random(-2,2))
  710.     end
  711. end
  712. tpt.element_func(CALS, tpt.element('CALS'))
  713.  
  714. elements.element(elements.JWARD_PT_GLCR, elements.element(elements.DEFAULT_PT_BCOL))
  715. elements.property(elements.JWARD_PT_GLCR, "Name", "GLCR")
  716. elements.property(elements.JWARD_PT_GLCR, "Description", "Glycerol, mix with acid to make nitr")
  717. elements.property(elements.JWARD_PT_GLCR, "Colour", 0xE1E1E1)
  718. elements.property(elements.JWARD_PT_GLCR, "MenuSection", 7)
  719. elements.property(elements.JWARD_PT_GLCR, "Gravity", 0.94)
  720. elements.property(elements.JWARD_PT_GLCR, "Flammable", 0)
  721. elements.property(elements.JWARD_PT_GLCR, "Explosive", 0)
  722. elements.property(elements.JWARD_PT_GLCR, "Loss", 0)
  723. elements.property(elements.JWARD_PT_GLCR, "AirLoss", 0.96)
  724. elements.property(elements.JWARD_PT_GLCR, "AirDrag", 0.04)
  725. elements.property(elements.JWARD_PT_GLCR, "Advection", 0)
  726. elements.property(elements.JWARD_PT_GLCR, "Weight", 75)
  727. elements.property(elements.JWARD_PT_GLCR, "Diffusion", 0)
  728. elements.property(elements.JWARD_PT_GLCR, "Falldown", 2)
  729. elements.property(elements.JWARD_PT_GLCR, "Hardness", 0)
  730. elements.property(elements.JWARD_PT_GLCR, "HeatConduct", 72)
  731. elements.property(elements.JWARD_PT_GLCR, "Properties", elem.TYPE_LIQUID)
  732. elements.property(elements.JWARD_PT_GLCR, "State", ST_LIQUID)
  733. function GLCR(i,x,y,s,n)
  734.     reaction = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  735.     dis = tpt.get_property('temp', x, y)
  736.     if reaction == tpt.element('ACID') then
  737.         sim.partChangeType(i, tpt.element('NITR'))
  738.     end
  739.     if reaction == tpt.element('fire') and dis > 373.15 then
  740.         sim.partChangeType(i, tpt.element('fire'))
  741.     end
  742.     if reaction == tpt.element('GLCR') then
  743.         tpt.set_property('vy', 0, x, y)
  744.         tpt.set_property('vx', math.random(-1,1), x, y)
  745.     end
  746. end
  747. tpt.element_func(GLCR,Glycerol)
  748.  
  749. elements.element(elements.JWARD_PT_PRPN, elements.element(elements.DEFAULT_PT_CO2))
  750. elements.property(elements.JWARD_PT_PRPN, "Name", "PRPN")
  751. elements.property(elements.JWARD_PT_PRPN, "Description", "Propane. Explodes very easily.")
  752. elements.property(elements.JWARD_PT_PRPN, "Colour", 0xF4A26A)
  753. elements.property(elements.JWARD_PT_PRPN, "MenuSection", 5)
  754. elements.property(elements.JWARD_PT_PRPN, "Gravity", -0.02)
  755. elements.property(elements.JWARD_PT_PRPN, "Flammable", 2500)
  756. elements.property(elements.JWARD_PT_PRPN, "Explosive", 1)
  757. elements.property(elements.JWARD_PT_PRPN, "Loss", 0.75)
  758. elements.property(elements.JWARD_PT_PRPN, "AirLoss", 0.97)
  759. elements.property(elements.JWARD_PT_PRPN, "AirDrag", 0.01)
  760. elements.property(elements.JWARD_PT_PRPN, "Advection", 1)
  761. elements.property(elements.JWARD_PT_PRPN, "Weight", 0)
  762. elements.property(elements.JWARD_PT_PRPN, "Diffusion", 0.7)
  763. elements.property(elements.JWARD_PT_PRPN, "Meltable", 0)
  764. elements.property(elements.JWARD_PT_PRPN, "Hardness", 0)
  765. elements.property(elements.JWARD_PT_PRPN, "Falldown", 0)
  766. elements.property(elements.JWARD_PT_PRPN, "Properties", TYPE_GAS)
  767. elements.property(elements.JWARD_PT_PRPN, "State", ST_GAS)
  768. elements.property(elements.JWARD_PT_PRPN, "Temperature", 295.15)
  769. elements.property(elements.JWARD_PT_PRPN, "HeatConduct", 95)
  770. elements.property(elements.JWARD_PT_PRPN, "HighTemperature", 2379.15)
  771. elements.property(elements.JWARD_PT_PRPN, "HighTemperatureTransition", tpt.el.fire.id)
  772. elements.property(elements.JWARD_PT_PRPN, "LowTemperatureTransition", NT)
  773. function PRPN(i,x,y,s,n)
  774.     warm = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  775.     warm2 = tpt.get_property("temp",x,y)
  776.     if warm == tpt.el.acid.id then
  777.         sim.partChangeType(i, tpt.element('ptrl'))
  778.         tpt.set_property('temp', (warm2 + 1), x, y)
  779.     end
  780.     if warm == tpt.el.wtrv.id and warm2 > 1100 then
  781.         sim.partChangeType(i, tpt.element('co2'))
  782.     end
  783.     if warm == tpt.element('sprk') or warm == tpt.element('ligh') then
  784.         sim.partChangeType(i, tpt.element('fire'))
  785.     end
  786. end
  787. tpt.element_func(PRPN,propane)
  788.  
  789. --kerosene
  790. local KEROSENEGAS = elements.allocate("JWARD", "KERV")
  791. local KEROSENE = elements.allocate("JWARD", "KERO")
  792. elements.element(elements.JWARD_PT_KERO, elements.element(elements.DEFAULT_PT_GEL))
  793. elements.property(elements.JWARD_PT_KERO, "Name", "KERO")
  794. elements.property(elements.JWARD_PT_KERO, "Description", "KERO BURNS HOT AND QUICK")
  795. elements.property(elements.JWARD_PT_KERO, "Colour", 0x01B3D7)
  796. elements.property(elements.JWARD_PT_KERO, "MenuSection", 5)
  797. elements.property(elements.JWARD_PT_KERO, "Gravity", .04)
  798. elements.property(elements.JWARD_PT_KERO, "Flammable", 0)
  799. elements.property(elements.JWARD_PT_KERO, "Explosive", 0)
  800. elements.property(elements.JWARD_PT_KERO, "Loss", 1)
  801. elements.property(elements.JWARD_PT_KERO, "AirLoss", .90)
  802. elements.property(elements.JWARD_PT_KERO, "AirDrag", .01)
  803. elements.property(elements.JWARD_PT_KERO, "Advection", .80)
  804. elements.property(elements.JWARD_PT_KERO, "Weight", 5)
  805. elements.property(elements.JWARD_PT_KERO, "State", ST_liquid)
  806. elements.property(elements.JWARD_PT_KERO, "Properties", elem.TYPE_LIQUID+elem.PROP_DEADLY)
  807. elements.property(elements.JWARD_PT_KERO, "HighTemperature", 393.15)
  808. elements.property(elements.JWARD_PT_KERO, "HighTemperatureTransition", elements.JWARD_PT_KERV)
  809. function KERO(i,x,y,s,n)
  810. reaction = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  811. cal = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  812.     if cal == tpt.element('acel') then
  813.         if reaction == petrol then
  814.             sim.partChangeType(i, tpt.element('JETB'))
  815.         end
  816.     end
  817.     if cal == tpt.element('sprk') or cal == tpt.element('ligh') then
  818.         sim.partChangeType(i, tpt.element('fire'))
  819.     end
  820. end
  821. tpt.element_func(KERO,KEROSENE)
  822.  
  823. elements.element(elements.JWARD_PT_KERV, elements.element(elements.DEFAULT_PT_HYGN))
  824. elements.property(elements.JWARD_PT_KERV, "Name", "KERV")
  825. elements.property(elements.JWARD_PT_KERV, "Description", "kerosene gas")
  826. elements.property(elements.JWARD_PT_KERV, "Colour", 0x01B3D7)
  827. elements.property(elements.JWARD_PT_KERV, "MenuVisible", 0)
  828. elements.property(elements.JWARD_PT_KERV, "Gravity", -0.02)
  829. elements.property(elements.JWARD_PT_KERV, "Flammable", 4500)
  830. elements.property(elements.JWARD_PT_KERV, "Explosive", 1)
  831. elements.property(elements.JWARD_PT_KERV, "Loss", 0.75)
  832. elements.property(elements.JWARD_PT_KERV, "AirLoss", 0.97)
  833. elements.property(elements.JWARD_PT_KERV, "AirDrag", 0.01)
  834. elements.property(elements.JWARD_PT_KERV, "Advection", 1)
  835. elements.property(elements.JWARD_PT_KERV, "Weight", 0)
  836. elements.property(elements.JWARD_PT_KERV, "Diffusion", 0.7)
  837. elements.property(elements.JWARD_PT_KERV, "Meltable", 0)
  838. elements.property(elements.JWARD_PT_KERV, "Hardness", 0)
  839. elements.property(elements.JWARD_PT_KERV, "Falldown", 0)
  840. elements.property(elements.JWARD_PT_KERV, "Properties", TYPE_GAS)
  841. elements.property(elements.JWARD_PT_KERV, "State", ST_GAS)
  842. elements.property(elements.JWARD_PT_KERV, "Temperature", 403.15)
  843. elements.property(elements.JWARD_PT_KERV, "HeatConduct", 195)
  844. elements.property(elements.JWARD_PT_KERV, "LowTemperature", 393.15)
  845. elements.property(elements.JWARD_PT_KERV, "LowTemperatureTransition", elements.JWARD_PT_KERO)
  846. function KERV(i,x,y,s,n)
  847. cal = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  848.     if cal == tpt.element('sprk') or cal == tpt.element('ligh') then
  849.         sim.partChangeType(i, tpt.element('fire'))
  850.     end
  851. end
  852. tpt.element_func(KERV,KEROSENEGAS)
  853.  
  854. --jetfuel
  855. local JETFUEL = elements.allocate("JWARD", "JETB")
  856. elements.element(elements.JWARD_PT_JETB, elements.element(elements.DEFAULT_PT_GEL))
  857. elements.property(elements.JWARD_PT_JETB, "Name", "JETB")
  858. elements.property(elements.JWARD_PT_JETB, "Description", "Jet type b, fuel-blend of Kero and Ptrl for jet engines")
  859. elements.property(elements.JWARD_PT_JETB, "Colour", 0x676601)
  860. elements.property(elements.JWARD_PT_JETB, "MenuSection", 5)
  861. elements.property(elements.JWARD_PT_JETB, "Gravity", .04)
  862. elements.property(elements.JWARD_PT_JETB, "Flammable", 5000)
  863. elements.property(elements.JWARD_PT_JETB, "Explosive", 1)
  864. elements.property(elements.JWARD_PT_JETB, "Loss", 0.8)
  865. elements.property(elements.JWARD_PT_JETB, "AirLoss", 0.94)
  866. elements.property(elements.JWARD_PT_JETB, "AirDrag", 0.02)
  867. elements.property(elements.JWARD_PT_JETB, "Advection", 0.8)
  868. elements.property(elements.JWARD_PT_JETB, "HighTemperature", 353.15)
  869. elements.property(elements.JWARD_PT_JETB, "Weight", 13)
  870. elements.property(elements.JWARD_PT_JETB, "State", ST_liquid)
  871. elements.property(elements.JWARD_PT_JETB, "Properties", elem.TYPE_LIQUID+elem.PROP_DEADLY)
  872. elements.property(elements.JWARD_PT_JETB, "LowTemperature", 225.15)
  873. elements.property(elements.JWARD_PT_JETB, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  874. function JETB(i,x,y,s,n)
  875. cal = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  876.     if cal == tpt.element('sprk') or cal == tpt.element('ligh') then
  877.         sim.partChangeType(i, tpt.element('fire'))
  878.     end
  879. end
  880. tpt.element_func(JETB,JETFUEL)
  881.  
  882. --tar
  883. local TARGAS = elements.allocate("JWARD", "TARV")
  884. local TAR = elements.allocate("JWARD", "TAR")
  885. elements.element(elements.JWARD_PT_TAR, elements.element(elements.DEFAULT_PT_SOAP))
  886. elements.property(elements.JWARD_PT_TAR, "Name", "TAR")
  887. elements.property(elements.JWARD_PT_TAR, "Description", "tar hard to burn")
  888. elements.property(elements.JWARD_PT_TAR, "Colour", 0x0D0D03)
  889. elements.property(elements.JWARD_PT_TAR, "MenuSection", 5)
  890. elements.property(elements.JWARD_PT_TAR, "Gravity", .1)
  891. elements.property(elements.JWARD_PT_TAR, "Flammable", 1)
  892. elements.property(elements.JWARD_PT_TAR, "Explosive", 0)
  893. elements.property(elements.JWARD_PT_TAR, "Loss", 1)
  894. elements.property(elements.JWARD_PT_TAR, "AirLoss", .5)
  895. elements.property(elements.JWARD_PT_TAR, "AirDrag", .01)
  896. elements.property(elements.JWARD_PT_TAR, "Advection", .01)
  897. elements.property(elements.JWARD_PT_TAR, "Diffusion", 0.01)
  898. elements.property(elements.JWARD_PT_TAR, "State", ST_liquid)
  899. elements.property(elements.JWARD_PT_TAR, "Weight", 50)
  900. elements.property(elements.JWARD_PT_TAR, "Properties", elem.TYPE_LIQUID+elem.PROP_DEADLY)
  901. elements.property(elements.JWARD_PT_TAR, "HighTemperature", 873.15)
  902. elements.property(elements.JWARD_PT_TAR, "HighTemperatureTransition", elements.JWARD_PT_TARV)
  903. function TAR(i,x,y,s,n)
  904.     crack = math.random(-1,1)
  905.     otherfind = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  906.     if buttonable == 1 and otherfind == tpt.el.brel.id then
  907.         if crack == 0 then
  908.             sim.partChangeType(i, petrol)
  909.         end
  910.         if crack == 1 then
  911.             sim.partChangeType(i, tpt.element('PRPN'))
  912.         end
  913.         if crack == -1 then
  914.             sim.partChangeType(i, tpt.element('CRST'))
  915.         end
  916.     end
  917. end
  918. tpt.element_func(TAR,tpt.element('TAR'))
  919.  
  920. elements.element(elements.JWARD_PT_TARV, elements.element(elements.DEFAULT_PT_HYGN))
  921. elements.property(elements.JWARD_PT_TARV, "Name", "TARV")
  922. elements.property(elements.JWARD_PT_TARV, "Description", "tar gas")
  923. elements.property(elements.JWARD_PT_TARV, "Colour", 0x4C2D20)
  924. elements.property(elements.JWARD_PT_TARV, "MenuVisible", 0)
  925. elements.property(elements.JWARD_PT_TARV, "Gravity", -0.02)
  926. elements.property(elements.JWARD_PT_TARV, "Flammable", 100)
  927. elements.property(elements.JWARD_PT_TARV, "Explosive", 0)
  928. elements.property(elements.JWARD_PT_TARV, "Loss", 0.75)
  929. elements.property(elements.JWARD_PT_TARV, "AirLoss", 0.97)
  930. elements.property(elements.JWARD_PT_TARV, "AirDrag", 0.01)
  931. elements.property(elements.JWARD_PT_TARV, "Advection", 1)
  932. elements.property(elements.JWARD_PT_TARV, "Weight", 0)
  933. elements.property(elements.JWARD_PT_TARV, "Diffusion", 0.7)
  934. elements.property(elements.JWARD_PT_TARV, "Meltable", 0)
  935. elements.property(elements.JWARD_PT_TARV, "Hardness", 0)
  936. elements.property(elements.JWARD_PT_TARV, "Falldown", 0)
  937. elements.property(elements.JWARD_PT_TARV, "Properties", TYPE_GAS)
  938. elements.property(elements.JWARD_PT_TARV, "State", ST_GAS)
  939. elements.property(elements.JWARD_PT_TARV, "Temperature", 403.15)
  940. elements.property(elements.JWARD_PT_TARV, "HeatConduct", 195)
  941. elements.property(elements.JWARD_PT_TARV, "LowTemperature", 873.15)
  942. elements.property(elements.JWARD_PT_TARV, "LowTemperatureTransition", elements.JWARD_PT_TAR)
  943.  
  944. --wax
  945. local WAXGAS = elements.allocate("JWARD", "WAXV")
  946. elements.element(elements.JWARD_PT_WAXV, elements.element(elements.DEFAULT_PT_HYGN))
  947. elements.property(elements.JWARD_PT_WAXV, "Name", "WAXV")
  948. elements.property(elements.JWARD_PT_WAXV, "Description", "wax gas")
  949. elements.property(elements.JWARD_PT_WAXV, "Colour", 0xF0F0BB)
  950. elements.property(elements.JWARD_PT_WAXV, "MenuSection", SC_GAS)
  951. elements.property(elements.JWARD_PT_WAXV, "Gravity", -0.02)
  952. elements.property(elements.JWARD_PT_WAXV, "Flammable", 500)
  953. elements.property(elements.JWARD_PT_WAXV, "Explosive", 0)
  954. elements.property(elements.JWARD_PT_WAXV, "Loss", 0.75)
  955. elements.property(elements.JWARD_PT_WAXV, "AirLoss", 0.97)
  956. elements.property(elements.JWARD_PT_WAXV, "AirDrag", 0.01)
  957. elements.property(elements.JWARD_PT_WAXV, "Advection", 1)
  958. elements.property(elements.JWARD_PT_WAXV, "Weight", 0)
  959. elements.property(elements.JWARD_PT_WAXV, "Diffusion", 0.7)
  960. elements.property(elements.JWARD_PT_WAXV, "Meltable", 0)
  961. elements.property(elements.JWARD_PT_WAXV, "Hardness", 0)
  962. elements.property(elements.JWARD_PT_WAXV, "Falldown", 0)
  963. elements.property(elements.JWARD_PT_WAXV, "Properties", TYPE_GAS)
  964. elements.property(elements.JWARD_PT_WAXV, "State", ST_GAS)
  965. elements.property(elements.JWARD_PT_WAXV, "Temperature", 833.15)
  966. elements.property(elements.JWARD_PT_WAXV, "HeatConduct", 195)
  967. elements.property(elements.JWARD_PT_WAXV, "LowTemperature", 823.15)
  968. elements.property(elements.JWARD_PT_WAXV, "LowTemperatureTransition", elements.DEFAULT_PT_WAX)
  969.  
  970. --coke
  971. local CoalCoke = elements.allocate("JWARD", "COKE")
  972. elements.element(elements.JWARD_PT_COKE, elements.element(elements.DEFAULT_PT_BCOL))
  973. elements.property(elements.JWARD_PT_COKE, "Name", "COKE")
  974. elements.property(elements.JWARD_PT_COKE, "Description", "COAL COKE. Burns for a long time and hot.")
  975. elements.property(elements.JWARD_PT_COKE, "Colour", 0xAAAAAA)
  976. elements.property(elements.JWARD_PT_COKE, "MenuSection", 5)
  977. elements.property(elements.JWARD_PT_COKE, "Gravity", .35)
  978. elements.property(elements.JWARD_PT_COKE, "Flammable", 0)
  979. elements.property(elements.JWARD_PT_COKE, "Explosive", 0)
  980. elements.property(elements.JWARD_PT_COKE, "Loss", 0.15)
  981. elements.property(elements.JWARD_PT_COKE, "AirLoss", 0.96)
  982. elements.property(elements.JWARD_PT_COKE, "AirDrag", 0.03)
  983. elements.property(elements.JWARD_PT_COKE, "Advection", 0.4)
  984. elements.property(elements.JWARD_PT_COKE, "Weight", 78)
  985. elements.property(elements.JWARD_PT_COKE, "Falldown", 1)
  986. COKEUpdate = function(i, x, y, s, n)
  987.     local clife = tpt.get_property('life', x, y)
  988.     if clife > 1 then
  989.         for cx = -1, 1, 2 do
  990.             for cy = -1, 1, 2 do
  991.                 tpt.create(x + cx, y + cy, 'fire')
  992.                 tpt.set_property('temp', 1700, x, y)
  993.             end
  994.         end
  995.         tpt.set_property('life', clife - 1, x, y)
  996.     elseif clife == 1 then
  997.         tpt.set_property('type', 0, x, y)
  998.     elseif s > 0 then
  999.         for cx = -1, 1, 2 do
  1000.             for cy = -1, 1, 2 do
  1001.                 if tpt.get_property('type', x + cx, y + cy) == 4 or tpt.get_property('type', x + cx, y + cy) == 49 then
  1002.                     tpt.set_property('life', 500, x, y)
  1003.                     return true
  1004.                 end
  1005.             end
  1006.         end
  1007.     end
  1008. end
  1009. tpt.element_func(COKEUpdate, tpt.element('coke'))
  1010.  
  1011. COALUpdate = function(i, x, y, s, n)
  1012.     dis = tpt.get_property('temp', x, y)
  1013.     if dis > 1273.15 then
  1014.         if buttonable == 1 or buttonablest == 0 then
  1015.             sim.partChangeType(i, tpt.element('coke'))
  1016.             tpt.set_property('life', 0, x, y)
  1017.             tpt.create(x, y + 1, 'CRST')
  1018.             tpt.create(x, y - 1, 'TAR')
  1019.         end
  1020.     end
  1021. end
  1022. tpt.element_func(COALUpdate, tpt.element('coal'))
  1023.  
  1024. BCOLUpdate = function(i, x, y, s, n)
  1025.     dis = tpt.get_property('temp', x, y)
  1026.     if dis > 1273.15 then
  1027.         if buttonable == 1 or buttonablest == 0 then
  1028.             sim.partChangeType(i, tpt.element('coke'))
  1029.             tpt.set_property('life', 0, x, y)
  1030.             tpt.create(x, y + 1, 'CRST')
  1031.             tpt.create(x, y - 1, 'TAR')
  1032.         end
  1033.     end
  1034. end
  1035. tpt.element_func(BCOLUpdate, tpt.element('bcol'))
  1036.  
  1037. local CreosoteGas = elements.allocate("JWARD", "CRTV")
  1038. elements.element(elements.JWARD_PT_CRTV, elements.element(elements.DEFAULT_PT_BOYL))
  1039. elements.property(elements.JWARD_PT_CRTV, "Name", "CRTV")
  1040. elements.property(elements.JWARD_PT_CRTV, "Description", "creosote gas")
  1041. elements.property(elements.JWARD_PT_CRTV, "Colour", 0x585117)
  1042. elements.property(elements.JWARD_PT_CRTV, "MenuVisible", 0)
  1043. elements.property(elements.JWARD_PT_CRTV, "Gravity", -0.02)
  1044. elements.property(elements.JWARD_PT_CRTV, "Explosive", 0)
  1045. elements.property(elements.JWARD_PT_CRTV, "Loss", 0.75)
  1046. elements.property(elements.JWARD_PT_CRTV, "Flammable", 100)
  1047. elements.property(elements.JWARD_PT_CRTV, "AirDrag", 0.01)
  1048. elements.property(elements.JWARD_PT_CRTV, "Advection", 1)
  1049. elements.property(elements.JWARD_PT_CRTV, "Weight", 0)
  1050. elements.property(elements.JWARD_PT_CRTV, "Diffusion", 0.7)
  1051. elements.property(elements.JWARD_PT_CRTV, "Hardness", 0)
  1052. elements.property(elements.JWARD_PT_CRTV, "Falldown", 0)
  1053. elements.property(elements.JWARD_PT_CRTV, "Properties", elem.TYPE_GAS)
  1054. elements.property(elements.JWARD_PT_CRTV, "State", ST_GAS)
  1055. elements.property(elements.JWARD_PT_CRTV, "Temperature", 883.15)
  1056. elements.property(elements.JWARD_PT_CRTV, "HeatConduct", 81)
  1057. function CRTV(i,x,y,s,n)
  1058.     dis = tpt.get_property('temp', x, y)
  1059.     if dis < 873.15 then
  1060.         sim.partChangeType(i, tpt.element('CRST'))
  1061.     end
  1062. end
  1063. tpt.element_func(CRTV,CreosoteGas)
  1064.  
  1065. local Creosote = elements.allocate("JWARD", "CRST")
  1066. elements.element(elements.JWARD_PT_CRST, elements.element(elements.DEFAULT_PT_SOAP))
  1067. elements.property(elements.JWARD_PT_CRST, "Name", "CRST")
  1068. elements.property(elements.JWARD_PT_CRST, "Description", "creosote ")
  1069. elements.property(elements.JWARD_PT_CRST, "Colour", 0x0F0E04)
  1070. elements.property(elements.JWARD_PT_CRST, "MenuSection", SC_LIQUID)
  1071. elements.property(elements.JWARD_PT_CRST, "Gravity", .04)
  1072. elements.property(elements.JWARD_PT_CRST, "Flammable", 0)
  1073. elements.property(elements.JWARD_PT_CRST, "Explosive", 0)
  1074. elements.property(elements.JWARD_PT_CRST, "Loss", 1)
  1075. elements.property(elements.JWARD_PT_CRST, "AirLoss", .5)
  1076. elements.property(elements.JWARD_PT_CRST, "AirDrag", .01)
  1077. elements.property(elements.JWARD_PT_CRST, "Advection", .01)
  1078. elements.property(elements.JWARD_PT_CRST, "Weight", 35)
  1079. elements.property(elements.JWARD_PT_CRST, "State", ST_liquid)
  1080. elements.property(elements.JWARD_PT_CRST, "Properties", elem.TYPE_LIQUID)
  1081. elements.property(elements.JWARD_PT_CRST, "HighTemperature", 873)
  1082. elements.property(elements.JWARD_PT_CRST, "HighTemperatureTransition", elements.JWARD_PT_CRTV)
  1083.  
  1084.  
  1085. --crude oil
  1086. function OIL(i,x,y,s,n)
  1087.     crack = math.random(0,1)
  1088.     otherfind = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  1089.     if buttonable == 1 and otherfind == tpt.el.brel.id then
  1090.         if crack == 0 then
  1091.             sim.partChangeType(i, petrol)
  1092.         end
  1093.         if crack == 1 then
  1094.             sim.partChangeType(i, tpt.element('PRPN'))
  1095.         end
  1096.     end
  1097. end
  1098. tpt.element_func(OIL,tpt.element('oil'))
  1099.  
  1100. local OILCRUDE = elements.allocate("JWARD", "OILC")
  1101. elements.element(elements.JWARD_PT_OILC, elements.element(elements.DEFAULT_PT_GEL))
  1102. elements.property(elements.JWARD_PT_OILC, "Name", "OILC")
  1103. elements.property(elements.JWARD_PT_OILC, "Description", "Crude oil can be distilled, didn't name it coil for a reason")
  1104. elements.property(elements.JWARD_PT_OILC, "Colour", 0x35350D)
  1105. elements.property(elements.JWARD_PT_OILC, "MenuSection", 7)
  1106. elements.property(elements.JWARD_PT_OILC, "Gravity", .04)
  1107. elements.property(elements.JWARD_PT_OILC, "Flammable", 50)
  1108. elements.property(elements.JWARD_PT_OILC, "Explosive", 0)
  1109. elements.property(elements.JWARD_PT_OILC, "Loss", 1)
  1110. elements.property(elements.JWARD_PT_OILC, "AirLoss", .5)
  1111. elements.property(elements.JWARD_PT_OILC, "AirDrag", .01)
  1112. elements.property(elements.JWARD_PT_OILC, "Advection", .01)
  1113. elements.property(elements.JWARD_PT_OILC, "Weight", 5)
  1114. elements.property(elements.JWARD_PT_OILC, "State", ST_liquid)
  1115. elements.property(elements.JWARD_PT_OILC, "Properties", elem.TYPE_LIQUID+elem.PROP_DEADLY)
  1116. function OILC(i,x,y,s,n)
  1117.     dis = tpt.get_property('temp', x, y)
  1118.     if dis > 973.15 then
  1119.         tpt.set_property('tmp', math.random(1,9), x, y)
  1120.     end
  1121.     oillife = tpt.get_property('tmp', x, y)
  1122.     if oillife == 9 then
  1123.         sim.partChangeType(i, tpt.element('crtv'))
  1124.         oillife = nil
  1125.     end
  1126.     if oillife == 8 then
  1127.         sim.partChangeType(i, tpt.element('gas'))
  1128.         oillife = nil
  1129.     end
  1130.     if oillife == 7 then
  1131.         sim.partChangeType(i, tpt.element('kerv'))
  1132.         oillife = nil
  1133.     end
  1134.     if oillife == 6 then
  1135.         sim.partChangeType(i, tpt.element('ptlv'))
  1136.         oillife = nil
  1137.     end
  1138.     if oillife == 5 then
  1139.         sim.partChangeType(i, tpt.element('dslv'))
  1140.         oillife = nil
  1141.     end
  1142.     if oillife == 4 then
  1143.         sim.partChangeType(i, tpt.element('waxv'))
  1144.         oillife = nil
  1145.     end
  1146.     if oillife == 3 then
  1147.         sim.partChangeType(i, tpt.element('coke'))
  1148.         oillife = nil
  1149.     end
  1150.     if oillife == 2 then
  1151.         sim.partChangeType(i, tpt.element('tarv'))
  1152.         oillife = nil
  1153.     end
  1154.     if oillife == 1 then
  1155.         sim.partChangeType(i, tpt.element('PRPN'))
  1156.         oillife = nil
  1157.     end
  1158. end
  1159. tpt.element_func(OILC,OILCRUDE)
  1160.  
  1161. --better states of matter
  1162. function BSM(i,x,y,s,n)
  1163.     stctype = tpt.get_property('ctype', x, y)
  1164.     sttemp = tpt.get_property('temp', x, y)
  1165.     if stctype == tpt.element('hygn') and sttemp > 14 then
  1166.         sim.partChangeType(i, tpt.el.hygn.id)
  1167.     end
  1168.     if stctype == tpt.element('nble') and sttemp > 1 then
  1169.         sim.partChangeType(i, tpt.el.nble.id)
  1170.     end
  1171.     if stctype == tpt.element('desl') and sttemp > 255.15 then
  1172.         sim.partChangeType(i, tpt.el.desl.id)
  1173.     end
  1174.     if stctype == tpt.element('ptrl') and sttemp > 225.15 then
  1175.         sim.partChangeType(i, tpt.element('ptrl'))
  1176.     end
  1177. end
  1178. tpt.element_func(BSM,tpt.el.ice.id)
  1179.  
  1180. function BSMp(i,x,y,s,n)
  1181.     stctype = tpt.get_property('ctype', x, y)
  1182.     sttemp = tpt.get_property('temp', x, y)
  1183.     if stctype == tpt.element('hygn') and sttemp > 14 then
  1184.         sim.partChangeType(i, tpt.el.hygn.id)
  1185.     end
  1186.     if stctype == tpt.element('nble') and sttemp > 1 then
  1187.         sim.partChangeType(i, tpt.el.nble.id)
  1188.     end
  1189.     if stctype == tpt.element('desl') and sttemp > 255.15 then
  1190.         sim.partChangeType(i, tpt.el.desl.id)
  1191.     end
  1192.     if stctype == tpt.element('ptrl') and sttemp > 225.15 then
  1193.         sim.partChangeType(i, tpt.element('ptrl'))
  1194.     end
  1195. end
  1196. tpt.element_func(BSMp,tpt.el.snow.id)
  1197.  
  1198. function BSMM(i,x,y,s,n)
  1199.     stctype = tpt.get_property('ctype', x, y)
  1200.     sttemp = tpt.get_property('temp', x, y)
  1201.     if stctype == tpt.element('merc') and sttemp > 234 then
  1202.         sim.partChangeType(i, tpt.el.merc.id)
  1203.         tpt.set_property('tmp', 22, x, y)
  1204.     end
  1205. end
  1206. tpt.element_func(BSMM,tpt.el.metl.id)
  1207.  
  1208. function BSMMY(i,x,y,s,n)
  1209. sttemp = tpt.get_property('temp', x, y)
  1210.     if buttonablest == 0 and sttemp < 234 then
  1211.         sim.partChangeType(i, tpt.el.metl.id)
  1212.         tpt.set_property('ctype', tpt.el.merc.id, x, y)
  1213.     end
  1214. end
  1215. tpt.element_func(BSMMY,tpt.el.merc.id)
  1216.  
  1217. function BSMWT(i,x,y,s,n)
  1218.     stctype = tpt.get_property('ctype', x, y)
  1219.     sttemp = tpt.get_property('temp', x, y)
  1220.     reaction = tpt.get_property("type",x+math.random(-1,1),y+math.random(-1,1))
  1221.     cy = math.random(1,3)
  1222.     if stctype == tpt.element('deut') and sttemp < 376 then
  1223.         sim.partChangeType(i, tpt.el.deut.id)
  1224.     end
  1225.     if sttemp > 1100 then
  1226.         if reaction == tpt.element('KERV') or reaction == tpt.element('WAXV') or reaction == tpt.element('DSLV') or reaction == tpt.element('PTLV') then
  1227.             if cy == 1 then
  1228.             sim.partChangeType(i, tpt.element('HYGN'))
  1229.             else
  1230.             sim.partChangeType(i, tpt.element('CO2'))
  1231.             end
  1232.         end
  1233.         if reaction == tpt.element('PRPN') or reaction == tpt.element('AFRZ') then
  1234.         sim.partChangeType(i, tpt.element('HYGN'))
  1235.         end
  1236.     end
  1237. end
  1238. tpt.element_func(BSMWT,tpt.el.wtrv.id)
  1239.  
  1240. function BSMDWT(i,x,y,s,n)
  1241.     stctype = tpt.get_property('ctype', x, y)
  1242.     if stctype == tpt.element('deut') then
  1243.         sim.partChangeType(i, tpt.el.deut.id)
  1244.     end
  1245. end
  1246. tpt.element_func(BSMDWT,tpt.el.dstw.id)
  1247.  
  1248. function BSMDT(i,x,y,s,n)
  1249.     sttemp = tpt.get_property('temp', x, y)
  1250.     if buttonablest == 0 and sttemp > 376 then
  1251.         sim.partChangeType(i, tpt.el.wtrv.id)
  1252.         tpt.set_property('ctype', tpt.el.deut.id, x, y)
  1253.     end
  1254. end
  1255. tpt.element_func(BSMDT,tpt.el.deut.id)
  1256.  
  1257. function BSMP(i,x,y,s,n)
  1258.     sttemp = tpt.get_property('temp', x, y)
  1259.     if buttonablest == 0 and sttemp < 260 then
  1260.         BSMchance = math.random(1,3)
  1261.     else
  1262.         BSMchance = 0
  1263.     end
  1264.     if BSMchance == 1 then
  1265.         sim.partChangeType(i, tpt.el.clst.id)
  1266.     end
  1267.     if BSMchance == 2 then
  1268.         sim.partChangeType(i, tpt.el.ice.id)
  1269.         tpt.set_property('ctype', tpt.el.pste.id, x, y)
  1270.     end
  1271.     if BSMchance == 3 then
  1272.         sim.partChangeType(i, tpt.el.ice.id)
  1273.         tpt.set_property('ctype', tpt.el.watr.id, x, y)
  1274.     end
  1275. end
  1276. tpt.element_func(BSMP,tpt.el.pste.id)
  1277.  
  1278. --button
  1279. --http://powdertoy.co.uk/Wiki/W/Lua.html
  1280. topress = 0
  1281. thx = 0
  1282. buttonable = 1
  1283.  
  1284. function tick()
  1285.  if nil == HL2Mod then
  1286.  if thx == 1 then
  1287.  tpt.message_box("thanks "..tpt.get_name().." for your purchase, ","construction or theft of one or more of jward's mods")
  1288.  thx = 0
  1289.  end
  1290.  if tpt.version.jacob1s_mod or elem.DEFAULT_PT_IRNX == 181 or nil ~= TPTMP then
  1291.  if  tpt.hud() == 1 then
  1292.  if  tpt.mousex >= 613 and tpt.mousey >= 1 and tpt.mousex <= 627 and tpt.mousey <= 14 then
  1293.  else
  1294. tpt.drawrect(597, 1, 14, 14, 204, 204, 204)
  1295. tpt.fillrect(597, 1, 14, 14, 0, 0, 0, 255)
  1296. tpt.drawtext(598, 5, "JW", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1297. topress = 1
  1298. if tpt.mousex >= 597 and tpt.mousey >= 1 and tpt.mousex <= 611 and tpt.mousey <= 14 then
  1299. tpt.drawrect(597, 1, 14, 14, 255, 255, 255)
  1300. end
  1301. end
  1302. end
  1303. else
  1304. tpt.drawrect(613, 113, 14, 14, 204, 204, 204)
  1305. tpt.fillrect(613, 113, 14, 14, 0, 0, 0, 255)
  1306. tpt.drawtext(614, 117, "JW", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1307. topress = 2
  1308. if tpt.mousex >= 613 and tpt.mousey >= 113 and tpt.mousex <= 627 and tpt.mousey <= 124 then
  1309. tpt.drawrect(613, 113, 14, 14, 255, 255, 255)
  1310. tpt.drawtext(500, 117, "JWARD's Mod options", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1311. end
  1312. end
  1313. if toopress == 1 then
  1314. if topress == 1 then
  1315.  tpt.fillrect(596, 0, 16, 16, 255, 255, 255, 255)
  1316.  tpt.drawtext(598, 5, "JW", 0, 0, 0, 255)
  1317.  end
  1318.  if topress == 2 then
  1319.  tpt.fillrect(612, 112, 16, 16, 255, 255, 255, 255)
  1320.  tpt.drawtext(614, 117, "JW", 0, 0, 0, 255)
  1321.  end
  1322.  if items == 1 then
  1323.  tpt.fillrect(150, 174, 16, 15, 255, 255, 255, 255)
  1324.  tpt.drawline(153, 176, 158, 181, 0, 0, 0)
  1325.  tpt.drawline(163, 176, 158, 181, 0, 0, 0)
  1326.  tpt.drawline(153, 181, 158, 186, 0, 0, 0)
  1327.  tpt.drawline(163, 181, 158, 186, 0, 0, 0)
  1328.  tpt.drawrect(0, 205, 600, 175, 255, 255, 255)
  1329.  tpt.fillrect(0, 205, 600, 175, 0, 0, 0, 255)
  1330.  tpt.drawtext(25, 210, "JWARD's Mods' elements", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1331.  tpt.drawrect(5, 208, 14, 14, 255, 255, 255)
  1332.  tpt.drawline(17, 215, 12, 210, 255, 255, 255)
  1333.  tpt.drawline(7, 215, 12, 210, 255, 255, 255)
  1334.  tpt.drawline(17, 220, 12, 215, 255, 255, 255)
  1335.  tpt.drawline(7, 220, 12, 215, 255, 255, 255)
  1336.  tpt.drawtext(6, 229, "Fuel mod:", 255, 255, 255, 255)
  1337.  --anfo
  1338.  tpt.fillrect(50, 225, 28, 15, 255, 206, 202, 255)
  1339.  tpt.drawtext(51, 229, "ANFO", 0, 0, 0, 255)
  1340.  if  tpt.mousex >= 50 and tpt.mousey >= 225 and tpt.mousex <= 78 and tpt.mousey <= 240 and items == 1 then
  1341.  tpt.drawrect(49, 224, 30, 17, 255, 0, 0)
  1342.  end
  1343.  if redrect == 1 then
  1344.  tpt.drawrect(49, 224, 30, 17, 255, 0, 0)
  1345.  end
  1346. --PRPN
  1347.  tpt.fillrect(83, 225, 28, 15, 244, 162, 106, 255)
  1348.  tpt.drawtext(85, 229, "PRPN", 0, 0, 0, 255)
  1349.  if  tpt.mousex >= 83 and tpt.mousey >= 225 and tpt.mousex <= 111 and tpt.mousey <= 240 and items == 1 then
  1350.  tpt.drawrect(82, 224, 30, 17, 255, 0, 0)
  1351.  end
  1352.  if redrect == 2 then
  1353.  tpt.drawrect(82, 224, 30, 17, 255, 0, 0)
  1354.  end
  1355.  --COKE
  1356.  tpt.fillrect(116, 225, 28, 15, 170, 170, 170, 255)
  1357.  tpt.drawtext(118, 229, "COKE", 0, 0, 0, 255)
  1358.  if  tpt.mousex >= 116 and tpt.mousey >= 225 and tpt.mousex <= 144 and tpt.mousey <= 240 and items == 1 then
  1359.  tpt.drawrect(115, 224, 30, 17, 255, 0, 0)
  1360.  end
  1361.  if redrect == 3 then
  1362.  tpt.drawrect(115, 224, 30, 17, 255, 0, 0)
  1363.  end
  1364.  --OILC
  1365.  tpt.fillrect(149, 225, 28, 15, 53, 53, 13, 255)
  1366.  tpt.drawtext(153, 229, "OILC", 255, 255, 255, 255)
  1367.  if  tpt.mousex >= 149 and tpt.mousey >= 225 and tpt.mousex <= 177 and tpt.mousey <= 240 and items == 1 then
  1368.  tpt.drawrect(148, 224, 30, 17, 255, 0, 0)
  1369.  end
  1370.  if redrect == 4 then
  1371.  tpt.drawrect(148, 224, 30, 17, 255, 0, 0)
  1372.  end
  1373. --plye
  1374.  tpt.fillrect(182, 225, 28, 15, 204, 204, 204, 255)
  1375.  tpt.drawtext(186, 229, "PLYE", 0, 0, 0, 255)
  1376.  if  tpt.mousex >= 182 and tpt.mousey >= 225 and tpt.mousex <= 210 and tpt.mousey <= 240 and items == 1 then
  1377.  tpt.drawrect(181, 224, 30, 17, 255, 0, 0)
  1378.  end
  1379.  if redrect == 5 then
  1380.  tpt.drawrect(181, 224, 30, 17, 255, 0, 0)
  1381.  end
  1382.  --JETB
  1383.  tpt.fillrect(215, 225, 28, 15, 103, 102, 1, 255)
  1384.  tpt.drawtext(217, 229, "JETB", 255, 255, 255, 255)
  1385.  if  tpt.mousex >= 215 and tpt.mousey >= 225 and tpt.mousex <= 243 and tpt.mousey <= 240 and items == 1 then
  1386.  tpt.drawrect(214, 224, 30, 17, 255, 0, 0)
  1387.  end
  1388.  if redrect == 6 then
  1389.  tpt.drawrect(214, 224, 30, 17, 255, 0, 0)
  1390.  end
  1391.  --kerosene
  1392.  tpt.fillrect(248, 225, 28, 15, 1, 179, 255, 255)
  1393.  tpt.drawtext(250, 229, "KERO", 0, 0, 0, 255)
  1394.  if  tpt.mousex >= 248 and tpt.mousey >= 225 and tpt.mousex <= 276 and tpt.mousey <= 240 and items == 1 then
  1395.  tpt.drawrect(247, 224, 30, 17, 255, 0, 0)
  1396.  end
  1397.  if redrect == 7 then
  1398.  tpt.drawrect(247, 224, 30, 17, 255, 0, 0)
  1399.  end
  1400.  --N2H4
  1401.  tpt.fillrect(281, 225, 28, 15, 182, 240, 100, 255)
  1402.  tpt.drawtext(283, 229, "N2H4", 0, 0, 0, 255)
  1403.  if  tpt.mousex >= 281 and tpt.mousey >= 225 and tpt.mousex <= 309 and tpt.mousey <= 240 and items == 1 then
  1404.  tpt.drawrect(280, 224, 30, 17, 255, 0, 0)
  1405.  end
  1406.  if redrect == 8 then
  1407.  tpt.drawrect(280, 224, 30, 17, 255, 0, 0)
  1408.  end
  1409.   --N2O4
  1410.  tpt.fillrect(314, 225, 28, 15, 48, 206, 198, 255)
  1411.  tpt.drawtext(316, 229, "N2O4", 0, 0, 0, 255)
  1412.  if  tpt.mousex >= 314 and tpt.mousey >= 225 and tpt.mousex <= 342 and tpt.mousey <= 240 and items == 1 then
  1413.  tpt.drawrect(313, 224, 30, 17, 255, 0, 0)
  1414.  end
  1415.  if redrect == 9 then
  1416.  tpt.drawrect(313, 224, 30, 17, 255, 0, 0)
  1417.  end
  1418.  --TAR
  1419.  tpt.fillrect(347, 225, 28, 15, 13, 13, 3, 255)
  1420.  tpt.drawtext(352, 229, "TAR", 255, 255, 255, 255)
  1421.  if  tpt.mousex >= 347 and tpt.mousey >= 225 and tpt.mousex <= 375 and tpt.mousey <= 240 and items == 1 then
  1422.  tpt.drawrect(346, 224, 30, 17, 255, 0, 0)
  1423.  end
  1424.  if redrect == 10 then
  1425.  tpt.drawrect(346, 224, 30, 17, 255, 0, 0)
  1426.  end
  1427.  --AFRZ
  1428.  tpt.fillrect(380, 225, 28, 15, 12, 63, 91, 255)
  1429.  tpt.drawtext(382, 229, "AFRZ", 255, 255, 255, 255)
  1430.  if  tpt.mousex >= 380 and tpt.mousey >= 225 and tpt.mousex <= 408 and tpt.mousey <= 240 and items == 1 then
  1431.  tpt.drawrect(379, 224, 30, 17, 255, 0, 0)
  1432.  end
  1433.  if redrect == 11 then
  1434.  tpt.drawrect(379, 224, 30, 17, 255, 0, 0)
  1435.  end
  1436.  --N2O
  1437.  tpt.fillrect(413, 225, 28, 15, 67, 218, 255, 255)
  1438.  tpt.drawtext(418, 229, "N2O", 0, 0, 0, 255)
  1439.  if  tpt.mousex >= 413 and tpt.mousey >= 225 and tpt.mousex <= 441 and tpt.mousey <= 240 and items == 1 then
  1440.  tpt.drawrect(412, 224, 30, 17, 255, 0, 0)
  1441.  end
  1442.  if redrect == 12 then
  1443.  tpt.drawrect(412, 224, 30, 17, 255, 0, 0)
  1444.  end
  1445.  --N2
  1446.  tpt.fillrect(446, 225, 28, 15, 94, 82, 255, 255)
  1447.  tpt.drawtext(454, 229, "N2", 0, 0, 0, 255)
  1448.  if  tpt.mousex >= 446 and tpt.mousey >= 225 and tpt.mousex <= 474 and tpt.mousey <= 240 and items == 1 then
  1449.  tpt.drawrect(445, 224, 30, 17, 255, 0, 0)
  1450.  end
  1451.  if redrect == 13 then
  1452.  tpt.drawrect(445, 224, 30, 17, 255, 0, 0)
  1453.  end
  1454.  --PTRL
  1455.  tpt.fillrect(479, 225, 28, 15, 10, 74, 92, 255)
  1456.  tpt.drawtext(482, 229, "PTRL", 255, 255, 255, 255)
  1457.  if  tpt.mousex >= 479 and tpt.mousey >= 225 and tpt.mousex <= 507 and tpt.mousey <= 240 and items == 1 then
  1458.  tpt.drawrect(478, 224, 30, 17, 255, 0, 0)
  1459.  end
  1460.  if redrect == 14 then
  1461.  tpt.drawrect(478, 224, 30, 17, 255, 0, 0)
  1462.  end
  1463.  --COIL
  1464.  tpt.fillrect(512, 225, 28, 15, 165, 114, 20, 255)
  1465.  tpt.drawtext(515, 229, "COIL", 0, 0, 0, 255)
  1466.  if  tpt.mousex >= 512 and tpt.mousey >= 225 and tpt.mousex <= 540 and tpt.mousey <= 240 and items == 1 then
  1467.  tpt.drawrect(511, 224, 30, 17, 255, 0, 0)
  1468.  end
  1469.  if redrect == 15 then
  1470.  tpt.drawrect(511, 224, 30, 17, 255, 0, 0)
  1471.  end
  1472.  --CALS
  1473.  tpt.fillrect(545, 225, 28, 15, 144, 150, 95, 255)
  1474.  tpt.drawtext(548, 229, "CALS", 0, 0, 0, 255)
  1475.  if  tpt.mousex >= 545 and tpt.mousey >= 225 and tpt.mousex <= 573 and tpt.mousey <= 240 and items == 1 then
  1476.  tpt.drawrect(544, 224, 30, 17, 255, 0, 0)
  1477.  end
  1478.  if redrect == 16 then
  1479.  tpt.drawrect(544, 224, 30, 17, 255, 0, 0)
  1480.  end
  1481.  --BDSL
  1482.  tpt.fillrect(6, 245, 28, 15, 51, 16, 0, 255)
  1483.  tpt.drawtext(8, 249, "BDSL", 255, 255, 255, 255)
  1484.  if  tpt.mousex >= 6 and tpt.mousey >= 245 and tpt.mousex <= 34 and tpt.mousey <= 260 and items == 1 then
  1485.  tpt.drawrect(5, 244, 30, 17, 255, 0, 0)
  1486.  end
  1487.  if redrect == 17 then
  1488.  tpt.drawrect(5, 244, 30, 17, 255, 0, 0)
  1489.  end
  1490.  --LN2O
  1491.  tpt.fillrect(39, 245, 28, 15, 51, 193, 245, 255)
  1492.  tpt.drawtext(41, 249, "LN2O", 0, 0, 0, 255)
  1493.  if  tpt.mousex >= 39 and tpt.mousey >= 245 and tpt.mousex <= 67 and tpt.mousey <= 260 and items == 1 then
  1494.  tpt.drawrect(38, 244, 30, 17, 255, 0, 0)
  1495.  end
  1496.  if redrect == 18 then
  1497.  tpt.drawrect(38, 244, 30, 17, 255, 0, 0)
  1498.  end
  1499.  --CRST
  1500.  tpt.fillrect(72, 245, 28, 15, 15, 14, 4, 255)
  1501.  tpt.drawtext(74, 249, "CRST", 255, 255, 255, 255)
  1502.  if  tpt.mousex >= 72 and tpt.mousey >= 245 and tpt.mousex <= 100 and tpt.mousey <= 260 and items == 1 then
  1503.  tpt.drawrect(71, 244, 30, 17, 255, 0, 0)
  1504.  end
  1505.  if redrect == 19 then
  1506.  tpt.drawrect(71, 244, 30, 17, 255, 0, 0)
  1507.  end
  1508.  end
  1509.  tpt.drawrect(0, 0, 200, 200, 255, 255, 255)
  1510.  tpt.fillrect(0, 0, 200, 200, 0, 0, 0, 255)
  1511.  tpt.drawtext(10, 5, "JWARD's Mod options", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1512.  --close
  1513.  tpt.drawrect(10, 174, 60, 16, 255, 255, 255)
  1514.  tpt.drawtext(25, 178, "Close", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1515.  --antisave breaking
  1516.  tpt.drawrect(10, 150, 15, 15, 255, 255, 255)
  1517.  tpt.drawrect(35, 150, 15, 15, 255, 255, 255)
  1518.  tpt.drawtext(13, 154, "on", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1519.  tpt.drawtext(37, 154, "off", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1520.  tpt.drawtext(10, 140, "antisave breaking", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1521.  --THanKs
  1522.  tpt.drawrect(80, 174, 60, 16, 255, 255, 255)
  1523.  tpt.drawtext(88, 178, ">THanKs<", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1524.  --better states of matter
  1525.  tpt.drawtext(13, 127, "on", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1526.  tpt.drawtext(37, 127, "off", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1527.  tpt.drawrect(10, 123, 15, 15, 255, 255, 255)
  1528.  tpt.drawrect(35, 123, 15, 15, 255, 255, 255)
  1529.  tpt.drawtext(10, 114, "better states of matter", colourRGB[1], colourRGB[2], colourRGB[3], 255)
  1530.   --elements
  1531.  tpt.drawrect(150, 174, 16, 15, 255, 255, 255)
  1532.  tpt.drawline(153, 176, 158, 181, 255, 255, 255)
  1533.  tpt.drawline(163, 176, 158, 181, 255, 255, 255)
  1534.  tpt.drawline(153, 181, 158, 186, 255, 255, 255)
  1535.  tpt.drawline(163, 181, 158, 186, 255, 255, 255)
  1536. end
  1537. end
  1538. end
  1539. function pressthingy()
  1540. if HL2Mod == nil then
  1541. if topress == 1 then
  1542.  if tpt.mousex >= 597 and tpt.mousey >= 1 and tpt.mousex <= 611 and tpt.mousey <= 14 and tpt.hud() == 1 then
  1543.  open = 1
  1544.  windowclick = 1
  1545.  end
  1546.  end
  1547.  if topress == 2 then
  1548.  if tpt.mousex >= 613 and tpt.mousey >= 113 and tpt.mousex <= 627 and tpt.mousey <= 124 then
  1549.  open = 1
  1550.  windowclick = 1
  1551.  end
  1552.  end
  1553.  if  tpt.mousex >= 0 and tpt.mousey >= 0 and tpt.mousex <= 200 and tpt.mousey <= 200 and windowclick == 1 then
  1554.  open = 1
  1555.  end
  1556.  if open == 1 then
  1557.  if  tpt.mousex >= 10 and tpt.mousey >= 174 and tpt.mousex <= 70 and tpt.mousey <= 190 then
  1558.  open = 0
  1559.  toopress = 0
  1560.  windowclick = 0
  1561.  end
  1562.  if  tpt.mousex >= 80 and tpt.mousey >= 174 and tpt.mousex <= 140 and tpt.mousey <= 190 then
  1563.  thx = 1
  1564.  end
  1565.  if  tpt.mousex >= 150 and tpt.mousey >= 174 and tpt.mousex <= 166 and tpt.mousey <= 189 then
  1566.  items = 1
  1567.  end
  1568.  if  tpt.mousex >= 5 and tpt.mousey >= 208 and tpt.mousex <= 19 and tpt.mousey <= 222 and items == 1 then
  1569.  items = 0
  1570.  end
  1571.  if  tpt.mousex >= 50 and tpt.mousey >= 225 and tpt.mousex <= 78 and tpt.mousey <= 240 and items == 1 then
  1572.  tpt.selectedl="JWARD_PT_ANFO"
  1573.  redrect = 1
  1574.  end
  1575.  if  tpt.mousex >= 83 and tpt.mousey >= 225 and tpt.mousex <= 111 and tpt.mousey <= 240 and items == 1 then
  1576.  tpt.selectedl="JWARD_PT_PRPN"
  1577.  redrect = 2
  1578.  end
  1579.  if  tpt.mousex >= 116 and tpt.mousey >= 225 and tpt.mousex <= 144 and tpt.mousey <= 240 and items == 1 then
  1580.  tpt.selectedl="JWARD_PT_COKE"
  1581.  redrect = 3
  1582.  end
  1583.  if  tpt.mousex >= 149 and tpt.mousey >= 225 and tpt.mousex <= 177 and tpt.mousey <= 240 and items == 1 then
  1584.  tpt.selectedl="JWARD_PT_OILC"
  1585.  redrect = 4
  1586.  end
  1587.  if  tpt.mousex >= 182 and tpt.mousey >= 225 and tpt.mousex <= 210 and tpt.mousey <= 240 and items == 1 then
  1588.  tpt.selectedl="JWARD_PT_PLYE"
  1589.  redrect = 5
  1590.  end
  1591.  if  tpt.mousex >= 215 and tpt.mousey >= 225 and tpt.mousex <= 243 and tpt.mousey <= 240 and items == 1 then
  1592.  tpt.selectedl="JWARD_PT_JETB"
  1593.  redrect = 6
  1594.  end
  1595.  if  tpt.mousex >= 248 and tpt.mousey >= 225 and tpt.mousex <= 276 and tpt.mousey <= 240 and items == 1 then
  1596.  tpt.selectedl="JWARD_PT_KERO"
  1597.  redrect = 7
  1598.  end
  1599.  if  tpt.mousex >= 281 and tpt.mousey >= 225 and tpt.mousex <= 309 and tpt.mousey <= 240 and items == 1 then
  1600.  tpt.selectedl="JWARD_PT_N2H4"
  1601.  redrect = 8
  1602.  end
  1603.  if  tpt.mousex >= 314 and tpt.mousey >= 225 and tpt.mousex <= 342 and tpt.mousey <= 240 and items == 1 then
  1604.  tpt.selectedl="JWARD_PT_N2O4"
  1605.  redrect = 9
  1606.  end
  1607.  if  tpt.mousex >= 347 and tpt.mousey >= 225 and tpt.mousex <= 375 and tpt.mousey <= 240 and items == 1 then
  1608.  tpt.selectedl="JWARD_PT_TAR"
  1609.  redrect = 10
  1610.  end
  1611.  if  tpt.mousex >= 380 and tpt.mousey >= 225 and tpt.mousex <= 408 and tpt.mousey <= 240 and items == 1 then
  1612.  tpt.selectedl="JWARD_PT_AFRZ"
  1613.  redrect = 11
  1614.  end
  1615.  if  tpt.mousex >= 413 and tpt.mousey >= 225 and tpt.mousex <= 441 and tpt.mousey <= 240 and items == 1 then
  1616.  tpt.selectedl="JWARD_PT_N2O"
  1617.  redrect = 12
  1618.  end
  1619.  if  tpt.mousex >= 446 and tpt.mousey >= 225 and tpt.mousex <= 474 and tpt.mousey <= 240 and items == 1 then
  1620.  tpt.selectedl="JWARD_PT_N2"
  1621.  redrect = 13
  1622.  end
  1623.  if  tpt.mousex >= 479 and tpt.mousey >= 225 and tpt.mousex <= 507 and tpt.mousey <= 240 and items == 1 then
  1624.  tpt.selectedl="JWARD_PT_PTRL"
  1625.  redrect = 14
  1626.  end
  1627.  if  tpt.mousex >= 512 and tpt.mousey >= 225 and tpt.mousex <= 540 and tpt.mousey <= 240 and items == 1 then
  1628.  tpt.selectedl="JWARD_PT_COIL"
  1629.  redrect = 15
  1630.  end
  1631.  if  tpt.mousex >= 545 and tpt.mousey >= 225 and tpt.mousex <= 573 and tpt.mousey <= 240 and items == 1 then
  1632.  tpt.selectedl="JWARD_PT_CALS"
  1633.  redrect = 16
  1634.  end
  1635.  if  tpt.mousex >= 6 and tpt.mousey >= 245 and tpt.mousex <= 34 and tpt.mousey <= 260 and items == 1 then
  1636.  tpt.selectedl="JWARD_PT_BDSL"
  1637.  redrect = 17
  1638.  end
  1639.  if  tpt.mousex >= 39 and tpt.mousey >= 245 and tpt.mousex <= 67 and tpt.mousey <= 260 and items == 1 then
  1640.  tpt.selectedl="JWARD_PT_LN2O"
  1641.  redrect = 18
  1642.  end
  1643.  if  tpt.mousex >= 72 and tpt.mousey >= 245 and tpt.mousex <= 100 and tpt.mousey <= 260 and items == 1 then
  1644.  tpt.selectedl="JWARD_PT_CRST"
  1645.  redrect = 19
  1646.  end
  1647.  if  tpt.mousex >= 35 and tpt.mousey >= 123 and tpt.mousex <= 50 and tpt.mousey <= 138 then
  1648. elements.property(elements.DEFAULT_PT_LN2, "HighTemperature", 77)
  1649. elements.property(elements.DEFAULT_PT_LN2, "HighTemperatureTransition", elements.DEFAULT_PT_NONE)
  1650. elements.property(elements.DEFAULT_PT_GAS, "HighPressureTransition", elements.DEFAULT_PT_OIL)
  1651. elements.property(elements.DEFAULT_PT_GAS, "LowTemperature", 0)
  1652. elements.property(elements.DEFAULT_PT_GAS, "HotAir", 0.001)
  1653. elements.property(elements.DEFAULT_PT_GAS, "LowTemperatureTransition", DEFAULT_PT_GAS)
  1654. elements.property(elements.DEFAULT_PT_GAS, "HighTemperatureTransition", elements.DEFAULT_PT_FIRE)
  1655. elements.property(elements.DEFAULT_PT_GAS, "Temperature", 273.15)
  1656. elements.property(elements.DEFAULT_PT_GAS, "HighTemperature", 573)
  1657. elements.property(elements.DEFAULT_PT_GAS, "HighPressure", 6)
  1658. elements.property(elements.DEFAULT_PT_OIL, "HighTemperature", 333)
  1659. elements.property(elements.DEFAULT_PT_OIL, "HighTemperatureTransition", elements.DEFAULT_PT_GAS)
  1660. elements.property(elements.DEFAULT_PT_DESL, "LowTemperature", NT)
  1661. elements.property(elements.DEFAULT_PT_DESL, "LowTemperatureTransition", ITL)
  1662. elements.property(elements.DEFAULT_PT_HYGN, "LowTemperature", NT)
  1663. elements.property(elements.DEFAULT_PT_HYGN, "LowTemperatureTransition", ITL)
  1664. elements.property(elements.DEFAULT_PT_NBLE, "LowTemperature", NT)
  1665. elements.property(elements.DEFAULT_PT_NBLE, "LowTemperatureTransition", ITL)
  1666. elements.property(elements.DEFAULT_PT_COAL, "HighPressure", 256)
  1667. elements.property(elements.DEFAULT_PT_COAL, "HighPressureTransition", elements.DEFAULT_PT_COAL)
  1668. elements.property(elements.DEFAULT_PT_BCOL, "HighPressure", 256)
  1669. elements.property(elements.DEFAULT_PT_BCOL, "HighPressureTransition", elements.DEFAULT_PT_BCOL)
  1670. elements.property(elements.JWARD_PT_COKE, "HighPressure", 256)
  1671. elements.property(elements.JWARD_PT_COKE, "HighPressureTransition", elements.JWARD_PT_COKE)
  1672. elements.property(elements.JWARD_PT_COKE, "HighTemperature", 10000)
  1673. elements.property(elements.JWARD_PT_COKE, "HighTemperatureTransition", elements.JWARD_PT_COKE)
  1674. elements.property(elements.DEFAULT_PT_URAN, "HighTemperature", 10000)
  1675. elements.property(elements.DEFAULT_PT_URAN, "HighTemperatureTransition", elements.DEFAULT_PT_URAN)
  1676. elements.property(elements.DEFAULT_PT_PLUT, "HighTemperature", 10000)
  1677. elements.property(elements.DEFAULT_PT_PLUT, "HighTemperatureTransition", elements.DEFAULT_PT_PLUT)
  1678. elements.property(elements.DEFAULT_PT_DEUT, "LowTemperature", 0)
  1679. elements.property(elements.DEFAULT_PT_DEUT, "LowTemperatureTransition", elements.DEFAULT_PT_DEUT)
  1680. buttonablest = 1
  1681.  end
  1682. if  tpt.mousex >= 10 and tpt.mousey >= 123 and tpt.mousex <= 25 and tpt.mousey <= 138 then
  1683. elements.property(elements.DEFAULT_PT_LN2, "HighTemperature", 76)
  1684. elements.property(elements.DEFAULT_PT_LN2, "HighTemperatureTransition", elements.JWARD_PT_N2)
  1685. elements.property(elements.DEFAULT_PT_GAS, "HighPressureTransition", 256)
  1686. elements.property(elements.DEFAULT_PT_GAS, "LowTemperature", 573.15)
  1687. elements.property(elements.DEFAULT_PT_GAS, "HotAir", 0)
  1688. elements.property(elements.DEFAULT_PT_GAS, "LowTemperatureTransition", elements.DEFAULT_PT_OIL)
  1689. elements.property(elements.DEFAULT_PT_GAS, "HighTemperatureTransition", NT)
  1690. elements.property(elements.DEFAULT_PT_GAS, "Temperature", 583.15)
  1691. elements.property(elements.DEFAULT_PT_GAS, "HighTemperature", 10000)
  1692. elements.property(elements.DEFAULT_PT_OIL, "HighTemperature", 573.15)
  1693. elements.property(elements.DEFAULT_PT_OIL, "HighTemperatureTransition", elements.DEFAULT_PT_GAS)
  1694. elements.property(elements.DEFAULT_PT_DESL, "HighTemperatureTransition", elements.JWARD_PT_DSLV)
  1695. elements.property(elements.DEFAULT_PT_DESL, "HighTemperature", 473.15)
  1696. elements.property(elements.DEFAULT_PT_DESL, "LowTemperature", 255.15)
  1697. elements.property(elements.DEFAULT_PT_DESL, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  1698. elements.property(elements.DEFAULT_PT_HYGN, "LowTemperature", 14)
  1699. elements.property(elements.DEFAULT_PT_HYGN, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  1700. elements.property(elements.DEFAULT_PT_NBLE, "LowTemperature", 1)
  1701. elements.property(elements.DEFAULT_PT_NBLE, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  1702. elements.property(elements.DEFAULT_PT_COAL, "HighPressure", 122)
  1703. elements.property(elements.DEFAULT_PT_COAL, "HighPressureTransition", elements.DEFAULT_PT_DMND)
  1704. elements.property(elements.DEFAULT_PT_BCOL, "HighPressure", 122)
  1705. elements.property(elements.DEFAULT_PT_BCOL, "HighPressureTransition", elements.DEFAULT_PT_DMND)
  1706. elements.property(elements.JWARD_PT_COKE, "HighPressure", 122)
  1707. elements.property(elements.JWARD_PT_COKE, "HighPressureTransition", elements.DEFAULT_PT_DMND)
  1708. elements.property(elements.JWARD_PT_COKE, "HighTemperature", 4373.15)
  1709. elements.property(elements.JWARD_PT_COKE, "HighTemperatureTransition", elements.DEFAULT_PT_CO2)
  1710. elements.property(elements.DEFAULT_PT_URAN, "HighTemperature", 1405)
  1711. elements.property(elements.DEFAULT_PT_URAN, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
  1712. elements.property(elements.DEFAULT_PT_PLUT, "HighTemperature", 912)
  1713. elements.property(elements.DEFAULT_PT_PLUT, "HighTemperatureTransition", elements.DEFAULT_PT_LAVA)
  1714. elements.property(elements.DEFAULT_PT_DEUT, "LowTemperature", 276)
  1715. elements.property(elements.DEFAULT_PT_DEUT, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  1716. buttonablest = 0
  1717.  end
  1718.  if  tpt.mousex >= 10 and tpt.mousey >= 150 and tpt.mousex <= 25 and tpt.mousey <= 165 then
  1719. elements.property(elements.DEFAULT_PT_ACID, "Diffusion", 0)
  1720. elements.property(elements.DEFAULT_PT_ACID, "Gravity", 0.1)
  1721. elements.property(elements.DEFAULT_PT_ACID, "Description", "Dissolves almost everything.")
  1722. elements.property(elements.DEFAULT_PT_ACID, "Flammable", 40)
  1723. elements.property(elements.DEFAULT_PT_INSL, "Hardness", 10)
  1724. elements.property(elements.DEFAULT_PT_INSL, "Flammable", 7)
  1725. elements.property(elements.DEFAULT_PT_LN2, "HighTemperature", 77)
  1726. elements.property(elements.DEFAULT_PT_LN2, "HighTemperatureTransition", elements.DEFAULT_PT_NONE)
  1727. elements.property(elements.DEFAULT_PT_WATR, "Hardness", 20)
  1728. elements.property(elements.DEFAULT_PT_WATR, "Weight", 30)
  1729. elements.property(elements.DEFAULT_PT_DSTW, "Hardness", 20)
  1730. elements.property(elements.DEFAULT_PT_DSTW, "Weight", 30)
  1731. elements.property(elements.DEFAULT_PT_SLTW, "Hardness", 20)
  1732. elements.property(elements.DEFAULT_PT_SLTW, "Weight", 35)
  1733. elements.property(elements.DEFAULT_PT_BUBW, "Hardness", 20)
  1734. elements.property(elements.DEFAULT_PT_BUBW, "Weight", 30)
  1735. elements.property(elements.DEFAULT_PT_GAS, "HighPressureTransition", elements.DEFAULT_PT_OIL)
  1736. elements.property(elements.DEFAULT_PT_GAS, "LowTemperature", 0)
  1737. elements.property(elements.DEFAULT_PT_GAS, "HotAir", 0.001)
  1738. elements.property(elements.DEFAULT_PT_GAS, "LowTemperatureTransition", DEFAULT_PT_GAS)
  1739. elements.property(elements.DEFAULT_PT_GAS, "HighTemperatureTransition", elements.DEFAULT_PT_FIRE)
  1740. elements.property(elements.DEFAULT_PT_GAS, "Temperature", 273.15)
  1741. elements.property(elements.DEFAULT_PT_GAS, "HighTemperature", 573)
  1742. elements.property(elements.DEFAULT_PT_GAS, "HighPressure", 6)
  1743. elements.property(elements.DEFAULT_PT_OIL, "HighTemperature", 333)
  1744. elements.property(elements.DEFAULT_PT_OIL, "HighTemperatureTransition", elements.DEFAULT_PT_GAS)
  1745. elements.property(elements.DEFAULT_PT_DESL, "LowTemperature", NT)
  1746. elements.property(elements.DEFAULT_PT_DESL, "LowTemperatureTransition", ITL)
  1747. elements.property(elements.DEFAULT_PT_DESL, "Weight", 15)
  1748. elements.property(elements.DEFAULT_PT_DESL, "HighPressure", 2)
  1749. elements.property(elements.DEFAULT_PT_NITR, "Hardness", 3)
  1750. buttonable = 0
  1751.  end
  1752.  if  tpt.mousex >= 35 and tpt.mousey >= 150 and tpt.mousex <= 50 and tpt.mousey <= 165 then
  1753.  elements.property(elements.DEFAULT_PT_ACID, "Diffusion", 1.2)
  1754. elements.property(elements.DEFAULT_PT_ACID, "Gravity", 0.62)
  1755. elements.property(elements.DEFAULT_PT_ACID, "Description", "Bubbling caustic liquid.")
  1756. elements.property(elements.DEFAULT_PT_ACID, "Flammable", 0)
  1757. elements.property(elements.DEFAULT_PT_INSL, "Hardness", 0)
  1758. elements.property(elements.DEFAULT_PT_INSL, "Flammable", 0)
  1759. elements.property(elements.DEFAULT_PT_LN2, "HighTemperature", 76)
  1760. elements.property(elements.DEFAULT_PT_LN2, "HighTemperatureTransition", elements.JWARD_PT_N2)
  1761. elements.property(elements.DEFAULT_PT_WATR, "Hardness", 0.25)
  1762. elements.property(elements.DEFAULT_PT_WATR, "Weight", 32)
  1763. elements.property(elements.DEFAULT_PT_DSTW, "Hardness", 0)
  1764. elements.property(elements.DEFAULT_PT_DSTW, "Weight", 32)
  1765. elements.property(elements.DEFAULT_PT_SLTW, "Hardness", 0)
  1766. elements.property(elements.DEFAULT_PT_SLTW, "Weight", 32)
  1767. elements.property(elements.DEFAULT_PT_BUBW, "Hardness", 0)
  1768. elements.property(elements.DEFAULT_PT_BUBW, "Weight", 32)
  1769. elements.property(elements.DEFAULT_PT_GAS, "HighPressureTransition", 256)
  1770. elements.property(elements.DEFAULT_PT_GAS, "LowTemperature", 573.15)
  1771. elements.property(elements.DEFAULT_PT_GAS, "HotAir", 0)
  1772. elements.property(elements.DEFAULT_PT_GAS, "LowTemperatureTransition", elements.DEFAULT_PT_OIL)
  1773. elements.property(elements.DEFAULT_PT_GAS, "HighTemperatureTransition", NT)
  1774. elements.property(elements.DEFAULT_PT_GAS, "Temperature", 583.15)
  1775. elements.property(elements.DEFAULT_PT_GAS, "HighTemperature", 10000)
  1776. elements.property(elements.DEFAULT_PT_OIL, "HighTemperature", 573.15)
  1777. elements.property(elements.DEFAULT_PT_OIL, "HighTemperatureTransition", elements.DEFAULT_PT_GAS)
  1778. elements.property(elements.DEFAULT_PT_DESL, "HighTemperatureTransition", elements.JWARD_PT_DSLV)
  1779. elements.property(elements.DEFAULT_PT_DESL, "HighTemperature", 473.15)
  1780. elements.property(elements.DEFAULT_PT_DESL, "LowTemperature", 255.15)
  1781. elements.property(elements.DEFAULT_PT_DESL, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  1782. elements.property(elements.DEFAULT_PT_DESL, "Weight", 12)
  1783. elements.property(elements.DEFAULT_PT_DESL, "HighPressure", 256)
  1784. elements.property(elements.DEFAULT_PT_NITR, "Hardness", 0)
  1785. buttonable = 1
  1786.  end
  1787.  tpt.set_pause(1)
  1788.  toopress = 1
  1789.  return false
  1790.  else
  1791.  toopress = 0
  1792.  return true
  1793. end
  1794. end
  1795. end
  1796.  
  1797. tpt.register_mouseclick(pressthingy)
  1798. tpt.register_mouseclick(tick)
  1799. tpt.register_step(tick)
  1800.  
  1801. --default editing
  1802. elements.property(elements.DEFAULT_PT_TNT, "HighTemperatureTransition", elements.JWARD_PT_LTNT)
  1803. elements.property(elements.DEFAULT_PT_TNT, "HighTemperature", 353.25)
  1804. elements.property(elements.DEFAULT_PT_HYGN, "LowTemperature", 20.15)
  1805. elements.property(elements.DEFAULT_PT_HYGN, "LowTemperatureTransition", elements.JWARD_PT_LHYG)
  1806. elements.property(elements.DEFAULT_PT_ACID, "Flammable", 0)
  1807. elements.property(elements.DEFAULT_PT_DMND, "MenuSection", 9)
  1808. elements.property(elements.DEFAULT_PT_MORT, "MenuVisible", 1)
  1809. elements.property(elements.DEFAULT_PT_MORT, "MenuSection", 8)
  1810. elements.property(elements.DEFAULT_PT_INSL, "Hardness", 0)
  1811. elements.property(elements.DEFAULT_PT_NITR, "Hardness", 0)
  1812. elements.property(elements.DEFAULT_PT_INSL, "Flammable", 0)
  1813. elements.property(elements.DEFAULT_PT_WATR, "Hardness", 0.25)
  1814. elements.property(elements.DEFAULT_PT_DSTW, "Hardness", 0)
  1815. elements.property(elements.DEFAULT_PT_SLTW, "Hardness", 0)
  1816. elements.property(elements.DEFAULT_PT_BUBW, "Hardness", 0)
  1817. elements.property(elements.DEFAULT_PT_WATR, "Weight", 32)
  1818. elements.property(elements.DEFAULT_PT_DSTW, "Weight", 32)
  1819. elements.property(elements.DEFAULT_PT_SLTW, "Weight", 32)
  1820. elements.property(elements.DEFAULT_PT_BUBW, "Weight", 32)
  1821. elements.property(elements.DEFAULT_PT_ACID, "Weight", 32)
  1822. elements.property(elements.DEFAULT_PT_ACID, "Diffusion", 1.2)
  1823. elements.property(elements.DEFAULT_PT_ACID, "Description", "Bubbling caustic liquid.")
  1824. elements.property(elements.DEFAULT_PT_ACID, "Gravity", 0.62)
  1825. elements.property(elements.DEFAULT_PT_DESL, "HighPressure", 256)
  1826. elements.property(elements.DEFAULT_PT_GAS, "HighPressureTransition", 256)
  1827. elements.property(elements.DEFAULT_PT_GAS, "LowTemperature", 573.15)
  1828. elements.property(elements.DEFAULT_PT_GAS, "HotAir", 0)
  1829. elements.property(elements.DEFAULT_PT_GAS, "LowTemperatureTransition", elements.DEFAULT_PT_OIL)
  1830. elements.property(elements.DEFAULT_PT_GAS, "Temperature", 583.15)
  1831. elements.property(elements.DEFAULT_PT_GAS, "HighTemperature", 10000)
  1832. elements.property(elements.DEFAULT_PT_OIL, "HighTemperature", 573.15)
  1833. elements.property(elements.DEFAULT_PT_OIL, "HighTemperatureTransition", elements.DEFAULT_PT_GAS)
  1834. elements.property(elements.DEFAULT_PT_DESL, "HighTemperatureTransition", elements.JWARD_PT_DSLV)
  1835. elements.property(elements.DEFAULT_PT_DESL, "HighTemperature", 473.15)
  1836. elements.property(elements.DEFAULT_PT_DESL, "LowTemperature", 255.15)
  1837. elements.property(elements.DEFAULT_PT_DESL, "LowTemperatureTransition", elements.DEFAULT_PT_ICE)
  1838. elements.property(elements.DEFAULT_PT_DESL, "Weight", 12)
  1839. elements.property(elements.DEFAULT_PT_MWAX, "HighTemperatureTransition", elements.JWARD_PT_WAXV)
  1840. elements.property(elements.DEFAULT_PT_MWAX, "HighTemperature", 643.15)
  1841. elements.property(elements.DEFAULT_PT_WAX, "HeatConduct", 25)
RAW Paste Data