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("Refined Oil Tanks")
- print("-=-=-=-=-=-=-=-=-=-")
- while rs.getInput("top") == false
- do
- local level1 = rs.getAnalogInput("left")
- local level2 = rs.getAnalogInput("right")
- local loilout = rs.getInput("back")
- local hoilout = rs.getInput("bottom")
- 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("Light Oil Tank")
- local level1Percent = getTankPercentage(level1)
- modem.transmit(12,5,level1Percent.."%")
- print(level1Percent.."%")
- print("Light Oil Output")
- if loilout == false
- then
- modem.transmit(13,5,"Closed")
- print("Closed")
- end
- if loilout == true
- then
- modem.transmit(13,5,"Open")
- print("Open")
- end
- print("Heavy Oil Tank")
- local level2Percent = getTankPercentage(level2)
- modem.transmit(14,5,level2Percent.."%")
- print(level2Percent.."%")
- print("Heavy Oil Output")
- if hoilout == false
- then
- modem.transmit(15,5,"Closed")
- print("Closed")
- end
- if hoilout == true
- then
- modem.transmit(15,5,"Open")
- print("Open")
- end
- -- Control Light oil output
- if level1 >= 1
- then
- modem.transmit(26,5,"On")
- end
- if level1 == 0
- then
- modem.transmit(26,5,"Off")
- end
- -- Control Heavy oil output
- if level2 >= 1
- then
- modem.transmit(27,6,"On")
- end
- if level2 == 0
- then
- modem.transmit(27,6,"Off")
- end
- -- Control Crude refine
- if (level1 <=14) and (level2 <=14)
- then
- modem.transmit(26,4,"On")
- end
- if (level1 >=15) and (level2 >=15)
- then
- modem.transmit(26,4,"Off")
- end
- sleep(1)
- term.setCursorPos(1,3)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement