Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- DebiSludgeBoiler - (c) monster010
- local boiler = {
- sb1 = {color = colors.red, name = "Boiler 1", x = 2, y = 2, w = 13, active = false},
- sb2 = {color = colors.green, name = "Boiler 2", x = 16, y = 2, w = 13, active = false},
- }
- ----------------------------------
- ----- DONT CHANGE UNDER THIS -----
- ----------------------------------
- local software = "DebiSludgeBoiler"
- local cfg = {}
- local monitor
- local button
- os.loadAPI("debisludgeboiler/api/config")
- os.loadAPI("debisludgeboiler/api/monster010")
- os.loadAPI("debisludgeboiler/api/btn")
- function addButtons()
- for name, data in pairs(boiler) do
- btn.add(name, data["name"], toggleFarm, name, data["x"], data["y"], data["w"], 3)
- end
- btn.screen()
- end
- function toggleFarm(name)
- local colorss = 32768
- boiler[name]["active"] = not boiler[name]["active"]
- btn.toggle(name)
- if not boiler[name]["active"] then
- write("Farm ")
- term.setTextColor(colors.green)
- write(boiler[name]["name"])
- term.setTextColor(colors.white)
- print(" wurde aktiviert")
- else
- write("Farm ")
- term.setTextColor(colors.red)
- write(boiler[name]["name"])
- term.setTextColor(colors.white)
- print(" wurde deaktiviert")
- end
- for name, data in pairs(boiler) do
- if data["active"] then
- colorss = colors.combine(colorss, data["color"])
- else
- colorss = colors.subtract(colorss, data["color"])
- end
- end
- rs.setBundledOutput(cfg["redSide"], colorss)
- save()
- end
- function save()
- monster010.saveFile("/debisludgeboiler/save", textutils.serialize(boiler))
- end
- function load()
- local colorss = 32768
- if fs.exists("/debisludgeboiler/save") then
- boiler = monster010.loadFile("/debisludgeboiler/save", true)
- end
- addButtons()
- for name, data in pairs(boiler) do
- if data["active"] then
- colorss = colors.combine(colorss, data["color"])
- else
- colorss = colors.subtract(colorss, data["color"])
- end
- btn.set(name, data["active"])
- end
- btn.screen()
- rs.setBundledOutput(cfg["redSide"], colorss)
- end
- function launchRestart()
- while true do
- local event, args = os.pullEvent("key")
- if args == 19 then
- os.reboot()
- end
- end
- end
- config.load("/debisludgeboiler/cfg")
- cfg = config.getConfig()
- monster010.construct(cfg["monSide"], software)
- monster010.startUp()
- monitor = monster010.getMonitor()
- btn.construct(monitor)
- load()
- monster010.startUpDone()
- while true do
- parallel.waitForAny(btn.getClick, launchRestart)
- end
Advertisement
Add Comment
Please, Sign In to add comment