Advertisement
-Amy-

TPTsMod Version 1 Update 2

Apr 5th, 2014
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 61.82 KB | None | 0 0
  1.  
  2. --TPT's Mod
  3. --Please use cracker64's script manager
  4. --VER 1.2 UPDATE http://pastebin.com/raw.php?i=jQZ58x68
  5.  
  6. --Version 1.2
  7.  
  8. function DrawHUD()
  9. --graphics.drawText(6, 6, os.date("%a %b %d, %l:%M:%S %p"), 61, 200, 225, 200)
  10. graphics.drawText(6, 6, os.date(), 61, 200, 225, 200)
  11. graphics.drawText(150, 6, "Click CR Tab For Info/Credits", 61, 200, 225, 200)
  12. end
  13.  
  14. --Remove the -- in front of line 8 if you are using OSX or Linux. Then, place -- at start of line 9.
  15.  
  16. tpt.register_step(DrawHUD)
  17.  
  18. --Draws starting texts
  19.  
  20. print("TPT's Mod")
  21. print("Version 1")
  22. print("Update 2")
  23. print("Created by Amy. All elements were reprogrammed and compiled into a single file.")
  24. print("Contact via email or http://powdertoy.co.uk")
  25.  
  26. --TUNG Mod :D
  27.  
  28. function moo(i, x, y, surround_space, nt)
  29. if sim.pressure(x/4, y/4)<-7 and sim.partProperty(i, sim.FIELD_LIFE)~=0 and surround_space~=0 then
  30. sim.partCreate(-1, x+math.random(-3,3), y+math.random(-3,3), elem.DEFAULT_PT_ELEC) end
  31. end
  32. tpt.element_func(moo, tpt.el.tung.id, 0)
  33.  
  34. tpt.el.tung.description="Tungsten. Brittle metal with a very high melting point. When sparked under a pressure of -7, emits electrons."
  35.  
  36. --METR Element
  37.  
  38. local METR = elements.allocate("ELEMENT", "METR")
  39. elements.element(elements.ELEMENT_PT_METR, elements.element(elements.DEFAULT_PT_ELEC))
  40. elements.property(elements.ELEMENT_PT_METR, "Name", "METR")
  41. elements.property(elements.ELEMENT_PT_METR, "Description", "Meteors, Explode on impact. Use sparingly.")
  42. elements.property(elements.ELEMENT_PT_METR, "Colour", 0xFF7A0002)
  43. elements.property(elements.ELEMENT_PT_METR, "MenuSection", elem.SC_EXPLOSIVE)
  44. elements.property(elements.ELEMENT_PT_METR, "MenuVisible", 1)
  45. elements.property(elements.ELEMENT_PT_METR, "Weight", 100)
  46. elements.property(elements.ELEMENT_PT_METR, "Temperature", 9999)
  47. local function graphics1(i, colr, colg, colb)
  48. return 1,0x00010000,255,225,0,210,255,255,255,255
  49. end
  50. tpt.graphics_func(graphics1,METR)
  51.  
  52. local function get_property(prop, x, y)
  53. if x >= 0 and x < sim.XRES and y >=0 and y < sim.YRES then
  54. return tpt.get_property(prop, x, y)
  55. end
  56. return 0
  57. end
  58.  
  59. math.randomseed(os.time())
  60. function metr_update(i, x, y, s, n)
  61. if tpt.get_property("tmp",i)==0 then
  62. tpt.parts[i].tmp=1
  63. randvel=math.random(-20,20)/10
  64. tpt.parts[i].vx=randvel
  65. tpt.parts[i].vy=math.sqrt(8-(randvel^2))
  66. end
  67.  
  68. xvel=tpt.get_property("vx",i)/2
  69. yvel=tpt.get_property("vy",i)/2
  70. if yvel <= 0 or math.abs(xvel) > 1 then
  71. tpt.delete(i)
  72. end
  73.  
  74. xpos=x-xvel
  75. ypos=y-yvel
  76. elemtype=get_property("type",xpos,ypos)
  77.  
  78. if elemtype == 0 then
  79. tpt.create(xpos,ypos,"bray")
  80. tpt.set_property("temp",5000,xpos,ypos)
  81. end
  82. tpt.parts[i].temp=9999
  83.  
  84. elemtype25=get_property("type",x+xvel*5,y+yvel*5)
  85. elemtype24=get_property("type",x+xvel*4,y+yvel*4)
  86. elemtype23=get_property("type",x+xvel*3,y+yvel*3)
  87. elemtype22=get_property("type",x+xvel*2,y+yvel*2)
  88. elemtype21=get_property("type",x+xvel,y+yvel)
  89. if elemtype25 ~= 0 and elemtype25 ~= elements.ELEMENT_PT_METR and elemtype25 ~= tpt.el.bray.id and elemtype25 ~= tpt.el.dmnd.id and elemtype25 ~= tpt.el.void.id then
  90. tpt.set_property("type","bomb",i)
  91. tpt.set_property("life",0,i)
  92. tpt.set_property("tmp",0,i)
  93. elseif elemtype24 ~= 0 and elemtype24 ~= elements.ELEMENT_PT_METR and elemtype24 ~= tpt.el.bray.id and elemtype24 ~= tpt.el.dmnd.id and elemtype24 ~= tpt.el.void.id then
  94. tpt.set_property("type","bomb",i)
  95. tpt.set_property("life",0,i)
  96. tpt.set_property("tmp",0,i)
  97. elseif elemtype23 ~= 0 and elemtype23 ~= elements.ELEMENT_PT_METR and elemtype23 ~= tpt.el.bray.id and elemtype23 ~= tpt.el.dmnd.id and elemtype23 ~= tpt.el.void.id then
  98. tpt.set_property("type","bomb",i)
  99. tpt.set_property("life",0,i)
  100. tpt.set_property("tmp",0,i)
  101. elseif elemtype22 ~= 0 and elemtype22 ~= elements.ELEMENT_PT_METR and elemtype22 ~= tpt.el.bray.id and elemtype22 ~= tpt.el.dmnd.id and elemtype22 ~= tpt.el.void.id then
  102. tpt.set_property("type","bomb",i)
  103. tpt.set_property("life",0,i)
  104. tpt.set_property("tmp",0,i)
  105. elseif elemtype21 ~= 0 and elemtype21 ~= elements.ELEMENT_PT_METR and elemtype21 ~= tpt.el.bray.id and elemtype21 ~= tpt.el.dmnd.id and elemtype21 ~= tpt.el.void.id then
  106. tpt.set_property("type","bomb",i)
  107. tpt.set_property("life",0,i)
  108. tpt.set_property("tmp",0,i)
  109. end
  110. end
  111.  
  112. tpt.element_func(metr_update, elements.ELEMENT_PT_METR,1)
  113.  
  114. --BMBR Element {Amy}
  115.  
  116. local BMBR = elements.allocate("ELEMENT", "BMBR")
  117. elements.element(elements.ELEMENT_PT_BMBR, elements.element(elements.DEFAULT_PT_ELEC))
  118. elements.property(elements.ELEMENT_PT_BMBR, "Name", "BMBR")
  119. elements.property(elements.ELEMENT_PT_BMBR, "Description", "Right Shooting Bomb.")
  120. elements.property(elements.ELEMENT_PT_BMBR, "Colour", 0xFF31CBD9)
  121. elements.property(elements.ELEMENT_PT_BMBR, "MenuSection", elem.SC_EXPLOSIVE)
  122. elements.property(elements.ELEMENT_PT_BMBR, "MenuVisible", 1)
  123. elements.property(elements.ELEMENT_PT_BMBR, "Weight", 100)
  124. elements.property(elements.ELEMENT_PT_BMBR, "Temperature", 9999)
  125. local function graphics1(i, colr, colg, colb)
  126. return 1,0x00010000,255,225,0,210,255,255,255,255
  127. end
  128. tpt.graphics_func(graphics1,BMBR)
  129.  
  130. local function get_property(prop, x, y)
  131. if x >= 0 and x < sim.XRES and y >=0 and y < sim.YRES then
  132. return tpt.get_property(prop, x, y)
  133. end
  134. return 0
  135. end
  136.  
  137. math.randomseed(os.time())
  138. function BMBR_update(i, x, y, s, n)
  139. if tpt.get_property("tmp",i)==0 then
  140. tpt.parts[i].tmp=1
  141. --randvel=math.random(-20,20)/10
  142. tpt.parts[i].vx=3
  143. tpt.parts[i].vy=0
  144. end
  145.  
  146. xvel=3
  147. yvel=0
  148. if math.abs(xvel) < 1 then
  149. tpt.delete(i)
  150. end
  151.  
  152. xpos=x-xvel
  153. ypos=y-yvel
  154. elemtype=get_property("type",xpos,ypos)
  155.  
  156. if elemtype == 0 then
  157. tpt.create(xpos,ypos,"bray")
  158. tpt.set_property("temp",5000,xpos,ypos)
  159. end
  160. tpt.parts[i].temp=9999
  161.  
  162. elemtype25=get_property("type",x+xvel*5,y+yvel*5)
  163. elemtype24=get_property("type",x+xvel*4,y+yvel*4)
  164. elemtype23=get_property("type",x+xvel*3,y+yvel*3)
  165. elemtype22=get_property("type",x+xvel*2,y+yvel*2)
  166. elemtype21=get_property("type",x+xvel,y+yvel)
  167. if elemtype25 ~= 0 and elemtype25 ~= elements.ELEMENT_PT_BMBR and elemtype25 ~= tpt.el.bray.id and elemtype25 ~= tpt.el.dmnd.id and elemtype25 ~= tpt.el.void.id then
  168. tpt.set_property("type","bomb",i)
  169. tpt.set_property("life",0,i)
  170. tpt.set_property("tmp",0,i)
  171. elseif elemtype24 ~= 0 and elemtype24 ~= elements.ELEMENT_PT_BMBR and elemtype24 ~= tpt.el.bray.id and elemtype24 ~= tpt.el.dmnd.id and elemtype24 ~= tpt.el.void.id then
  172. tpt.set_property("type","bomb",i)
  173. tpt.set_property("life",0,i)
  174. tpt.set_property("tmp",0,i)
  175. elseif elemtype23 ~= 0 and elemtype23 ~= elements.ELEMENT_PT_BMBR and elemtype23 ~= tpt.el.bray.id and elemtype23 ~= tpt.el.dmnd.id and elemtype23 ~= tpt.el.void.id then
  176. tpt.set_property("type","bomb",i)
  177. tpt.set_property("life",0,i)
  178. tpt.set_property("tmp",0,i)
  179. elseif elemtype22 ~= 0 and elemtype22 ~= elements.ELEMENT_PT_BMBR and elemtype22 ~= tpt.el.bray.id and elemtype22 ~= tpt.el.dmnd.id and elemtype22 ~= tpt.el.void.id then
  180. tpt.set_property("type","bomb",i)
  181. tpt.set_property("life",0,i)
  182. tpt.set_property("tmp",0,i)
  183. elseif elemtype21 ~= 0 and elemtype21 ~= elements.ELEMENT_PT_BMBR and elemtype21 ~= tpt.el.bray.id and elemtype21 ~= tpt.el.dmnd.id and elemtype21 ~= tpt.el.void.id then
  184. tpt.set_property("type","bomb",i)
  185. tpt.set_property("life",0,i)
  186. tpt.set_property("tmp",0,i)
  187. end
  188. end
  189.  
  190. tpt.element_func(BMBR_update, elements.ELEMENT_PT_BMBR,1)
  191.  
  192. --BMBL Element {Amy}
  193.  
  194. local BMBL = elements.allocate("ELEMENT", "BMBL")
  195. elements.element(elements.ELEMENT_PT_BMBL, elements.element(elements.DEFAULT_PT_ELEC))
  196. elements.property(elements.ELEMENT_PT_BMBL, "Name", "BMBL")
  197. elements.property(elements.ELEMENT_PT_BMBL, "Description", "Left Shooting Bomb.")
  198. elements.property(elements.ELEMENT_PT_BMBL, "Colour", 0xFF20878E)
  199. elements.property(elements.ELEMENT_PT_BMBL, "MenuSection", elem.SC_EXPLOSIVE)
  200. elements.property(elements.ELEMENT_PT_BMBL, "MenuVisible", 1)
  201. elements.property(elements.ELEMENT_PT_BMBL, "Weight", 100)
  202. elements.property(elements.ELEMENT_PT_BMBL, "Temperature", 9999)
  203. local function graphics1(i, colr, colg, colb)
  204. return 1,0x00010000,255,225,0,210,255,255,255,255
  205. end
  206. tpt.graphics_func(graphics1,BMBL)
  207.  
  208. local function get_property(prop, x, y)
  209. if x >= 0 and x < sim.XRES and y >=0 and y < sim.YRES then
  210. return tpt.get_property(prop, x, y)
  211. end
  212. return 0
  213. end
  214.  
  215. math.randomseed(os.time())
  216. function BMBL_update(i, x, y, s, n)
  217. if tpt.get_property("tmp",i)==0 then
  218. tpt.parts[i].tmp=1
  219. --randvel=math.random(-20,20)/10
  220. tpt.parts[i].vx=-3
  221. tpt.parts[i].vy=0
  222. end
  223.  
  224. xvel=-3
  225. yvel=0
  226. if math.abs(xvel) < 1 then
  227. tpt.delete(i)
  228. end
  229.  
  230. xpos=x-xvel
  231. ypos=y-yvel
  232. elemtype=get_property("type",xpos,ypos)
  233.  
  234. if elemtype == 0 then
  235. tpt.create(xpos,ypos,"bray")
  236. tpt.set_property("temp",5000,xpos,ypos)
  237. end
  238. tpt.parts[i].temp=9999
  239.  
  240. elemtype25=get_property("type",x+xvel*5,y+yvel*5)
  241. elemtype24=get_property("type",x+xvel*4,y+yvel*4)
  242. elemtype23=get_property("type",x+xvel*3,y+yvel*3)
  243. elemtype22=get_property("type",x+xvel*2,y+yvel*2)
  244. elemtype21=get_property("type",x+xvel,y+yvel)
  245. if elemtype25 ~= 0 and elemtype25 ~= elements.ELEMENT_PT_BMBL and elemtype25 ~= tpt.el.bray.id and elemtype25 ~= tpt.el.dmnd.id and elemtype25 ~= tpt.el.void.id then
  246. tpt.set_property("type","bomb",i)
  247. tpt.set_property("life",0,i)
  248. tpt.set_property("tmp",0,i)
  249. elseif elemtype24 ~= 0 and elemtype24 ~= elements.ELEMENT_PT_BMBL and elemtype24 ~= tpt.el.bray.id and elemtype24 ~= tpt.el.dmnd.id and elemtype24 ~= tpt.el.void.id then
  250. tpt.set_property("type","bomb",i)
  251. tpt.set_property("life",0,i)
  252. tpt.set_property("tmp",0,i)
  253. elseif elemtype23 ~= 0 and elemtype23 ~= elements.ELEMENT_PT_BMBL and elemtype23 ~= tpt.el.bray.id and elemtype23 ~= tpt.el.dmnd.id and elemtype23 ~= tpt.el.void.id then
  254. tpt.set_property("type","bomb",i)
  255. tpt.set_property("life",0,i)
  256. tpt.set_property("tmp",0,i)
  257. elseif elemtype22 ~= 0 and elemtype22 ~= elements.ELEMENT_PT_BMBL and elemtype22 ~= tpt.el.bray.id and elemtype22 ~= tpt.el.dmnd.id and elemtype22 ~= tpt.el.void.id then
  258. tpt.set_property("type","bomb",i)
  259. tpt.set_property("life",0,i)
  260. tpt.set_property("tmp",0,i)
  261. elseif elemtype21 ~= 0 and elemtype21 ~= elements.ELEMENT_PT_BMBL and elemtype21 ~= tpt.el.bray.id and elemtype21 ~= tpt.el.dmnd.id and elemtype21 ~= tpt.el.void.id then
  262. tpt.set_property("type","bomb",i)
  263. tpt.set_property("life",0,i)
  264. tpt.set_property("tmp",0,i)
  265. end
  266. end
  267.  
  268. tpt.element_func(BMBL_update, elements.ELEMENT_PT_BMBL,1)
  269.  
  270. --MRTR {Amy}
  271.  
  272. local MRTR = elements.allocate("ELEMENT", "MRTR")
  273. elements.element(elements.ELEMENT_PT_MRTR, elements.element(elements.DEFAULT_PT_ELEC))
  274. elements.property(elements.ELEMENT_PT_MRTR, "Name", "MRTR")
  275. elements.property(elements.ELEMENT_PT_MRTR, "Description", "Mortar Right.")
  276. elements.property(elements.ELEMENT_PT_MRTR, "Colour", 0xFF2E01E3)
  277. elements.property(elements.ELEMENT_PT_MRTR, "MenuSection", elem.SC_EXPLOSIVE)
  278. elements.property(elements.ELEMENT_PT_MRTR, "MenuVisible", 1)
  279. elements.property(elements.ELEMENT_PT_MRTR, "Weight", 100)
  280. elements.property(elements.ELEMENT_PT_MRTR, "Temperature", 9999)
  281. local function graphics1(i, colr, colg, colb)
  282. return 1,0x00010000,255,225,0,210,255,255,255,255
  283. end
  284. tpt.graphics_func(graphics1,MRTR)
  285.  
  286. local function get_property(prop, x, y)
  287. if x >= 0 and x < sim.XRES and y >=0 and y < sim.YRES then
  288. return tpt.get_property(prop, x, y)
  289. end
  290. return 0
  291. end
  292.  
  293. math.randomseed(os.time())
  294. function MRTR_update(i, x, y, s, n)
  295. if tpt.get_property("tmp",i)==0 then
  296. tpt.parts[i].tmp=1
  297. --randvel=math.random(-20,20)/10
  298. tpt.parts[i].vx=3
  299. tpt.parts[i].vy=3
  300. end
  301.  
  302. xvel=3
  303. yvel=3
  304. if math.abs(xvel) < 1 then
  305. tpt.delete(i)
  306. end
  307.  
  308. xpos=x-xvel
  309. ypos=y-yvel
  310. elemtype=get_property("type",xpos,ypos)
  311.  
  312. if elemtype == 0 then
  313. tpt.create(xpos,ypos,"bray")
  314. tpt.set_property("temp",5000,xpos,ypos)
  315. end
  316. tpt.parts[i].temp=9999
  317.  
  318. elemtype25=get_property("type",x+xvel*5,y+yvel*5)
  319. elemtype24=get_property("type",x+xvel*4,y+yvel*4)
  320. elemtype23=get_property("type",x+xvel*3,y+yvel*3)
  321. elemtype22=get_property("type",x+xvel*2,y+yvel*2)
  322. elemtype21=get_property("type",x+xvel,y+yvel)
  323. if elemtype25 ~= 0 and elemtype25 ~= elements.ELEMENT_PT_MRTR and elemtype25 ~= tpt.el.bray.id and elemtype25 ~= tpt.el.dmnd.id and elemtype25 ~= tpt.el.void.id then
  324. tpt.set_property("type","bomb",i)
  325. tpt.set_property("life",0,i)
  326. tpt.set_property("tmp",0,i)
  327. elseif elemtype24 ~= 0 and elemtype24 ~= elements.ELEMENT_PT_MRTR and elemtype24 ~= tpt.el.bray.id and elemtype24 ~= tpt.el.dmnd.id and elemtype24 ~= tpt.el.void.id then
  328. tpt.set_property("type","bomb",i)
  329. tpt.set_property("life",0,i)
  330. tpt.set_property("tmp",0,i)
  331. elseif elemtype23 ~= 0 and elemtype23 ~= elements.ELEMENT_PT_MRTR and elemtype23 ~= tpt.el.bray.id and elemtype23 ~= tpt.el.dmnd.id and elemtype23 ~= tpt.el.void.id then
  332. tpt.set_property("type","bomb",i)
  333. tpt.set_property("life",0,i)
  334. tpt.set_property("tmp",0,i)
  335. elseif elemtype22 ~= 0 and elemtype22 ~= elements.ELEMENT_PT_MRTR and elemtype22 ~= tpt.el.bray.id and elemtype22 ~= tpt.el.dmnd.id and elemtype22 ~= tpt.el.void.id then
  336. tpt.set_property("type","bomb",i)
  337. tpt.set_property("life",0,i)
  338. tpt.set_property("tmp",0,i)
  339. elseif elemtype21 ~= 0 and elemtype21 ~= elements.ELEMENT_PT_MRTR and elemtype21 ~= tpt.el.bray.id and elemtype21 ~= tpt.el.dmnd.id and elemtype21 ~= tpt.el.void.id then
  340. tpt.set_property("type","bomb",i)
  341. tpt.set_property("life",0,i)
  342. tpt.set_property("tmp",0,i)
  343. end
  344. end
  345.  
  346. tpt.element_func(MRTR_update, elements.ELEMENT_PT_MRTR,1)
  347.  
  348. --MRTL {Amy}
  349.  
  350. local MRTL = elements.allocate("ELEMENT", "MRTL")
  351. elements.element(elements.ELEMENT_PT_MRTL, elements.element(elements.DEFAULT_PT_ELEC))
  352. elements.property(elements.ELEMENT_PT_MRTL, "Name", "MRTL")
  353. elements.property(elements.ELEMENT_PT_MRTL, "Description", "Motar Left.")
  354. elements.property(elements.ELEMENT_PT_MRTL, "Colour", 0xFF5068E4)
  355. elements.property(elements.ELEMENT_PT_MRTL, "MenuSection", elem.SC_EXPLOSIVE)
  356. elements.property(elements.ELEMENT_PT_MRTL, "MenuVisible", 1)
  357. elements.property(elements.ELEMENT_PT_MRTL, "Weight", 100)
  358. elements.property(elements.ELEMENT_PT_MRTL, "Temperature", 9999)
  359. local function graphics1(i, colr, colg, colb)
  360. return 1,0x00010000,255,225,0,210,255,255,255,255
  361. end
  362. tpt.graphics_func(graphics1,MRTL)
  363.  
  364. local function get_property(prop, x, y)
  365. if x >= 0 and x < sim.XRES and y >=0 and y < sim.YRES then
  366. return tpt.get_property(prop, x, y)
  367. end
  368. return 0
  369. end
  370.  
  371. math.randomseed(os.time())
  372. function MRTL_update(i, x, y, s, n)
  373. if tpt.get_property("tmp",i)==0 then
  374. tpt.parts[i].tmp=1
  375. --randvel=math.random(-20,20)/10
  376. tpt.parts[i].vx=-3
  377. tpt.parts[i].vy=3
  378. end
  379.  
  380. xvel=-3
  381. yvel=3
  382. if math.abs(xvel) < 1 then
  383. tpt.delete(i)
  384. end
  385.  
  386. xpos=x-xvel
  387. ypos=y-yvel
  388. elemtype=get_property("type",xpos,ypos)
  389.  
  390. if elemtype == 0 then
  391. tpt.create(xpos,ypos,"bray")
  392. tpt.set_property("temp",5000,xpos,ypos)
  393. end
  394. tpt.parts[i].temp=9999
  395.  
  396. elemtype25=get_property("type",x+xvel*5,y+yvel*5)
  397. elemtype24=get_property("type",x+xvel*4,y+yvel*4)
  398. elemtype23=get_property("type",x+xvel*3,y+yvel*3)
  399. elemtype22=get_property("type",x+xvel*2,y+yvel*2)
  400. elemtype21=get_property("type",x+xvel,y+yvel)
  401. if elemtype25 ~= 0 and elemtype25 ~= elements.ELEMENT_PT_MRTL and elemtype25 ~= tpt.el.bray.id and elemtype25 ~= tpt.el.dmnd.id and elemtype25 ~= tpt.el.void.id then
  402. tpt.set_property("type","bomb",i)
  403. tpt.set_property("life",0,i)
  404. tpt.set_property("tmp",0,i)
  405. elseif elemtype24 ~= 0 and elemtype24 ~= elements.ELEMENT_PT_MRTL and elemtype24 ~= tpt.el.bray.id and elemtype24 ~= tpt.el.dmnd.id and elemtype24 ~= tpt.el.void.id then
  406. tpt.set_property("type","bomb",i)
  407. tpt.set_property("life",0,i)
  408. tpt.set_property("tmp",0,i)
  409. elseif elemtype23 ~= 0 and elemtype23 ~= elements.ELEMENT_PT_MRTL and elemtype23 ~= tpt.el.bray.id and elemtype23 ~= tpt.el.dmnd.id and elemtype23 ~= tpt.el.void.id then
  410. tpt.set_property("type","bomb",i)
  411. tpt.set_property("life",0,i)
  412. tpt.set_property("tmp",0,i)
  413. elseif elemtype22 ~= 0 and elemtype22 ~= elements.ELEMENT_PT_MRTL and elemtype22 ~= tpt.el.bray.id and elemtype22 ~= tpt.el.dmnd.id and elemtype22 ~= tpt.el.void.id then
  414. tpt.set_property("type","bomb",i)
  415. tpt.set_property("life",0,i)
  416. tpt.set_property("tmp",0,i)
  417. elseif elemtype21 ~= 0 and elemtype21 ~= elements.ELEMENT_PT_MRTL and elemtype21 ~= tpt.el.bray.id and elemtype21 ~= tpt.el.dmnd.id and elemtype21 ~= tpt.el.void.id then
  418. tpt.set_property("type","bomb",i)
  419. tpt.set_property("life",0,i)
  420. tpt.set_property("tmp",0,i)
  421. end
  422. end
  423.  
  424. tpt.element_func(MRTL_update, elements.ELEMENT_PT_MRTL,1)
  425.  
  426. --PLSM Copy For Explosives {Amy}
  427.  
  428. local amy1 = elements.allocate("AMY", "IGNT")
  429. elements.element(elements.AMY_PT_IGNT, elements.element(elements.DEFAULT_PT_GAS))
  430. elements.property(elements.AMY_PT_IGNT, "Name", "IGNT")
  431. elements.property(elements.AMY_PT_IGNT, "Description", "Igniter. Use to ignite explosives, hotter than fire.")
  432. elements.property(elements.AMY_PT_IGNT, "Colour", 0xFFE52961)
  433. elements.property(elements.AMY_PT_IGNT, "MenuSection", 5)
  434. elements.property(elements.AMY_PT_IGNT, "MenuVisible", 1)
  435. elements.property(elements.AMY_PT_IGNT, "Temperature", 5000)
  436. elements.property(elements.AMY_PT_IGNT, "Weight", 0)
  437. elements.property(elements.AMY_PT_IGNT, "Flammable", 1)
  438. elements.property(elements.AMY_PT_IGNT, "Explosive", 0)
  439.  
  440. --Strong Metal {Amy}
  441.  
  442. local SNGM = elements.allocate("AMY", "SNGM")
  443. elements.element(elements.AMY_PT_SNGM, elements.element(elements.DEFAULT_PT_TTAN))
  444. elements.property(elements.AMY_PT_SNGM, "Name", "SNGM")
  445. elements.property(elements.AMY_PT_SNGM, "Description", "Extremely Strong Metal. Resists heat transfer.")
  446. elements.property(elements.AMY_PT_SNGM, "Colour", 0x474747)
  447. elements.property(elements.AMY_PT_SNGM, "MenuSection", elem.SC_SOLID)
  448. elements.property(elements.AMY_PT_SNGM, "MenuVisible", 1)
  449. elements.property(elements.AMY_PT_SNGM, "Weight", 1000)
  450. elements.property(elements.AMY_PT_SNGM, "Temperature", 293)
  451. elements.property(elements.AMY_PT_SNGM, "HeatConduct", 1)
  452. elements.property(elements.AMY_PT_SNGM, "HighTemperature", 7000)
  453.  
  454. --BPDR Element
  455.  
  456. local element1 = elements.allocate("FEYNMAN", "BPDR")
  457. elements.element(elements.FEYNMAN_PT_BPDR, elements.element(elements.DEFAULT_PT_BCOL))
  458. elements.property(elements.FEYNMAN_PT_BPDR, "Name", "BPDR")
  459. elements.property(elements.FEYNMAN_PT_BPDR, "Description", "Black Powder, Very explosive.")
  460. elements.property(elements.FEYNMAN_PT_BPDR, "Colour", 0x353535)
  461. elements.property(elements.FEYNMAN_PT_BPDR, "MenuSection", 5)
  462. elements.property(elements.FEYNMAN_PT_BPDR, "Gravity", .5)
  463. elements.property(elements.FEYNMAN_PT_BPDR, "Flammable", 10000)
  464. elements.property(elements.FEYNMAN_PT_BPDR, "Explosive", 1)
  465. elements.property(elements.FEYNMAN_PT_BPDR, "Loss", 1)
  466. elements.property(elements.FEYNMAN_PT_BPDR, "AirLoss", .5)
  467. elements.property(elements.FEYNMAN_PT_BPDR, "AirDrag", .01)
  468. elements.property(elements.FEYNMAN_PT_BPDR, "Advection", .01)
  469. elements.property(elements.FEYNMAN_PT_BPDR, "Weight", 0)
  470. elements.property(elements.FEYNMAN_PT_BPDR, "Diffusion", 0)
  471.  
  472. --Clouds Mod
  473.  
  474. local a = elements.allocate("MOD", "UCLD")
  475. elements.element(elements.MOD_PT_UCLD, elements.element(elements.DEFAULT_PT_HYGN))
  476. elements.property(elements.MOD_PT_UCLD, "Name", "UCLD")
  477. elements.property(elements.MOD_PT_UCLD, "Description", "Uranium Cloud. First type of radioactive cloud.")
  478. elements.property(elements.MOD_PT_UCLD, "Colour", 0xAAAAFF)
  479. elements.property(elements.MOD_PT_UCLD, "MenuSection", 10)
  480. elements.property(elements.MOD_PT_UCLD, "Gravity", 0)
  481. elements.property(elements.MOD_PT_UCLD, "Explosive", 0)
  482. elements.property(elements.MOD_PT_UCLD, "Weight", 0)
  483. elements.property(elements.MOD_PT_UCLD, "Diffusion", 1)
  484. elements.property(elements.MOD_PT_UCLD, "Hardness", 0)
  485. elements.property(elements.MOD_PT_UCLD, "Flammable", 0)
  486. elements.property(elements.MOD_PT_UCLD, "AirDrag", 0.01)
  487. function rain(i,x,y,s,n)
  488. if math.random(1,500) < 5 then
  489. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'uran')
  490. end
  491. if math.random(1,500) == 20 then
  492. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'boyl')
  493. end
  494. end
  495. tpt.element_func(rain,a)
  496.  
  497. local b = elements.allocate("MOD2", "RACD")
  498. elements.element(elements.MOD2_PT_RACD, elements.element(elements.DEFAULT_PT_HYGN))
  499. elements.property(elements.MOD2_PT_RACD, "Name", "RACD")
  500. elements.property(elements.MOD2_PT_RACD, "Description", "Rain Cloud.")
  501. elements.property(elements.MOD2_PT_RACD, "Colour", 0xA9ACB6)
  502. elements.property(elements.MOD2_PT_RACD, "MenuSection", 6)
  503. elements.property(elements.MOD2_PT_RACD, "Gravity", 0)
  504. elements.property(elements.MOD2_PT_RACD, "Explosive", 0)
  505. elements.property(elements.MOD2_PT_RACD, "Weight", 0)
  506. elements.property(elements.MOD2_PT_RACD, "Diffusion", 1)
  507. elements.property(elements.MOD2_PT_RACD, "Hardness", 0)
  508. elements.property(elements.MOD2_PT_RACD, "Flammable", 0)
  509. elements.property(elements.MOD2_PT_RACD, "AirDrag", 0.01)
  510. elements.property(elements.MOD2_PT_RACD, "LowTemperature", 273.15)
  511. elements.property(elements.MOD2_PT_RACD, "LowTemperatureTransition", "MOD_PT_SCLD")
  512. elements.property(elements.MOD2_PT_RACD, "Temperature", 295.15)
  513.  
  514. function rain(i,x,y,s,n)
  515. if math.random(1,500) == 20 then
  516. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'watr')
  517.  
  518. end
  519. end
  520. tpt.element_func(rain,b)
  521.  
  522. local c = elements.allocate("MOD3", "SCLD")
  523. elements.element(elements.MOD3_PT_SCLD, elements.element(elements.DEFAULT_PT_HYGN))
  524. elements.property(elements.MOD3_PT_SCLD, "Name", "SCLD")
  525. elements.property(elements.MOD3_PT_SCLD, "Description", "Snow Cloud.")
  526. elements.property(elements.MOD3_PT_SCLD, "Colour", 0x8F8FBC)
  527. elements.property(elements.MOD3_PT_SCLD, "MenuSection", 6)
  528. elements.property(elements.MOD3_PT_SCLD, "Gravity", 0)
  529. elements.property(elements.MOD3_PT_SCLD, "Explosive", 0)
  530. elements.property(elements.MOD3_PT_SCLD, "Weight", 0)
  531. elements.property(elements.MOD3_PT_SCLD, "Diffusion", 1)
  532. elements.property(elements.MOD3_PT_SCLD, "Hardness", 0)
  533. elements.property(elements.MOD3_PT_SCLD, "Flammable", 0)
  534. elements.property(elements.MOD3_PT_SCLD, "AirDrag", 0.01)
  535. elements.property(elements.MOD3_PT_SCLD, "HighTemperature", 273.15)
  536. elements.property(elements.MOD3_PT_SCLD, "HighTemperatureTransition", "MOD_PT_RACD")
  537. elements.property(elements.MOD3_PT_SCLD, "Temperature", 263.15 )
  538. elements.property(elements.MOD3_PT_SCLD, "LowTemperature", 245.15)
  539. elements.property(elements.MOD3_PT_SCLD, "LowTemperatureTransition", "MOD_PT_ICE")
  540.  
  541. function rain(i,x,y,s,n)
  542. if math.random(1,500) == 20 then
  543. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'snow')
  544. end
  545. end
  546. tpt.element_func(rain,c)
  547.  
  548. local d = elements.allocate("MOD4", "DRCD")
  549. elements.element(elements.MOD4_PT_DRCD, elements.element(elements.DEFAULT_PT_HYGN))
  550. elements.property(elements.MOD4_PT_DRCD, "Name", "DRCD")
  551. elements.property(elements.MOD4_PT_DRCD, "Description", "Distilled Rain Cloud.")
  552. elements.property(elements.MOD4_PT_DRCD, "Colour", 0x506987)
  553. elements.property(elements.MOD4_PT_DRCD, "MenuSection", 6)
  554. elements.property(elements.MOD4_PT_DRCD, "Gravity", 0)
  555. elements.property(elements.MOD4_PT_DRCD, "Explosive", 0)
  556. elements.property(elements.MOD4_PT_DRCD, "Weight", 0)
  557. elements.property(elements.MOD4_PT_DRCD, "Diffusion", 1)
  558. elements.property(elements.MOD4_PT_DRCD, "Hardness", 0)
  559. elements.property(elements.MOD4_PT_DRCD, "Flammable", 0)
  560. elements.property(elements.MOD4_PT_DRCD, "AirDrag", 0.01)
  561. elements.property(elements.MOD4_PT_DRCD, "LowTemperature", 273.15)
  562. elements.property(elements.MOD4_PT_DRCD, "LowTemperatureTransition", "MOD_PT_SCLD")
  563. elements.property(elements.MOD4_PT_DRCD, "Temperature", 295.15)
  564.  
  565. function rain(i,x,y,s,n)
  566. if math.random(1,500) == 20 then
  567. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'dstw')
  568. end
  569. end
  570. tpt.element_func(rain,d)
  571.  
  572. local e = elements.allocate("MOD5", "SRCD")
  573. elements.element(elements.MOD5_PT_SRCD, elements.element(elements.DEFAULT_PT_HYGN))
  574. elements.property(elements.MOD5_PT_SRCD, "Name", "SRCD")
  575. elements.property(elements.MOD5_PT_SRCD, "Description", "Saltwater Rain Cloud.")
  576. elements.property(elements.MOD5_PT_SRCD, "Colour", 0x380474)
  577. elements.property(elements.MOD5_PT_SRCD, "MenuSection", 6)
  578. elements.property(elements.MOD5_PT_SRCD, "MenuVisible", 0)
  579. elements.property(elements.MOD5_PT_SRCD, "Gravity", 0)
  580. elements.property(elements.MOD5_PT_SRCD, "Explosive", 0)
  581. elements.property(elements.MOD5_PT_SRCD, "Weight", 0)
  582. elements.property(elements.MOD5_PT_SRCD, "Diffusion", 1)
  583. elements.property(elements.MOD5_PT_SRCD, "Hardness", 0)
  584. elements.property(elements.MOD5_PT_SRCD, "Flammable", 0)
  585. elements.property(elements.MOD5_PT_SRCD, "AirDrag", 0.01)
  586. elements.property(elements.MOD5_PT_SRCD, "LowTemperature", 273.15)
  587. elements.property(elements.MOD5_PT_SRCD, "LowTemperatureTransition", "MOD_PT_SCLD")
  588. elements.property(elements.MOD5_PT_SRCD, "Temperature", 295.15)
  589.  
  590. function rain(i,x,y,s,n)
  591. if math.random(1,500) == 20 then
  592. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'sltw')
  593. end
  594. end
  595. tpt.element_func(rain,e)
  596.  
  597. local f = elements.allocate("MOD6", "TSCD")
  598. elements.element(elements.MOD6_PT_TSCD, elements.element(elements.DEFAULT_PT_HYGN))
  599. elements.property(elements.MOD6_PT_TSCD, "Name", "TSCD")
  600. elements.property(elements.MOD6_PT_TSCD, "Description", "Thunderstorm Cloud.")
  601. elements.property(elements.MOD6_PT_TSCD, "Colour", 0x302B54)
  602. elements.property(elements.MOD6_PT_TSCD, "MenuSection", 6)
  603. elements.property(elements.MOD6_PT_TSCD, "MenuVisible", 0)
  604. elements.property(elements.MOD6_PT_TSCD, "Gravity", 0)
  605. elements.property(elements.MOD6_PT_TSCD, "Explosive", 0)
  606. elements.property(elements.MOD6_PT_TSCD, "Weight", 0)
  607. elements.property(elements.MOD6_PT_TSCD, "Diffusion", 1)
  608. elements.property(elements.MOD6_PT_TSCD, "Hardness", 0)
  609. elements.property(elements.MOD6_PT_TSCD, "Flammable", 0)
  610. elements.property(elements.MOD6_PT_TSCD, "AirDrag", 0.01)
  611. elements.property(elements.MOD6_PT_TSCD, "LowTemperature", 273.15)
  612. elements.property(elements.MOD6_PT_TSCD, "LowTemperatureTransition", "MOD_PT_SCLD")
  613. elements.property(elements.MOD6_PT_TSCD, "Temperature", 303.15)
  614.  
  615. function rain(i,x,y,s,n)
  616. if math.random(1,500) == 20 then
  617. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'ligh')
  618. end
  619. end
  620. tpt.element_func(rain,f)
  621.  
  622. --Explosives
  623.  
  624. --The Highly Explosive mod for Powder Toy
  625.  
  626. local function explosion(x, y, s)
  627. for px = -1, 1 do
  628. for py = -1, 1 do
  629. tpt.create(x + px, y - py, "PLSM")
  630. local pressure = sim.pressure((x + px) / 4.0, (y + py) / 4.0)
  631. sim.pressure((x + px) / 4.0, (y + py) / 4.0, pressure + s * 10)
  632. sim.velocityX((x + px) / 4.0, y / 4.0, px * s)
  633. sim.velocityY((x + px) / 4.0, (y - py) / 4.0, -py * s)
  634.  
  635. end
  636. end
  637. end
  638.  
  639. local WBOMB = elements.allocate("MEXPL", "HELD")
  640. elements.element(elements.MEXPL_PT_HELD, elements.element(elements.DEFAULT_PT_GLOW))
  641. elements.property(elements.MEXPL_PT_HELD, "Color", "0xFFFEAF27")
  642. elements.property(elements.MEXPL_PT_HELD, "Name", "HELD")
  643. elements.property(elements.MEXPL_PT_HELD, "Description", "Highly Explosive Liquid.")
  644. elements.property(elements.MEXPL_PT_HELD, "MenuVisible", 1)
  645. elements.property(elements.MEXPL_PT_HELD, "MenuSection", 5)
  646. elements.property(elements.MEXPL_PT_HELD, "Advection", 0.1)
  647. elements.property(elements.MEXPL_PT_HELD, "AirDrag", 0.1)
  648. elements.property(elements.MEXPL_PT_HELD, "AirLoss", 0.9)
  649. elements.property(elements.MEXPL_PT_HELD, "Loss", 0.9)
  650. elements.property(elements.MEXPL_PT_HELD, "Falldown", 2)
  651. elements.property(elements.MEXPL_PT_HELD, "Hardness", 0.8)
  652. elements.property(elements.MEXPL_PT_HELD, "Weight", 12)
  653. elements.property(elements.MEXPL_PT_HELD, "Temperature", 340)
  654. elements.property(elements.MEXPL_PT_HELD, "HeatConduct", 100)
  655. elements.property(elements.MEXPL_PT_HELD, "State", 2)
  656. elements.property(elements.MEXPL_PT_HELD, "Properties", 2)
  657.  
  658. local function HELD_update(i, x, y, s, n)
  659. local r = 1
  660. if sim.pressure(x / 4.0, y / 4.0) >= 7.5 then
  661.  
  662. explosion(x, y, 1)
  663. tpt.delete(i)
  664. elseif tpt.get_property("temp", i) >= 450 then
  665. explosion(x, y, 1)
  666. tpt.delete(i)
  667. end
  668. end
  669.  
  670. tpt.element_func(HELD_update, elements.MEXPL_PT_HELD)
  671.  
  672. local SBOMB = elements.allocate("MEXPL", "HESD")
  673. elements.element(elements.MEXPL_PT_HESD, elements.element(elements.DEFAULT_PT_BANG))
  674. elements.property(elements.MEXPL_PT_HESD, "Color", "0xFFFF5000")
  675. elements.property(elements.MEXPL_PT_HESD, "Name", "HESD")
  676. elements.property(elements.MEXPL_PT_HESD, "Description", "Highly Explosive Solid.")
  677. elements.property(elements.MEXPL_PT_HESD, "MenuVisible", 1)
  678. elements.property(elements.MEXPL_PT_HESD, "MenuSection", 5)
  679. elements.property(elements.MEXPL_PT_HESD, "Hardness", 0.8)
  680. elements.property(elements.MEXPL_PT_HESD, "Temperature", 293)
  681. elements.property(elements.MEXPL_PT_HESD, "HeatConduct", 100)
  682. elements.property(elements.MEXPL_PT_HESD, "Falldown", 0)
  683. elements.property(elements.MEXPL_PT_HESD, "State", 1)
  684. elements.property(elements.MEXPL_PT_HESD, "Properties", 4)
  685.  
  686. local function HESD_update(i, x, y, s, n)
  687. local r = 1
  688. if sim.pressure(x / 4.0, y / 4.0) >= 7.5 then
  689.  
  690. explosion(x, y, 1)
  691. tpt.delete(i)
  692. elseif tpt.get_property("temp", i) >= 450 then
  693. explosion(x, y, 1)
  694. tpt.delete(i)
  695. end
  696. end
  697.  
  698. tpt.element_func(HESD_update, elements.MEXPL_PT_HESD)
  699.  
  700. local GBOMB = elements.allocate("MEXPL", "HEGS")
  701. elements.element(elements.MEXPL_PT_HEGS, elements.element(elements.DEFAULT_PT_GAS))
  702. elements.property(elements.MEXPL_PT_HEGS, "Color", "0xFFEBFE5D")
  703. elements.property(elements.MEXPL_PT_HEGS, "Name", "HEGS")
  704. elements.property(elements.MEXPL_PT_HEGS, "Description", "Highly Explosive Gas.")
  705. elements.property(elements.MEXPL_PT_HEGS, "MenuVisible", 1)
  706. elements.property(elements.MEXPL_PT_HEGS, "MenuSection", 5)
  707. elements.property(elements.MEXPL_PT_HEGS, "Hardness", 0.8)
  708. elements.property(elements.MEXPL_PT_HEGS, "Temperature", 390)
  709. elements.property(elements.MEXPL_PT_HEGS, "HeatConduct", 100)
  710. elements.property(elements.MEXPL_PT_HEGS, "Falldown", 0)
  711. elements.property(elements.MEXPL_PT_HEGS, "Diffusion", 0.5)
  712. elements.property(elements.MEXPL_PT_HEGS, "State", 3)
  713. --elements.property(elements.MEXPL_PT_HEGS, "Properties", 3)
  714.  
  715. local function HEGS_update(i, x, y, s, n)
  716. local r = 1
  717. if sim.pressure(x / 4.0, y / 4.0) >= 7.5 then
  718.  
  719. explosion(x, y, 1)
  720. tpt.delete(i)
  721. elseif tpt.get_property("temp", i) >= 450 then
  722. explosion(x, y, 1)
  723. tpt.delete(i)
  724. end
  725. end
  726.  
  727. tpt.element_func(HEGS_update, elements.MEXPL_PT_HEGS)
  728.  
  729. local PBOMB = elements.allocate("MEXPL", "HEPR")
  730. elements.element(elements.MEXPL_PT_HEPR, elements.element(elements.DEFAULT_PT_DUST))
  731. elements.property(elements.MEXPL_PT_HEPR, "Color", "0xFFFFFF00")
  732. elements.property(elements.MEXPL_PT_HEPR, "Name", "HEPR")
  733. elements.property(elements.MEXPL_PT_HEPR, "Description", "Highly Explosive Powder.")
  734. elements.property(elements.MEXPL_PT_HEPR, "MenuVisible", 1)
  735. elements.property(elements.MEXPL_PT_HEPR, "MenuSection", 5)
  736. elements.property(elements.MEXPL_PT_HEPR, "Hardness", 0.8)
  737. elements.property(elements.MEXPL_PT_HEPR, "Temperature", 293)
  738. elements.property(elements.MEXPL_PT_HEPR, "HeatConduct", 100)
  739. elements.property(elements.MEXPL_PT_HEPR, "Falldown", 1)
  740. elements.property(elements.MEXPL_PT_HELD, "Advection", 0.1)
  741. elements.property(elements.MEXPL_PT_HELD, "AirDrag", 0.1)
  742. elements.property(elements.MEXPL_PT_HELD, "AirLoss", 0.9)
  743. elements.property(elements.MEXPL_PT_HELD, "Loss", 0.9)
  744. elements.property(elements.MEXPL_PT_HELD, "Hardness", 0.8)
  745. elements.property(elements.MEXPL_PT_HELD, "Weight", 12)
  746. elements.property(elements.MEXPL_PT_HEPR, "State", 1)
  747. elements.property(elements.MEXPL_PT_HEPR, "Properties", 4)
  748.  
  749. local function HEPR_update(i, x, y, s, n)
  750. local r = 1
  751. if sim.pressure(x / 4.0, y / 4.0) >= 7.5 then
  752.  
  753. explosion(x, y, 1)
  754. tpt.delete(i)
  755. elseif tpt.get_property("temp", i) >= 450 then
  756. explosion(x, y, 1)
  757. tpt.delete(i)
  758. end
  759. end
  760.  
  761. tpt.element_func(HEPR_update, elements.MEXPL_PT_HEPR)
  762.  
  763. elements.property(elements.MEXPL_PT_HESD, "HighTemperature", 327)
  764. elements.property(elements.MEXPL_PT_HESD, "HighTemperatureTransition", elements.MEXPL_PT_HELD)
  765. elements.property(elements.MEXPL_PT_HESD, "HighPressure", 2)
  766. elements.property(elements.MEXPL_PT_HESD, "HighPressureTransition", elements.MEXPL_PT_HEPR)
  767. elements.property(elements.MEXPL_PT_HEPR, "HighTemperature", 326)
  768. elements.property(elements.MEXPL_PT_HEPR, "HighTemperatureTransition", elements.MEXPL_PT_HELD)
  769. elements.property(elements.MEXPL_PT_HEGS, "LowTemperature", 365)
  770. elements.property(elements.MEXPL_PT_HEGS, "LowTemperatureTransition", elements.MEXPL_PT_HELD)
  771. elements.property(elements.MEXPL_PT_HELD, "HighTemperature", 365)
  772. elements.property(elements.MEXPL_PT_HELD, "HighTemperatureTransition", elements.MEXPL_PT_HEGS)
  773. elements.property(elements.MEXPL_PT_HELD, "LowTemperature", 327)
  774. elements.property(elements.MEXPL_PT_HELD, "LowTemperatureTransition", elements.MEXPL_PT_HESD)
  775.  
  776. --"New Elements"
  777.  
  778. local function heat()
  779. tpt.set_property("temp", 9999, "HETR")
  780. tpt.set_property("temp", 0, "COLR")
  781. end
  782. tpt.register_step(heat)
  783.  
  784. elements.allocate('YOSHI', 'HETR')
  785. elements.element(elements.YOSHI_PT_HETR, elements.element(elements.DEFAULT_PT_DMND))
  786. elements.property(elements.YOSHI_PT_HETR, 'Name', 'HETR')
  787. elements.property(elements.YOSHI_PT_HETR, 'Description', 'Heats Elements.')
  788. elements.property(elements.YOSHI_PT_HETR, 'Color', '0xFF1111')
  789. elements.property(elements.YOSHI_PT_HETR, 'MenuSection', '2')
  790. elements.property(elements.YOSHI_PT_HETR, 'HeatConduct', '65535')
  791. local g = function(i, x, y, s, n)
  792. --Update Function
  793. end
  794. tpt.element_func(g, tpt.element('HETR'))
  795.  
  796. local function heat()
  797. end
  798. tpt.register_step(heat)
  799.  
  800. elements.allocate('YOSHI', 'COLR')
  801. elements.element(elements.YOSHI_PT_COLR, elements.element(elements.DEFAULT_PT_DMND))
  802. elements.property(elements.YOSHI_PT_COLR, 'Name', 'COLR')
  803. elements.property(elements.YOSHI_PT_COLR, 'Description', 'Cools Elements.')
  804. elements.property(elements.YOSHI_PT_COLR, 'Color', '0x1111FF')
  805. elements.property(elements.YOSHI_PT_COLR, 'MenuSection', '2')
  806. elements.property(elements.YOSHI_PT_COLR, 'HeatConduct', '65535')
  807. local g = function(i, x, y, s, n)
  808. --Update Function
  809. end
  810. tpt.element_func(g, tpt.element('COLR'))
  811.  
  812. elements.allocate('YOSHI', 'HCTD')
  813. elements.element(elements.YOSHI_PT_HCTD, elements.element(elements.DEFAULT_PT_DMND))
  814. elements.property(elements.YOSHI_PT_HCTD, 'Name', 'HCTD')
  815. elements.property(elements.YOSHI_PT_HCTD, 'Description', 'Heat conductor.')
  816. elements.property(elements.YOSHI_PT_HCTD, 'Color', '0x11FF11')
  817. elements.property(elements.YOSHI_PT_HCTD, 'MenuSection', '2')
  818. elements.property(elements.YOSHI_PT_HCTD, 'HeatConduct', '65535')
  819. local g = function(i, x, y, s, n)
  820. --Update Function
  821. end
  822. tpt.element_func(g, tpt.element('HCTD'))
  823.  
  824. local a = elements.allocate("YOSHI", "RCLD")
  825. elements.element(elements.YOSHI_PT_RCLD, elements.element(elements.DEFAULT_PT_HYGN))
  826. elements.property(elements.YOSHI_PT_RCLD, "Name", "RCLD")
  827. elements.property(elements.YOSHI_PT_RCLD, "Description", "Radioactive cloud, Second type.")
  828. elements.property(elements.YOSHI_PT_RCLD, "Colour", 0x11FF22)
  829. elements.property(elements.YOSHI_PT_RCLD, "MenuSection", 10)
  830. elements.property(elements.YOSHI_PT_RCLD, "Gravity", 0)
  831. elements.property(elements.YOSHI_PT_RCLD, "Explosive", 0)
  832. elements.property(elements.YOSHI_PT_RCLD, "Weight", 0)
  833. elements.property(elements.YOSHI_PT_RCLD, "Diffusion", 1)
  834. elements.property(elements.YOSHI_PT_RCLD, "Hardness", 0)
  835. elements.property(elements.YOSHI_PT_RCLD, "Flammable", 100000)
  836. elements.property(elements.YOSHI_PT_RCLD, "AirDrag", 0.01)
  837. function rain(i,x,y,s,n)
  838. if math.random(1,500) < 5 then
  839. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'plut')
  840. end
  841. if math.random(1,500) == 20 then
  842. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'uran')
  843. end
  844. if math.random(1,500) == 30 then
  845. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'isoz')
  846. end
  847. if math.random(1,500) == 40 then
  848. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'deut')
  849. end
  850. if math.random(1,500) == 50 then
  851. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'bvbr')
  852. end
  853. end
  854. tpt.element_func(rain,a)
  855.  
  856. local a = elements.allocate("YOSHI", "SULF")
  857. elements.element(elements.YOSHI_PT_SULF, elements.element(elements.DEFAULT_PT_COAL))
  858. elements.property(elements.YOSHI_PT_SULF, "Name", "SULF")
  859. elements.property(elements.YOSHI_PT_SULF, "Description", "Basic Sulphur.")
  860. elements.property(elements.YOSHI_PT_SULF, "Colour", 0xFFFF11)
  861. elements.property(elements.YOSHI_PT_SULF, "MenuSection", 9)
  862. elements.property(elements.YOSHI_PT_SULF, "Gravity", 0)
  863. elements.property(elements.YOSHI_PT_SULF, "Explosive", 0)
  864. elements.property(elements.YOSHI_PT_SULF, "Weight", 10)
  865. elements.property(elements.YOSHI_PT_SULF, "Diffusion", 0)
  866. elements.property(elements.YOSHI_PT_SULF, "Hardness", 0)
  867. elements.property(elements.YOSHI_PT_SULF, "Flammable", 10)
  868.  
  869. --[[ {MAY BE USEFUL LATER?}local a = elements.allocate("YOSHI", "SACD")
  870. elements.element(elements.YOSHI_PT_SACD, elements.element(elements.DEFAULT_PT_ACID))
  871. elements.property(elements.YOSHI_PT_SACD, "Name", "SACD")
  872. elements.property(elements.YOSHI_PT_SACD, "Description", "Sulphuric acid, does nothing yet.")
  873. elements.property(elements.YOSHI_PT_SACD, "Colour", 0xEEEE11)
  874. elements.property(elements.YOSHI_PT_SACD, "MenuSection", 7)
  875. elements.property(elements.YOSHI_PT_SACD, "Gravity", 1)
  876. elements.property(elements.YOSHI_PT_SACD, "Explosive", 0)
  877. elements.property(elements.YOSHI_PT_SACD, "Weight", 10)
  878. elements.property(elements.YOSHI_PT_SACD, "Diffusion", 0.1)
  879. elements.property(elements.YOSHI_PT_SACD, "Hardness", 0)
  880. elements.property(elements.YOSHI_PT_SACD, "Flammable", 0)]]--
  881.  
  882. local a = elements.allocate("YOSHI", "RMTL")
  883. elements.element(elements.YOSHI_PT_RMTL, elements.element(elements.DEFAULT_PT_TTAN))
  884. elements.property(elements.YOSHI_PT_RMTL, "Name", "RMTL")
  885. elements.property(elements.YOSHI_PT_RMTL, "Description", "Realistic metal.")
  886. elements.property(elements.YOSHI_PT_RMTL, "Colour", 0x666666)
  887. elements.property(elements.YOSHI_PT_RMTL, "MenuSection", 9)
  888. elements.property(elements.YOSHI_PT_RMTL, "Gravity", 0)
  889. elements.property(elements.YOSHI_PT_RMTL, "Explosive", 0)
  890. elements.property(elements.YOSHI_PT_RMTL, "Weight", 100)
  891. elements.property(elements.YOSHI_PT_RMTL, "Diffusion", 0)
  892. elements.property(elements.YOSHI_PT_RMTL, "Hardness", 0)
  893. elements.property(elements.YOSHI_PT_RMTL, "Flammable", 0)
  894. elements.property(elements.YOSHI_PT_RMTL, "AirLoss", 0)
  895. elements.property(elements.YOSHI_PT_RMTL, "Temperature", 273.15 + 22)
  896. elements.property(elements.YOSHI_PT_RMTL, "HighTemperature", 1798)
  897. elements.property(elements.YOSHI_PT_RMTL, "HighTemperatureTransition", elements.YOSHI_PT_MRMT)
  898.  
  899. local a = elements.allocate("YOSHI", "MRMT")
  900. elements.element(elements.YOSHI_PT_MRMT, elements.element(elements.DEFAULT_PT_MERC))
  901. elements.property(elements.YOSHI_PT_MRMT, "Name", "MRMT")
  902. elements.property(elements.YOSHI_PT_MRMT, "Description", "Molten realistic metal.")
  903. elements.property(elements.YOSHI_PT_MRMT, "Colour", 0xFEDCBA)
  904. elements.property(elements.YOSHI_PT_MRMT, "MenuSection", 4)
  905. elements.property(elements.YOSHI_PT_MRMT, "MenuVisible", 0)
  906. elements.property(elements.YOSHI_PT_MRMT, "Gravity", 1)
  907. elements.property(elements.YOSHI_PT_MRMT, "Explosive", 0)
  908. elements.property(elements.YOSHI_PT_MRMT, "Weight", 100)
  909. elements.property(elements.YOSHI_PT_MRMT, "Diffusion", 0)
  910. elements.property(elements.YOSHI_PT_MRMT, "Hardness", 0)
  911. elements.property(elements.YOSHI_PT_MRMT, "Flammable", 0)
  912. elements.property(elements.YOSHI_PT_MRMT, "Temperature", 1799)
  913. elements.property(elements.YOSHI_PT_MRMT, "LowTemperature", 1798)
  914. elements.property(elements.YOSHI_PT_MRMT, "LowTemperatureTransition", elements.YOSHI_PT_RMTL)
  915.  
  916. local a = elements.allocate("YOSHI", "THNL")
  917. elements.element(elements.YOSHI_PT_THNL, elements.element(elements.DEFAULT_PT_NITR))
  918. elements.property(elements.YOSHI_PT_THNL, "Name", "THNL")
  919. elements.property(elements.YOSHI_PT_THNL, "Description", "Thermonucleum, Extremely explosive.")
  920. elements.property(elements.YOSHI_PT_THNL, "Colour", 0x3F94EC)
  921. elements.property(elements.YOSHI_PT_THNL, "MenuSection", 10)
  922. elements.property(elements.YOSHI_PT_THNL, "Gravity", 1)
  923. elements.property(elements.YOSHI_PT_THNL, "Explosive", 50)
  924. elements.property(elements.YOSHI_PT_THNL, "Weight", 10)
  925. elements.property(elements.YOSHI_PT_THNL, "Diffusion", 0)
  926. elements.property(elements.YOSHI_PT_THNL, "Hardness", 0)
  927. elements.property(elements.YOSHI_PT_THNL, "Flammable", 100000)
  928. elements.property(elements.YOSHI_PT_THNL, "Temperature", 295.15)
  929. elements.property(elements.YOSHI_PT_THNL, "AirDrag", 0.5)
  930.  
  931. elements.allocate('AU3FGEN', 'GNTM')
  932. elements.element(elements.AU3FGEN_PT_GNTM, elements.element(elements.DEFAULT_PT_DMND))
  933. elements.property(elements.AU3FGEN_PT_GNTM, 'Name', 'GNTM')
  934. elements.property(elements.AU3FGEN_PT_GNTM, 'Description', 'Gentium, Strange and laggy.')
  935. elements.property(elements.AU3FGEN_PT_GNTM, 'Color', '0x1F7F3F')
  936. elements.property(elements.AU3FGEN_PT_GNTM, 'MenuSection', '10')
  937. elements.property(elements.AU3FGEN_PT_GNTM, 'Gravity', '0')
  938. elements.property(elements.AU3FGEN_PT_GNTM, 'Flammable', '65535')
  939. elements.property(elements.AU3FGEN_PT_GNTM, 'Explosive', '1')
  940. elements.property(elements.AU3FGEN_PT_GNTM, 'Loss', '0')
  941. elements.property(elements.AU3FGEN_PT_GNTM, 'AirLoss', '1')
  942. elements.property(elements.AU3FGEN_PT_GNTM, 'AirDrag', '0')
  943. elements.property(elements.AU3FGEN_PT_GNTM, 'Advection', '1')
  944. elements.property(elements.AU3FGEN_PT_GNTM, 'Weight', '1024')
  945. elements.property(elements.AU3FGEN_PT_GNTM, 'Diffusion', '0')
  946. elements.property(elements.AU3FGEN_PT_GNTM, 'Falldown', '0')
  947. local g = function(i, x, y, s, n)
  948. --Update Function
  949. end
  950. tpt.element_func(g, tpt.element('GNTM'))
  951. local g = function(i, r, g, b)
  952. local function gfunc(i, r, g, b)
  953. return 1, 0x0003007F, math.random(0,255), math.random(0,255), math.random(0,255), math.random(0,255), math.random(0,255), math.random(0,255), math.random(0,255), math.random(0,255)
  954. end
  955. tpt.graphics_func(gfunc, tpt.element('GNTM'))
  956. end
  957. tpt.graphics_func(g, tpt.element('GNTM'))
  958.  
  959. --Radioactive Mod
  960.  
  961. --Changes
  962. -- You can change this from on/off.
  963.  
  964. on=40
  965. off=0
  966.  
  967.  
  968. elements.property(elements.DEFAULT_PT_ACID, "Flammable", off)
  969. -- Added Elements.
  970.  
  971. local a = elements.allocate("X", "C")
  972. elements.element(elements.X_PT_C, elements.element(elements.DEFAULT_PT_WOOD))
  973. elements.property(elements.X_PT_C, "Name", "SAWD")
  974. elements.property(elements.X_PT_C, "Description", "Saw Dust, Flammable.")
  975. elements.property(elements.X_PT_C, "Colour", 0xFFFF66)
  976. elements.property(elements.X_PT_C, "MenuSection", 8)
  977. elements.property(elements.X_PT_C, "Gravity", 1)
  978. elements.property(elements.X_PT_C, "Flammable", 30)
  979. elements.property(elements.X_PT_C, "Explosive", 0)
  980. elements.property(elements.X_PT_C, "Weight", 20)
  981. elements.property(elements.X_PT_C, "Diffusion", 0.5)
  982. elements.property(elements.X_PT_C, "Falldown", 1)
  983.  
  984. local a = elements.allocate("C", "Q")
  985. elements.element(elements.C_PT_Q, elements.element(elements.DEFAULT_PT_HYGN))
  986. elements.property(elements.C_PT_Q, "Name", "????")
  987. elements.property(elements.C_PT_Q, "Description", "????")
  988. elements.property(elements.C_PT_Q, "Colour", 0xFFFF0080)
  989. elements.property(elements.C_PT_Q, "MenuSection", 10)
  990. elements.property(elements.C_PT_Q, "Gravity", 0.3)
  991. elements.property(elements.C_PT_Q, "Explosive", 1)
  992. elements.property(elements.C_PT_Q, "Weight", 66)
  993. elements.property(elements.C_PT_Q, "Diffusion", 0)
  994. elements.property(elements.C_PT_Q, "HotAir", -0.1)
  995. elements.property(elements.C_PT_Q, "Hardness", 0)
  996.  
  997. local q={0x99FFFF,0x9999FF,0xCCFF00,0x00FFCC,0x00CC00,0x330099}
  998. local z=q[math.random(1,6)]
  999.  
  1000. elements.property(elements.C_PT_Q, "Colour", z)
  1001.  
  1002. function light(i,x,y,s,n)
  1003. if math.random(1,300000) == 10 then
  1004. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'ligh')
  1005. end
  1006. end
  1007. tpt.element_func(light,a)
  1008.  
  1009. local a = elements.allocate("B", "Q")
  1010. elements.element(elements.B_PT_Q, elements.element(elements.DEFAULT_PT_HYGN))
  1011. elements.property(elements.B_PT_Q, "Name", "LCLD")
  1012. elements.property(elements.B_PT_Q, "Description", "Lava Clouds.")
  1013. elements.property(elements.B_PT_Q, "Colour", 0xCC0000)
  1014. elements.property(elements.B_PT_Q, "MenuSection", 6)
  1015. elements.property(elements.B_PT_Q, "Gravity", 0.1)
  1016. elements.property(elements.B_PT_Q, "Explosive", 0)
  1017. elements.property(elements.B_PT_Q, "Weight", 66)
  1018. elements.property(elements.B_PT_Q, "Temperature", math.huge)
  1019. elements.property(elements.B_PT_Q, "Diffusion", 0.1)
  1020. elements.property(elements.B_PT_Q, "Hardness", 0)
  1021.  
  1022. function fire(i,x,y,s,n)
  1023. if math.random(1,750) == 10 then
  1024. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'lava')
  1025. end
  1026. end
  1027. tpt.element_func(fire,a)
  1028.  
  1029. --[[
  1030.  
  1031. local a = elements.allocate("V", "X")
  1032. elements.element(elements.V_PT_X, elements.element(elements.DEFAULT_PT_HYGN))
  1033. elements.property(elements.V_PT_X, "Name", "CLDS")
  1034. elements.property(elements.V_PT_X, "Description", "Clouds. Produce Water.")
  1035. elements.property(elements.V_PT_X, "Colour", 0x3366CC)
  1036. elements.property(elements.V_PT_X, "MenuSection", 6)
  1037. elements.property(elements.V_PT_X, "Gravity", 0.3)
  1038. elements.property(elements.V_PT_X, "Explosive", 0)
  1039. elements.property(elements.V_PT_X, "Weight", 88)
  1040. elements.property(elements.V_PT_X, "Diffusion", 0.2)
  1041. elements.property(elements.V_PT_X, "Hardness", 0)
  1042.  
  1043. function rain(i,x,y,s,n)
  1044. if math.random(1,750) == 10 then
  1045. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'watr')
  1046. end
  1047. end
  1048. tpt.element_func(rain,a)]]--
  1049.  
  1050. local a = elements.allocate("V", "W")
  1051. elements.element(elements.V_PT_W, elements.element(elements.DEFAULT_PT_HYGN))
  1052. elements.property(elements.V_PT_W, "Name", "ACLD")
  1053. elements.property(elements.V_PT_W, "Description", "Acid Cloud.")
  1054. elements.property(elements.V_PT_W, "Colour", 0xFF0066)
  1055. elements.property(elements.V_PT_W, "MenuSection", 6)
  1056. elements.property(elements.V_PT_W, "Gravity", 0.1)
  1057. elements.property(elements.V_PT_W, "Explosive", 0)
  1058. elements.property(elements.V_PT_W, "Weight", -400)
  1059. elements.property(elements.V_PT_W, "Diffusion", 0.1)
  1060. elements.property(elements.V_PT_W, "Hardness", 0)
  1061.  
  1062. function acid(i,x,y,s,n)
  1063. if math.random(1,750) == 10 then
  1064. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'acid')
  1065. end
  1066. end
  1067. tpt.element_func(acid,a)
  1068.  
  1069. local a = elements.allocate("T", "N")
  1070. elements.element(elements.T_PT_N, elements.element(elements.DEFAULT_PT_LAVA))
  1071. elements.property(elements.T_PT_N, "Name", "NBLI")
  1072. elements.property(elements.T_PT_N, "Description", "A liquid that releases NBLE. Very Hot.")
  1073. elements.property(elements.T_PT_N, "Colour", 0xFF3300)
  1074. elements.property(elements.T_PT_N, "Temperature", math.huge)
  1075. elements.property(elements.T_PT_N, "Gravity", 3)
  1076. elements.property(elements.T_PT_N, "Diffusion", 0.2)
  1077.  
  1078. function RLS(i,x,y,s,n)
  1079. if math.random(1,550) == 10 then
  1080. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'nble')
  1081. if math.random(1,1300) == 10 then
  1082. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'plsm')
  1083. end
  1084. end
  1085. end
  1086. tpt.element_func(RLS,a)
  1087. l="IFOUNDIT"
  1088. local a = elements.allocate("R","D")
  1089. elements.element(elements.R_PT_D, elements.element(elements.DEFAULT_PT_PHOT))
  1090. elements.property(elements.R_PT_D, "Name", "SPRB")
  1091. elements.property(elements.R_PT_D, "Color", 0xFF0099)
  1092. elements.property(elements.R_PT_D, "MenuSection", 8)
  1093. elements.property(elements.R_PT_D, "Advection", 0.2)
  1094. elements.property(elements.R_PT_D, "Collision", 1.0)
  1095. elements.property(elements.R_PT_D, "Gravity", 3.0)
  1096. elements.property(elements.R_PT_D, "Diffusion", 0.3)
  1097. elements.property(elements.R_PT_D, "Weight", 40.45)
  1098. elements.property(elements.R_PT_D, "Temperature", 100000.0)
  1099. elements.property(elements.R_PT_D, "HeatConduct", 100000.0)
  1100. elements.property(elements.R_PT_D, "Description", "Super Ball. Very Hot. Bounces.")
  1101. elements.property(elements.R_PT_D, "Properties", PROP_DEADLY)
  1102.  
  1103.  
  1104. local a = elements.allocate("V1", "X1")
  1105. elements.element(elements.V1_PT_X1, elements.element(elements.DEFAULT_PT_HYGN))
  1106. elements.property(elements.V1_PT_X1, "Name", "STRM")
  1107. elements.property(elements.V1_PT_X1, "Description", "Storm Clouds. Produces More Water Than RCLD, and Lightning.")
  1108. elements.property(elements.V1_PT_X1, "Colour", 0x999999)
  1109. elements.property(elements.V1_PT_X1, "MenuSection", 6)
  1110. elements.property(elements.V1_PT_X1, "Gravity", 0.1)
  1111. elements.property(elements.V1_PT_X1, "Explosive", 0)
  1112. elements.property(elements.V1_PT_X1, "Weight", 30)
  1113. elements.property(elements.V1_PT_X1, "Diffusion", 0.1)
  1114. elements.property(elements.V1_PT_X1, "Hardness", 0)
  1115.  
  1116. function rain2(i,x,y,s,n)
  1117. if math.random(1,350) == 10 then
  1118. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'watr')
  1119. if math.random(1,750) == 10 then
  1120. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'ligh')
  1121. end
  1122. end
  1123. end
  1124. tpt.element_func(rain2,a)
  1125.  
  1126. local a = elements.allocate("N", "H")
  1127. elements.element(elements.N_PT_H, elements.element(elements.DEFAULT_PT_WOOD))
  1128. elements.property(elements.N_PT_H, "Name", "TR0N")
  1129. elements.property(elements.N_PT_H, "Description", "Produces TRON. A Solid. A Home.")
  1130. elements.property(elements.N_PT_H, "Colour", 0x66FFFF)
  1131. elements.property(elements.N_PT_H, "Flammable", 0)
  1132. elements.property(elements.N_PT_H, "MenuSection", 9)
  1133.  
  1134. function tron(i,x,y,s,n)
  1135. if math.random(1,100) == 10 then
  1136. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'tron')
  1137. end
  1138. end
  1139. tpt.element_func(tron,a)
  1140.  
  1141. local a = elements.allocate("E", "O")
  1142. elements.element(elements.E_PT_O, elements.element(elements.DEFAULT_PT_GUN))
  1143. elements.property(elements.E_PT_O, "Name", "PC-4")
  1144. elements.property(elements.E_PT_O, "Description", "Powder C4. Explosive.")
  1145. elements.property(elements.E_PT_O, "Colour", 0xFF33FF)
  1146. elements.property(elements.E_PT_O, "Gravity", 2.0)
  1147. elements.property(elements.E_PT_O, "Diffusion", 0.2)
  1148. elements.property(elements.E_PT_O, "Weight", 30.20)
  1149. elements.property(elements.E_PT_O, "Flammable", 3000.34)
  1150.  
  1151. local a = elements.allocate("J", "O")
  1152. elements.element(elements.J_PT_O, elements.element(elements.DEFAULT_PT_DUST))
  1153. elements.property(elements.J_PT_O, "Name", "FLY")
  1154. elements.property(elements.J_PT_O, "Description", "Fly. Annoying Pestering Bug.")
  1155. elements.property(elements.J_PT_O, "Colour", 0x333333)
  1156. elements.property(elements.J_PT_O, "MenuSection", 11)
  1157. elements.property(elements.J_PT_O, "Gravity", 0.1)
  1158. elements.property(elements.J_PT_O, "Flammable", 1)
  1159. elements.property(elements.J_PT_O, "Explosive", 0)
  1160. elements.property(elements.J_PT_O, "Weight", -3000)
  1161. elements.property(elements.J_PT_O, "Diffusion", 0.9)
  1162. elements.property(elements.J_PT_O, "Falldown", 0.8)
  1163.  
  1164. local a = elements.allocate("C", "T")
  1165. elements.element(elements.C_PT_T, elements.element(elements.DEFAULT_PT_GLOW))
  1166. elements.property(elements.C_PT_T, "Name", "NPLM")
  1167. elements.property(elements.C_PT_T, "Description", "Napalm. Very explosive.")
  1168. elements.property(elements.C_PT_T, "Colour", 0x380520)
  1169. elements.property(elements.C_PT_T, "MenuSection", 5)
  1170. elements.property(elements.C_PT_T, "Gravity", 0.5)
  1171. elements.property(elements.C_PT_T, "Flammable", 1000)
  1172. elements.property(elements.C_PT_T, "Explosive", 1)
  1173. elements.property(elements.C_PT_T, "Loss", 0)
  1174. elements.property(elements.C_PT_T, "Weight", 20)
  1175.  
  1176. local a = elements.allocate("G", "H")
  1177. elements.element(elements.G_PT_H, elements.element(elements.DEFAULT_PT_WOOD))
  1178. elements.property(elements.G_PT_H, "Name", "BHIV")
  1179. elements.property(elements.G_PT_H, "Description", "BEE Hive. Produces BEEs. Obviously.")
  1180. elements.property(elements.G_PT_H, "Colour", 0x999966)
  1181. elements.property(elements.G_PT_H, "Flammable", 10)
  1182. elements.property(elements.G_PT_H, "MenuSection", 9)
  1183.  
  1184. function bee(i,x,y,s,n)
  1185. if math.random(1,330) == 10 then
  1186. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'bee')
  1187. end
  1188. end
  1189. tpt.element_func(bee,a)
  1190.  
  1191. local a = elements.allocate("B", "O")
  1192. elements.element(elements.B_PT_O, elements.element(elements.DEFAULT_PT_DUST))
  1193. elements.property(elements.B_PT_O, "Name", "BEE")
  1194. elements.property(elements.B_PT_O, "Description", "BEE. Pestering Demons. Move Faster Then FLY.")
  1195. elements.property(elements.B_PT_O, "Colour", 0xFFFF00)
  1196. elements.property(elements.B_PT_O, "MenuSection", 11)
  1197. elements.property(elements.B_PT_O, "Gravity", 0.1)
  1198. elements.property(elements.B_PT_O, "Flammable", 10)
  1199. elements.property(elements.B_PT_O, "Explosive", 0)
  1200. elements.property(elements.B_PT_O, "Weight", -6000)
  1201. elements.property(elements.B_PT_O, "Diffusion", 2)
  1202. elements.property(elements.B_PT_O, "Falldown", 0.2)
  1203. function beeh(i,x,y,s,n)
  1204. if math.random(1,9000) == 10 then
  1205. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'bhiv')
  1206. end
  1207. end
  1208. tpt.element_func(beeh,a)
  1209.  
  1210. local a = elements.allocate("T", "X")
  1211. elements.element(elements.T_PT_X, elements.element(elements.DEFAULT_PT_HYGN))
  1212. elements.property(elements.T_PT_X, "Name", "TORN")
  1213. elements.property(elements.T_PT_X, "Description", "Tornado. Work in progress.")
  1214. elements.property(elements.T_PT_X, "Colour", 0x333333)
  1215. elements.property(elements.T_PT_X, "MenuSection", 11)
  1216. elements.property(elements.T_PT_X, "Gravity", 0.5)
  1217. elements.property(elements.T_PT_X, "Explosive", 0)
  1218. elements.property(elements.T_PT_X, "HotAir", -0.5)
  1219. elements.property(elements.T_PT_X, "Weight", 99)
  1220. elements.property(elements.T_PT_X, "Diffusion", 0.2)
  1221. elements.property(elements.T_PT_X, "Hardness", 0)
  1222.  
  1223. function rt(i,x,y,s,n)
  1224. if math.random(1,550) == 10 then
  1225. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'watr')
  1226. end
  1227. end
  1228. tpt.element_func(rt,a)
  1229.  
  1230. local a = elements.allocate("A","G")
  1231. elements.element(elements.A_PT_G, elements.element(elements.DEFAULT_PT_HYGN))
  1232. elements.property(elements.A_PT_G, "Name", "LAG")
  1233. elements.property(elements.A_PT_G, "Description", "Worlds Worst Creation.")
  1234. elements.property(elements.A_PT_G, "Colour", 0x578985)
  1235. elements.property(elements.A_PT_G, "MenuSection", 10)
  1236. elements.property(elements.A_PT_G, "HotAir", 0.1)
  1237. function acid(i,x,y,s,n)
  1238. if math.random(1,100) == 50 then
  1239. tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'lag')
  1240. end
  1241. if math.random(1,100) == 50 then
  1242. tpt.create(x + math.random(-1,1), y + math.random(-3,3), 'hygn')
  1243. end
  1244. if math.random(1,100) == 50 then
  1245. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'neut')
  1246. end
  1247. if math.random(1,100) == 50 then
  1248. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'prot')
  1249. end
  1250. if math.random(1,100) == 50 then
  1251. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'elec')
  1252. if math.random(1,100) == 50 then
  1253. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'phot')
  1254. end
  1255. if math.random(1,100) == 50 then
  1256. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'neut')
  1257. end
  1258. if math.random(1,100) == 50 then
  1259. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'tron')
  1260.  
  1261. if math.random(1,100) == 50 then
  1262. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'nble')
  1263. if math.random(1,100) == 50 then
  1264. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'boyl')
  1265. if math.random(1,100) == 50 then
  1266. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'watr')
  1267. if math.random(1,100) == 50 then
  1268. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'dstw')
  1269. if math.random(1,100) == 50 then
  1270. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'sltw')
  1271. if math.random(1,100) == 50 then
  1272. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'glow')
  1273. if math.random(1,100) == 50 then
  1274. tpt.create(x + math.random(-4,4), y + math.random(-6, 6), 'soap')
  1275. end
  1276. end
  1277. end
  1278. end
  1279. end
  1280. end
  1281. end
  1282. end
  1283. end
  1284. end
  1285. tpt.element_func(acid,a)
  1286.  
  1287. --WTF
  1288.  
  1289. local WTF = elements.allocate('CJB', 'WTF')
  1290. elements.element(elements.CJB_PT_WTF, elements.element(elements.DEFAULT_PT_BCOL))
  1291. elements.property(elements.CJB_PT_WTF, 'Name', 'WTF')
  1292. elements.property(elements.CJB_PT_WTF, 'Description', 'Derpy, volatile gas/solid/I have no bloody idea.')
  1293. elements.property(elements.CJB_PT_WTF, 'Color', '0xB87503')
  1294. elements.property(elements.CJB_PT_WTF, 'MenuSection', '11')
  1295. elements.property(elements.CJB_PT_WTF, 'Gravity', '0.4')
  1296. elements.property(elements.CJB_PT_WTF, 'Flammable', '16384')
  1297. elements.property(elements.CJB_PT_WTF, 'Explosive', '1')
  1298. elements.property(elements.CJB_PT_WTF, 'Loss', '1')
  1299. elements.property(elements.CJB_PT_WTF, 'AirLoss', '20')
  1300. elements.property(elements.CJB_PT_WTF, 'AirDrag', '0.02')
  1301. elements.property(elements.CJB_PT_WTF, 'Advection', '1')
  1302. elements.property(elements.CJB_PT_WTF, 'Weight', '20')
  1303. elements.property(elements.CJB_PT_WTF, 'Diffusion', '16384')
  1304. elements.property(elements.CJB_PT_WTF, 'Temperature', '16384')
  1305. elements.property(elements.CJB_PT_WTF, 'HotAir', '900')
  1306. local function Lflare(i, colr, colg, colb)
  1307. return 1, 0x00000004, 255, 184, 117, 3, 255, 184, 117, 3
  1308. end
  1309. tpt.graphics_func(Lflare, WTF)
  1310.  
  1311. --Credits, I hope?
  1312.  
  1313. --[[
  1314. FeynmanLogomaker, timpfeifer, CeeJayBee, Videogamer555, 00yoshi, RadioActiveLua. If you were left out, email me at [email protected]
  1315. ]]--
  1316.  
  1317. local a = "1"
  1318. local b = Window:new(-1,-1,200,200)
  1319. local c = Label:new(10,5,140,16, "TPT's Mod")
  1320. local d = Label:new(10,25,121,16, "Compiled by Amy")
  1321. local e = Label:new(10,85,170,16, "Credit to: jacob1, FeynmanLogomaker,")
  1322. local f = Label:new(135,5,88,16, ("AMY"))
  1323. local g = Label:new(10,95,180,16, "timpfeifer, CeeJayBee, Videogamer555,")
  1324. local h = Label:new(10,105,170,16,"00yoshi, and RadioActiveLua.")
  1325. local i = Label:new(10,125,180,16,"Report Bugs/Suggest for Next Version:")
  1326. local j = Label:new(10,135,170,16,"[email protected]")
  1327.  
  1328. local Close = Button:new(10, 174, 60, 16, "Close")
  1329.  
  1330. Close:action(function() interface.closeWindow(b) end)
  1331. b:onTryExit(function() interface.closeWindow(b) end)
  1332.  
  1333. b:addComponent(Close);
  1334.  
  1335. local Button1 = Button:new(613, 97, 15, 15, "CR", "Open Info and Credits.")
  1336.  
  1337. Button1:action(function() interface.showWindow(b) end)
  1338.  
  1339. bb = Label:new(10,45,138,16, "Special Thanks To jacob1")
  1340. cc = Label:new(10,55,60,16, "Version 1")
  1341. dd = Label:new(10,65,57,16, "Update 2")
  1342.  
  1343. b:addComponent(bb)
  1344. b:addComponent(dd)
  1345. b:addComponent(cc)
  1346. b:addComponent(c)
  1347. b:addComponent(d)
  1348. b:addComponent(e)
  1349. b:addComponent(f)
  1350. b:addComponent(g)
  1351. b:addComponent(h)
  1352. b:addComponent(i)
  1353. b:addComponent(j)
  1354.  
  1355. interface.addComponent(Button1)
  1356.  
  1357. local a1 = "2"
  1358. local b1 = Window:new(-1,-1,200,200)
  1359. local c1 = Label:new(10,5,80,16, "SECRET MODE")
  1360. local d1 = Label:new(10,15,121,16, "Created By RadioActiveLua")
  1361. local f1 = Label:new(135,5,88,16, ("RAM V."..a))
  1362.  
  1363. local Close1 = Button:new(10, 174, 60, 16, "Close")
  1364.  
  1365. local Start1 = Button:new(10, 194, 60, 16, "Enter")
  1366.  
  1367. Close1:action(function() interface.closeWindow(b1) end)
  1368. b1:onTryExit(function() interface.closeWindow(b1) end)
  1369.  
  1370. b1:addComponent(Close1);
  1371. b1:addComponent(Start1);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement