Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- os.loadAPI("ocs/apis/sensor")
- local sensor = sensor.wrap("top")
- local basin = peripheral.wrap("right")
- local basinSide = "east"
- local signalBlock = "front"
- local signalLeftover = "left"
- local basinOffset = "1,-1,0"
- local controllerOffset = "1,0,-1"
- local det = sensor.getTargets()
- local amount = det[controllerOffset]["Tanks"][1]["Amount"]
- function metalTest()
- if metal == det[controllerOffset]["Tanks"][1]["Name"] then
- return true
- else
- metal = det[controllerOffset]["Tanks"][1]["Name"]
- return false
- end
- end
- function main()
- local metal = det[controllerOffset]["Tanks"][1]["Name"]
- if amount >= 1296 then
- while basin.pushItem(basinSide, 2, 1) < 1 do
- os.sleep(1)
- rs.setOutput(signalBlock, true)
- print("waiting for basin to fill")
- end
- --det[basinOffset]["Tanks"][1]["Amount"] < 1296 and
- rs.setOutput(signalBlock, false)
- print("block done")
- else
- while metalTest() do
- rs.setOutput(signalLeftover, true)
- print("sending to leftover")
- end
- rs.setOutput(signalLeftover, false)
- end
- end
- while true do
- main()
- end
- --print(textutils.serialize(det["1,0,-1"]))
- --for k,v in pairs(det["1,0,-1"]["Tanks"][1]) do
- --print(tostring(k).. " - "..tostring(v))
- --for x,y in pairs(v) do
- --print(tostring(x).. " = "..tostring(y))
- --print(textutils.serialize(v["Tanks"]))
- --end
- --end
- --print(det)
- --monitor.write(det)
- --.. " "..tostring(y)
- --60912
- --1block = 1296
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement