Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[ element: Cloud ]]
- local clod = elem.allocate("BAUER", "CLOD")
- elem.element(elem.BAUER_PT_CLOD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_CLOD, "Name", "CLOD")
- elem.property(elem.BAUER_PT_CLOD, "Description", "Cloud - produces water")
- elem.property(elem.BAUER_PT_CLOD, "Colour", 0x708090)
- elem.property(elem.BAUER_PT_CLOD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_CLOD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_CLOD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_CLOD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_CLOD, "Advection", 1)
- elem.property(elem.BAUER_PT_CLOD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_CLOD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_CLOD, "Gravity", 0)
- local function CLODUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.watr.id
- end
- end
- tpt.element_func(CLODUpdate,clod)
- local scld = elem.allocate("BAUER", "SCLD")
- elem.element(elem.BAUER_PT_SCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_SCLD, "Name", "SCLD")
- elem.property(elem.BAUER_PT_SCLD, "Description", "Cloud - produces snow")
- elem.property(elem.BAUER_PT_SCLD, "Colour", 0xC0C0C0)
- elem.property(elem.BAUER_PT_SCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_SCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_SCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_SCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_SCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_SCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_SCLD, "Temperature", -273.15)
- elem.property(elem.BAUER_PT_SCLD, "Gravity", 0)
- local function SCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.snow.id
- end
- end
- tpt.element_func(SCLDUpdate,scld)
- local tcld = elem.allocate("BAUER", "TCLD")
- elem.element(elem.BAUER_PT_TCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_TCLD, "Name", "TCLD")
- elem.property(elem.BAUER_PT_TCLD, "Description", "Cloud - produces thunderstorms")
- elem.property(elem.BAUER_PT_TCLD, "Colour", 0x1f1f1f)
- elem.property(elem.BAUER_PT_TCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_TCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_TCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_TCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_TCLD, "Advection", 0)
- elem.property(elem.BAUER_PT_TCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_TCLD, "Temperature", 1273.15)
- elem.property(elem.BAUER_PT_TCLD, "Gravity", 0)
- function TCLDUpdate(i,x,y,s,n)
- if math.random(0,7000) == 20 then
- tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'ligh')
- end
- end
- tpt.element_func(TCLDUpdate,tcld)
- local ccld = elem.allocate("BAUER", "CCLD")
- elem.element(elem.BAUER_PT_CCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_CCLD, "Name", "CCLD")
- elem.property(elem.BAUER_PT_CCLD, "Description", "Cloud - produces concrete")
- elem.property(elem.BAUER_PT_CCLD, "Colour", 0x00FFFFFF)
- elem.property(elem.BAUER_PT_CCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_CCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_CCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_CCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_CCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_CCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_CCLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_CCLD, "Gravity", 0)
- local function CCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.cnct.id
- end
- end
- tpt.element_func(CCLDUpdate,ccld)
- local lcld = elem.allocate("BAUER", "LCLD")
- elem.element(elem.BAUER_PT_LCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_LCLD, "Name", "LCLD")
- elem.property(elem.BAUER_PT_LCLD, "Description", "Cloud - produces lava")
- elem.property(elem.BAUER_PT_LCLD, "Colour", 0xFF4500)
- elem.property(elem.BAUER_PT_LCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_LCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_LCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_LCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_LCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_LCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_LCLD, "Temperature", 1273.15)
- elem.property(elem.BAUER_PT_LCLD, "Gravity", 0)
- local function LCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.lava.id
- end
- end
- tpt.element_func(LCLDUpdate,lcld)
- local gcld = elem.allocate("BAUER", "GCLD")
- elem.element(elem.BAUER_PT_GCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_GCLD, "Name", "GCLD")
- elem.property(elem.BAUER_PT_GCLD, "Description", "Cloud - produces gel")
- elem.property(elem.BAUER_PT_GCLD, "Colour", 0xff8d1a)
- elem.property(elem.BAUER_PT_GCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_GCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_GCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_GCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_GCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_GCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_GCLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_GCLD, "Gravity", 0)
- local function GCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.gel.id
- end
- end
- tpt.element_func(GCLDUpdate,gcld)
- local sncd = elem.allocate("BAUER", "SNCD")
- elem.element(elem.BAUER_PT_SNCD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_SNCD, "Name", "SNCD")
- elem.property(elem.BAUER_PT_SNCD, "Description", "Cloud - produces sand")
- elem.property(elem.BAUER_PT_SNCD, "Colour", 0xffb853)
- elem.property(elem.BAUER_PT_SNCD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_SNCD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_SNCD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_SNCD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_SNCD, "Advection", 1)
- elem.property(elem.BAUER_PT_SNCD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_SNCD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_SNCD, "Gravity", 0)
- local function SNCDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.sand.id
- end
- end
- tpt.element_func(SNCDUpdate,sncd)
- local ncld = elem.allocate("BAUER", "NCLD")
- elem.element(elem.BAUER_PT_NCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_NCLD, "Name", "NCLD")
- elem.property(elem.BAUER_PT_NCLD, "Description", "Cloud - produces nitroglycerin")
- elem.property(elem.BAUER_PT_NCLD, "Colour", 0x00ff00)
- elem.property(elem.BAUER_PT_NCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_NCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_NCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_NCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_NCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_NCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_NCLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_NCLD, "Gravity", 0)
- elem.property(elem.BAUER_PT_NCLD, "Flammable", 1000)
- elem.property(elem.BAUER_PT_NCLD, "Explosive", 2)
- local function NCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.nitr.id
- end
- end
- tpt.element_func(NCLDUpdate,ncld)
- local acld = elem.allocate("BAUER", "ACLD")
- elem.element(elem.BAUER_PT_ACLD, elem.element(elem.DEFAULT_PT_OXYG))
- elem.property(elem.BAUER_PT_ACLD, "Name", "ACLD")
- elem.property(elem.BAUER_PT_ACLD, "Description", "Cloud - produces acid")
- elem.property(elem.BAUER_PT_ACLD, "Colour", 0xFF0066)
- elem.property(elem.BAUER_PT_ACLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_ACLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_ACLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_ACLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_ACLD, "Advection", 0)
- elem.property(elem.BAUER_PT_ACLD, "Gravity", 0)
- elem.property(elem.BAUER_PT_ACLD, "Explosive", 0)
- elem.property(elem.BAUER_PT_ACLD, "Weight", 1)
- elem.property(elem.BAUER_PT_ACLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_ACLD, "Hardness", 0)
- function ACLDUpdate(i,x,y,s,n)
- if math.random(1,750) == 10 then
- tpt.create(x + math.random(-1,1), y + math.random(-1,1), 'acid')
- end
- end
- tpt.element_func(ACLDUpdate,acld)
- local ocld = elem.allocate("BAUER", "OCLD")
- elem.element(elem.BAUER_PT_OCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_OCLD, "Name", "OCLD")
- elem.property(elem.BAUER_PT_OCLD, "Description", "Cloud - produces oil")
- elem.property(elem.BAUER_PT_OCLD, "Colour", 0xe6e600)
- elem.property(elem.BAUER_PT_OCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_OCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_OCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_OCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_OCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_OCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_OCLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_OCLD, "Gravity", 0)
- local function OCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.oil.id
- end
- end
- tpt.element_func(OCLDUpdate,ocld)
- local icld = elem.allocate("BAUER", "ICLD")
- elem.element(elem.BAUER_PT_ICLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_ICLD, "Name", "ICLD")
- elem.property(elem.BAUER_PT_ICLD, "Description", "Cloud - produces isoz")
- elem.property(elem.BAUER_PT_ICLD, "Colour", 0x8000ff)
- elem.property(elem.BAUER_PT_ICLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_ICLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_ICLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_ICLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_ICLD, "Advection", 1)
- elem.property(elem.BAUER_PT_ICLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_ICLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_ICLD, "Gravity", 0)
- local function ICLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.isoz.id
- end
- end
- tpt.element_func(ICLDUpdate,icld)
- local bcld = elem.allocate("BAUER", "BCLD")
- elem.element(elem.BAUER_PT_BCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_BCLD, "Name", "BCLD")
- elem.property(elem.BAUER_PT_BCLD, "Description", "Cloud - produces broken vibranium")
- elem.property(elem.BAUER_PT_BCLD, "Colour", 0x59b300)
- elem.property(elem.BAUER_PT_BCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_BCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_BCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_BCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_BCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_BCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_BCLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_BCLD, "Gravity", 0)
- local function BCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.bvbr.id
- end
- end
- tpt.element_func(BCLDUpdate,bcld)
- local dcld = elem.allocate("BAUER", "DCLD")
- elem.element(elem.BAUER_PT_DCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_DCLD, "Name", "DCLD")
- elem.property(elem.BAUER_PT_DCLD, "Description", "Cloud - produces dust")
- elem.property(elem.BAUER_PT_DCLD, "Colour", 0xffffb3)
- elem.property(elem.BAUER_PT_DCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_DCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_DCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_DCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_DCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_DCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_DCLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_DCLD, "Gravity", 0)
- local function DCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.dust.id
- end
- end
- tpt.element_func(DCLDUpdate,dcld)
- local mcld = elem.allocate("BAUER", "MCLD")
- elem.element(elem.BAUER_PT_MCLD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_MCLD, "Name", "MCLD")
- elem.property(elem.BAUER_PT_MCLD, "Description", "Cloud - produces broken metal")
- elem.property(elem.BAUER_PT_MCLD, "Colour", 0x2f4f4f)
- elem.property(elem.BAUER_PT_MCLD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_MCLD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_MCLD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_MCLD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_MCLD, "Advection", 1)
- elem.property(elem.BAUER_PT_MCLD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_MCLD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_MCLD, "Gravity", 0)
- local function MCLDUpdate(i,x,y,s,n)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=tpt.el.brmt.id
- end
- end
- tpt.element_func(MCLDUpdate,mcld)
- local cncd = elem.allocate("BAUER", "CNCD")
- elem.element(elem.BAUER_PT_CNCD, elem.element(elem.DEFAULT_PT_WTRV))
- elem.property(elem.BAUER_PT_CNCD, "Name", "CNCD")
- elem.property(elem.BAUER_PT_CNCD, "Description", "Cloud - produces element of its ctype")
- elem.property(elem.BAUER_PT_CNCD, "Colour", 0xD2691E)
- elem.property(elem.BAUER_PT_CNCD, "MenuSection", 6)
- elem.property(elem.BAUER_PT_CNCD, "MenuVisible", 0)
- elem.property(elem.BAUER_PT_CNCD, "Loss", 0.1)
- elem.property(elem.BAUER_PT_CNCD, "AirLoss", 0.3)
- elem.property(elem.BAUER_PT_CNCD, "Advection", 0)
- elem.property(elem.BAUER_PT_CNCD, "Diffusion", 0.3)
- elem.property(elem.BAUER_PT_CNCD, "Temperature", 273.15)
- elem.property(elem.BAUER_PT_CNCD, "Gravity", 0)
- local function CNCDUpdate(i,x,y,s,n)
- local ctype = tpt.get_property("ctype",i)
- local w=math.random(0,2000)
- if w==1000 then
- tpt.parts[i].type=ctype
- end
- end
- tpt.element_func(CNCDUpdate,cncd)
- local backtab = elem.allocate("BAUER", "BACK") -- The BACK button, defined before all for a good effect :P
- -- Buttons code
- local cloudtab = elem.allocate("BAUER", "CLDS")
- elem.element(cloudtab, elem.element(elem.DEFAULT_PT_DUST))
- elem.property(cloudtab, "Name", "CLDS")
- elem.property(cloudtab, "Description", "Click to open the 'Clouds' tab.")
- elem.property(cloudtab, "Colour", 0xFFFFFF)
- elem.property(cloudtab, "MenuSection", elem.SC_GAS)
- elem.property(cloudtab, "Properties", elem.PROP_LIFE_DEC+elem.PROP_LIFE_KILL)
- elem.element(backtab, elem.element(elem.DEFAULT_PT_DUST))
- elem.property(backtab, "Name", "BACK")
- elem.property(backtab, "Description", "Click to go back to the normal menu.")
- elem.property(backtab, "Colour", 0xFFFFFF)
- elem.property(backtab, "MenuSection", elem.SC_GAS)
- elem.property(backtab, "MenuVisible", 0)
- elem.property(backtab, "Properties", elem.PROP_LIFE_DEC+elem.PROP_LIFE_KILL)
- local cloud = {}
- for i = 1, 255 do
- pcall(function()
- if elem.property(i, "MenuVisible") == 1 and elem.property(i, "MenuSection") == 6 then
- cloud[i] = true
- end
- end)
- end
- local function switch(n)
- if n == 1 then
- elem.property(clod, "MenuVisible", 1)
- elem.property(ccld, "MenuVisible", 1)
- elem.property(scld, "MenuVisible", 1)
- elem.property(lcld, "MenuVisible", 1)
- elem.property(tcld, "MenuVisible", 1)
- elem.property(gcld, "MenuVisible", 1)
- elem.property(sncd, "MenuVisible", 1)
- elem.property(ncld, "MenuVisible", 1)
- elem.property(acld, "MenuVisible", 1)
- elem.property(ocld, "MenuVisible", 1)
- elem.property(icld, "MenuVisible", 1)
- elem.property(bcld, "MenuVisible", 1)
- elem.property(dcld, "MenuVisible", 1)
- elem.property(mcld, "MenuVisible", 1)
- elem.property(cncd, "MenuVisible", 1)
- elem.property(backtab, "MenuVisible", 1)
- for i in pairs(cloud) do
- elem.property(i, "MenuVisible", 0)
- end
- elseif n == 0 then
- elem.property(clod, "MenuVisible", 0)
- elem.property(ccld, "MenuVisible", 0)
- elem.property(scld, "MenuVisible", 0)
- elem.property(lcld, "MenuVisible", 0)
- elem.property(tcld, "MenuVisible", 0)
- elem.property(gcld, "MenuVisible", 0)
- elem.property(sncd, "MenuVisible", 0)
- elem.property(ncld, "MenuVisible", 0)
- elem.property(acld, "MenuVisible", 0)
- elem.property(ocld, "MenuVisible", 0)
- elem.property(icld, "MenuVisible", 0)
- elem.property(bcld, "MenuVisible", 0)
- elem.property(dcld, "MenuVisible", 0)
- elem.property(mcld, "MenuVisible", 0)
- elem.property(cncd, "MenuVisible", 0)
- elem.property(backtab, "MenuVisible", 0)
- for i in pairs(cloud) do
- elem.property(i, "MenuVisible", 1)
- end
- end
- end
- local function buttons()
- if tpt.selectedl == elem.property(cloudtab, "Identifier") then
- switch(1)
- tpt.selectedl = "BAUER_PT_CLOD"
- elseif tpt.selectedl == elem.property(backtab, "Identifier") then
- switch(0)
- tpt.selectedl = "BAUER_PT_CLOD"
- end
- end
- tpt.register_step(buttons)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement