Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Variablen
- wModul = "bottom"
- zone = "Schlafzimmer"
- lamp = "right"
- --Code
- rednet.open(wModul)
- open = true
- header = zone
- function start()
- rednet.broadcast(zone .. " status?", "1900Door")
- senderId = rednet.receive("1900Door",3)
- if (open == true) then
- dashboard("Zimmer offen", senderId)
- else
- dashboard("Derzeit geschlossen", senderId)
- end
- updateRedstone()
- end
- function updateRedstone()
- if (open == true) then
- redstone.setOutput(lamp, true)
- else
- redstone.setOutput(lamp,false)
- end
- end
- function dashboard(status, id)
- shell.run("clear")
- maxX, maxY = term.getSize()
- term.setCursorPos(1,2)
- text = ""
- for i = 0, maxX - 1, 1 do
- text = text .. "#"
- end
- print(text)
- term.setCursorPos(math.floor((maxX - string.len(header)) / 2), 4)
- print(header)
- term.setCursorPos(math.floor((maxX - string.len(status)) / 2),math.floor(maxY / 2))
- print(status)
- text = ""
- text = "Sende Befehle an den Computer " .. tostring(id)
- term.setCursorPos(math.floor((maxX - string.len(text)) / 2),math.floor(maxY / 2) + 1)
- print(text)
- text = ""
- term.setCursorPos(1,maxY)
- for i = 0, maxX - 1, 1 do
- text = text .. "#"
- end
- print(text)
- warten = " Signal kann gesendet werden "
- term.setCursorPos(math.floor((maxX - string.len(warten)) / 2),maxY - 1)
- print(warten)
- end
- function signal()
- local event = os.pullEvent("redstone")
- if rs.getInput("top") then
- rednet.send(senderId, zone .. " status?", "1900Door")
- senderId, message, protocol = rednet.receive("1900Door",3)
- if (message == true) then
- rednet.send(senderId, zone .. " zu", "1900Door")
- open = false
- updateRedstone()
- rednet.broadcast("Die T\195\188r " .. zone .. " wurde geschlossen", "1900Info")
- elseif (message == false) then
- rednet.send(senderId, zone .. " auf", "1900Door")
- open = true
- updateRedstone()
- rednet.broadcast("Die T\195\188r f\195\188r " .. zone .. " wurde ge\195\182ffnet", "1900Info")
- end
- end
- end
- --Einmalig alles Updaten
- start()
- --Endlosschleife
- while true do
- signal()
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement