Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local modem = peripheral.find("modem")
- term.clear()
- term.setCursorPos(1,1)
- print("Crude Oil Monitor")
- print("-=-=-=-=-=-=-=-=-=-")
- while rs.getInput("top") == false
- do
- local level1 = rs.getAnalogInput("left")
- local level2 = rs.getAnalogInput("right")
- local rigout = rs.getInput("back")
- local ctankout = rs.getInput("bottom")
- local crefine = rs.getInput("front")
- local function getTankPercentage(level)
- local tankLevels = {0, 5, 10, 15, 20, 30, 40, 45, 50, 60, 70, 75, 80, 90, 95, 100}
- return tankLevels[level+1]
- end
- term.clearLine()
- print("Crude Oil Input")
- if rigout == false
- then
- modem.transmit(22,5,"Closed")
- print("Closed")
- end
- if rigout == true
- then
- modem.transmit(22,5,"Open")
- print("Open")
- end
- print("Tank #1")
- local level1Percent = getTankPercentage(level1)
- modem.transmit(8,5,level1Percent.."%")
- print(level1Percent.."%")
- print("Tank #2")
- local level2Percent = getTankPercentage(level2)
- modem.transmit(9,5,level2Percent.."%")
- print(level2Percent.."%")
- print("Crude Tank Output")
- if ctankout == false
- then
- modem.transmit(10,5,"Closed")
- print("Closed")
- end
- if ctankout == true
- then
- modem.transmit(10,5,"Open")
- print("Open")
- end
- print("Crude Refinery Status")
- if crefine == false
- then
- modem.transmit(11,5,"Offline")
- print("Offline")
- end
- if crefine == true
- then
- modem.transmit(11,5,"Online")
- print("Online")
- end
- -- Control Oil Rig
- if (level1 >= 1) and (level2 >= 1)
- then
- modem.transmit(23,5,"On")
- end
- if (level1 == 0) and (level2 == 0)
- then
- modem.transmit(23,5,"Off")
- end
- -- Control Crude input
- if (level1 <=14) and (level2 <=14)
- then
- modem.transmit(26,2,"On")
- end
- if (level1 >=15) and (level2 >=15)
- then
- modem.transmit(26,2,"Off")
- end
- sleep(1)
- term.setCursorPos(1,3)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement