Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- rednet.open("top")
- actualLevel = 0
- requestLevel = 0
- id = 0
- request = "null"
- function setOutputLevel()
- if actualLevel == 0 then
- rs.setBundledOutput("right", colors.white)
- elseif actualLevel == 1 then
- rs.setBundledOutput("right", colors.blue)
- else
- rs.setBundledOutput("right", colors.lime)
- end
- end
- function receive()
- id, request = rednet.receive()
- if id > 0 then
- requestLevel = tonumber(request)
- return true
- else
- return false
- end
- end
- function elevatorUp(levels)
- move = levels*8
- for i = 1, move do
- rs.setBundledOutput("left", colors.white) -- deployer
- os.sleep(1)
- rs.setBundledOutput("left", colors.lime) -- EngineUp
- os.sleep(1)
- rs.setBundledOutput("left", colors.black)
- end
- actualLevel = actualLevel + levels
- end
- function elevatorDown(levels)
- move = levels*8
- for i = 1, move do
- rs.setBundledOutput("left", colors.orange) -- EngineDown
- os.sleep(1)
- rs.setBundledOutput("left", colors.blue) -- Breaker
- os.sleep(1)
- rs.setBundledOutput("left", colors.black)
- end
- actualLevel = actualLevel - levels
- end
- while true do
- if receive() then
- if actualLevel == requestLevel then
- id = 0
- elseif actualLevel < requestLevel then
- elevatorUp(requestLevel - actualLevel)
- id = 0
- else
- elevatorDown(actualLevel - requestLevel)
- id = 0
- end
- setOutputLevel()
- end
- os.sleep(1)
- end
- rednet.close("top")
Advertisement
Add Comment
Please, Sign In to add comment