0.0.2
This commit is contained in:
parent
1a622eb162
commit
b74dca584f
4 changed files with 70 additions and 2 deletions
6
README
6
README
|
@ -5,3 +5,9 @@ A mod for The Powder Toy using NACSL. It adds cool elements.
|
|||
Elements
|
||||
------------
|
||||
* BVIR - An unkillable, ever-spreadable virus.
|
||||
* HYBT - An unmeltable battery (broken at the moment).
|
||||
* FLSA - Flaming sand, spawns at 10,000 Kelvin.
|
||||
|
||||
Note
|
||||
--------
|
||||
This mod must be placed in "nacsl/viruslabs" to properly work.
|
||||
|
|
|
@ -3,4 +3,8 @@
|
|||
<h2>Elements</h2>
|
||||
<ul>
|
||||
<li>BVIR - An unkillable, ever-spreadable virus.</li>
|
||||
<li>HYBT - An unmeltable battery (broken at the moment).</li>
|
||||
<li>FLSA - Flaming sand, spawns at 10,000 Kelvin.</li>
|
||||
</ul>
|
||||
<h2>Note</h2>
|
||||
<p>This mod must be placed in "nacsl/viruslabs" to properly work.</p>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
VirusLabs
|
||||
0.0.1
|
||||
0.0.2
|
||||
threeoh6000
|
||||
Elements that are experimental and scary! VirusLabs brings the best in elemental technology!
|
||||
0.1.0
|
||||
0.2.0
|
||||
|
|
58
run.lua
58
run.lua
|
@ -1,3 +1,31 @@
|
|||
local vanilla = false
|
||||
if fs.exists("nacsl/viruslabs/labs.conf") then
|
||||
local f = io.open("nacsl/viruslabs/labs.conf")
|
||||
io.input(f)
|
||||
local i = 0
|
||||
for x in io.lines() do
|
||||
if x == "true" and i == 0 then
|
||||
vanilla = true
|
||||
elseif x == "false" and i == 0 then
|
||||
vanilla = false
|
||||
end
|
||||
end
|
||||
io.close(f)
|
||||
end
|
||||
|
||||
local function updatesettings()
|
||||
local f = io.open("nacsl/viruslabs/labs.conf", "w")
|
||||
io.output(f)
|
||||
if vanilla then
|
||||
vanilla = false
|
||||
io.write("false")
|
||||
else
|
||||
vanilla = true
|
||||
io.write("true")
|
||||
end
|
||||
io.close()
|
||||
end
|
||||
|
||||
local bluevirus = elements.allocate("VIRUSLABS","BVIR")
|
||||
elements.element(bluevirus, elements.element(elements.DEFAULT_PT_VIRS))
|
||||
elements.property(bluevirus, "Name", "BVIR")
|
||||
|
@ -18,4 +46,34 @@ local function bluevirusinfect(i,x,y,s,nt)
|
|||
end
|
||||
elements.property(bluevirus, "Update", bluevirusinfect)
|
||||
|
||||
local superheat = elements.allocate("VIRUSLABS","FLSA")
|
||||
elements.element(superheat, elements.element(elements.DEFAULT_PT_SAND))
|
||||
elements.property(superheat, "Name", "FLSA")
|
||||
elements.property(superheat, "Description", "Flaming sand, extremely hot.")
|
||||
elements.property(superheat, "Temperature", 10000)
|
||||
elements.property(superheat, "Colour", 0xBC544B)
|
||||
elements.property(superheat, "Meltable", 0)
|
||||
|
||||
local superbattery = elements.allocate("VIRUSLABS","HYBT")
|
||||
elements.element(superbattery, elements.element(elements.DEFAULT_PT_BTRY))
|
||||
elements.property(superbattery, "Name", "HYBT")
|
||||
elements.property(superbattery, "Description", "Hyper Battery, can't melt.")
|
||||
elements.property(superbattery, "HighTemperature", ITL)
|
||||
local function spark(i,x,y,s,nt)
|
||||
for r in sim.neighbors(x,y,1,1) do
|
||||
if sim.partProperty(r,"type") ~= elem.VIRUSLABS_PT_HYBT then
|
||||
sim.partChangeType(r,DEFAULT_PT_SPRK)
|
||||
end
|
||||
end
|
||||
end
|
||||
elements.property(superbattery, "Update", spark)
|
||||
local modmenu = Window:new(-1,-1,92,48)
|
||||
local vanillabox = Checkbox:new(6,24,16,16,"Vanilla Mode")
|
||||
local closebut = Button:new(77,0,15,15,"X")
|
||||
vanillabox:checked(vanilla)
|
||||
vanillabox:action(function(sender, checked) updatesettings() end)
|
||||
closebut:action(function(sender) interface.closeWindow(modmenu) end)
|
||||
modmenu:addComponent(closebut)
|
||||
modmenu:addComponent(vanillabox)
|
||||
nacsl.hook("viruslabs",modmenu)
|
||||
print("VirusLabs activated!")
|
||||
|
|
Reference in a new issue