Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- receivingID = 2
- messageOpen = "///OPENING\\\\\\ "
- messageClose = "///CLOSING\\\\\\ "
- monitor = peripheral.find("monitor")
- rednet.open("front")
- state = false
- if fs.exists("saveState") then
- h = fs.open("saveState","r")
- value = h.readLine()
- if value == "true" then
- state = true
- elseif value == "false" then
- state= false
- else
- state = false
- end
- h.close()
- end
- function updateState()
- while true do
- id, message = rednet.receive()
- if id == receivingID then
- if message == "open" then
- state = true
- redstone.setAnalogOutput("top",15)
- sleep(5)
- redstone.setAnalogOutput("top",0)
- elseif message == "close" then
- redstone.setAnalogOutput("top",15)
- sleep(5)
- redstone.setAnalogOutput("top",0)
- state = false
- end
- h = fs.open("saveState","w")
- if state then
- h.writeLine("true")
- else
- h.writeLine("false")
- end
- h.close()
- end
- end
- end
- function useState()
- while true do
- monitor.clear()
- monitor.setCursorPos(1,1)
- monitor.setBackgroundColor(colors.blue)
- monitor.setTextScale(3)
- if state then
- redstone.setAnalogOutput("right",15)
- redstone.setAnalogOutput("left",0)
- monitor.write(messageOpen)
- else
- redstone.setAnalogOutput("right",0)
- redstone.setAnalogOutput("left",15)
- monitor.write(messageClose)
- end
- sleep(0.1)
- end
- end
- parallel.waitForAll(updateState,useState)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement