Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function DrillMonitor()
- monitor = peripheral.wrap("monitor_1")
- monitor.setTextScale(0.5)
- rednet.broadcast("Status", "Drill"..Drill1ID)
- id, status = rednet.receive("Drill"..Drill1ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 1: active")
- term.redirect(monitor)
- print("First Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 1: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("First Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("\nComputer 1: inactive")
- term.setTextColor(colors.gray)
- term.redirect(monitor)
- print("First Laser Drill status: unknown")
- end
- rednet.broadcast("Status", "Drill"..Drill2ID)
- id, status = rednet.receive("Drill"..Drill2ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 2: active")
- term.redirect(monitor)
- print("Second Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 2: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("Second Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("\nComputer 2: inactive")
- term.setTextColor(colors.gray)
- term.redirect(monitor)
- print("Second Laser Drill status: unknown")
- end
- rednet.broadcast("Status", "Drill"..Drill3ID)
- id, status = rednet.receive("Drill"..Drill3ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 3: active")
- term.redirect(monitor)
- print("Third Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 3: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("Third Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("\nComputer 3: inactive")
- term.setTextColor(colors.gray)
- term.redirect(monitor)
- print("Third Laser Drill status: unknown")
- end
- rednet.broadcast("Status", "Drill"..Drill4ID)
- id, status = rednet.receive("Drill"..Drill4ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 4: active")
- term.redirect(monitor)
- print("Fourth Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 4: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("Fourth Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("\nComputer 4: inactive")
- term.setTextColor(colors.gray)
- term.redirect(monitor)
- print("Fourth Laser Drill status: unknown")
- end
- rednet.broadcast("Status", "Drill"..Drill5ID)
- id, status = rednet.receive("Drill"..Drill5ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 5: active")
- term.redirect(monitor)
- print("Fifth Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 5: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("Fifth Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- print("\nComputer 5: inactive")
- term.setTextColor(colors.gray)
- print("Fifth Laser Drill status: unknown")
- end
- rednet.broadcast("Status", "Drill"..Drill6ID)
- id, status = rednet.receive("Drill"..Drill6ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 6: active")
- term.redirect(monitor)
- print("Sixth Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 6: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("Sixth Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("\nComputer 6: inactive")
- term.setTextColor(colors.gray)
- term.redirect(monitor)
- print("Sixth Laser Drill status: unknown")
- end
- rednet.broadcast("Status", "Drill"..Drill7ID)
- id, status = rednet.receive("Drill"..Drill7ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 7: active")
- term.redirect(monitor)
- print("Seventh Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 7: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("Seventh Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("\nComputer 7: inactive")
- term.setTextColor(colors.gray)
- term.redirect(monitor)
- print("Seventh Laser Drill status: unknown")
- end
- rednet.broadcast("Status", "Drill"..Drill8ID)
- id, status = rednet.receive("Drill"..Drill8ID, 1)
- if status == "On" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 8: active")
- term.redirect(monitor)
- print("Eighth Laser Drill status: active")
- elseif status == "Off" then
- term.redirect(monitor)
- term.setTextColor(colors.green)
- term.redirect(monitor)
- print("\nComputer 8: active")
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("Eighth Laser Drill status: inactive")
- else
- term.redirect(monitor)
- term.setTextColor(colors.red)
- term.redirect(monitor)
- print("\nComputer 8: inactive")
- term.setTextColor(colors.gray)
- term.redirect(monitor)
- print("Eighth Laser Drill status: unknown")
- end
- os.sleep(1)
- term.redirect(monitor)
- shell.run("clear")
- DrillMonitor(true)
- end
- function Startup()
- if fs.exists("DrillIDs") then
- DataInit(true)
- if Drill1ID == nil then
- term.setTextColor(colors.red)
- print("\nInvalid drill IDs found\n")
- shell.run("delete DrillMonitor")
- print("Exiting program")
- os.sleep(2)
- else
- Warning(true)
- end
- else
- os.sleep(1)
- term.setTextColor(colors.red)
- print("\nNo drill IDs found\n")
- print("Exiting program")
- term.setTextColor(colors.white)
- shell.run("delete DrillMonitor")
- os.sleep(2)
- end
- end
- function DataInit()
- file = fs.open("DrillIDs/".."Data", "r")
- DrillData = {}
- Data = file.readLine()
- repeat
- table.insert(DrillData, Data)
- Data = file.readLine()
- until Data == nil
- file.close()
- Drill1ID = DrillData[1]
- Drill2ID = DrillData[2]
- Drill3ID = DrillData[3]
- Drill4ID = DrillData[4]
- Drill5ID = DrillData[5]
- Drill6ID = DrillData[6]
- Drill7ID = DrillData[7]
- Drill8ID = DrillData[8]
- end
- function Warning()
- Center("Monitoring drills\n\n\n")
- term.setTextColor(colors.red)
- Center("[Warning]\n")
- print("Monitoring may interfere with accessibility to the other computers")
- term.setTextColor(colors.white)
- DrillMonitor(true)
- end
- function Center(text)
- x, y = term.getSize()
- x2, y2 = term.getCursorPos()
- term.setCursorPos(math.ceil((x / 2) - (text:len() / 2)), y2)
- write(text)
- end
- rednet.open("top")
- os.sleep(0.2)
- Startup(true)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement