Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Loepie78s Big Reactor Manager v0.1 based on :
- --FusionNrg's Big Reactor Manager v1.1
- --With wireless
- --last revised 22-2-2014
- -- designed for reactor to rear of computer with at least a 2x3 monitor on the top of the computer
- -- version 201402220041
- function wrapmonitor()
- --applicable monitor variables
- monitor = peripheral.wrap("right")
- monitor.clear()
- monitor.setCursorPos(1, 1)
- monitor.write("System Initialized")
- sleep(0,5)
- width, height = monitor.getSize()
- monitor.setCursorPos(1, 2)
- monitor.write("Screen size:" ..width.." by:"..height)
- sleep(0.5)
- monitor.setCursorPos(1, 3)
- monitor.write("Next step")
- sleep(0.5)
- end
- function configvars()
- rods = 99
- target = 8000000 -- adjustable between 0 and 10 million depending how much you want on hand
- full = 10000000 -- full buffer size
- end
- function wrapmodem()
- --applicable modem variables
- monitor.setCursorPos(1, 4)
- monitor.write("Opening Modem")
- monitor.write(".")
- monitor.write("..")
- monitor.write("...")
- monitor.write("....")
- modem = peripheral.wrap("top")
- monitor.setCursorPos(1, 5)
- monitor.write("Done!, next step")
- monitor.setCursorPos(1, 6)
- monitor.write("Opening modemport 400 for Reactor Active")
- modem.open(400)--Open channel 400 so that we can listen on it : Reactor Active
- monitor.setCursorPos(1, 7)
- monitor.write("Opening modemport 401 for Reactor Temperature")
- modem.open(401)--Open channel 401 so that we can listen on it : Reactor Temperature
- monitor.setCursorPos(1, 8)
- monitor.write("Opening modemport 402 for Reactor Temperature")
- modem.open(402)--Open channel 402 so that we can listen on it : Reactor Stored Energy
- monitor.setCursorPos(1, 9)
- monitor.write("Opening modemport 403 for Reactor Produced Energy")
- modem.open(403)--Open channel 403 so that we can listen on it : Reactor Produced Energy
- monitor.setCursorPos(1, 10)
- monitor.write("Opening modemport 404 for Reactor Control Rod Level")
- modem.open(404)--Open channel 404 so that we can listen on it : Reactor Control Rod Level
- monitor.setCursorPos(1, 11)
- monitor.write("All modem channels Reactor 1 open, Next reactor")
- -------------------------------------------------------
- monitor.setCursorPos(1, 12)
- monitor.write("Opening modemport 500 for Reactor Active")
- modem.open(500)--Open channel 500 so that we can listen on it : Reactor Active
- monitor.setCursorPos(1, 13)
- monitor.write("Opening modemport 501 for Reactor Temperature")
- modem.open(501)--Open channel 501 so that we can listen on it : Reactor Temperature
- monitor.setCursorPos(1, 14)
- monitor.write("Opening modemport 502 for Reactor Temperature")
- modem.open(502)--Open channel 502 so that we can listen on it : Reactor Stored Energy
- monitor.setCursorPos(1, 15)
- monitor.write("Opening modemport 503 for Reactor Produced Energy")
- modem.open(503)--Open channel 503 so that we can listen on it : Reactor Produced Energy
- monitor.setCursorPos(1, 16)
- monitor.write("Opening modemport 504 for Reactor Control Rod Level")
- modem.open(504)--Open channel 504 so that we can listen on it : Reactor Control Rod Level
- monitor.setCursorPos(1, 17)
- monitor.write("All modem channels Reactor 2 open, Next reactor")
- -----------------------
- monitor.setCursorPos(1, 18)
- monitor.write("Opening modemport 600 for Reactor Active")
- modem.open(600)--Open channel 600 so that we can listen on it : Reactor Active
- monitor.setCursorPos(1, 19)
- monitor.write("Opening modemport 601 for Reactor Temperature")
- modem.open(601)--Open channel 601 so that we can listen on it : Reactor Temperature
- monitor.setCursorPos(1, 20)
- monitor.write("Opening modemport 602 for Reactor Temperature")
- modem.open(602)--Open channel 602 so that we can listen on it : Reactor Stored Energy
- monitor.setCursorPos(1, 21)
- monitor.write("Opening modemport 603 for Reactor Produced Energy")
- modem.open(603)--Open channel 603 so that we can listen on it : Reactor Produced Energy
- monitor.setCursorPos(1, 22)
- monitor.write("Opening modemport 604 for Reactor Control Rod Level")
- modem.open(604)--Open channel 604 so that we can listen on it : Reactor Control Rod Level
- monitor.setCursorPos(1, 23)
- monitor.write("All modem channels open, move along nothing to see here :)")
- sleep(0.5)
- end
- function getmodeminfo()
- local event400, modemSide400, senderChannel400, replyChannel400, Message400, senderDistance400 = os.pullEvent("modem_message") --channel 400 so : Reactor Active
- ReactorActive = Message400
- print ("Reactor 400 active: " , ReactorActive)
- local event401, modemSide401, senderChannel401, replyChannel401, Message401, senderDistance401 = os.pullEvent("modem_message") --channel 401 so : Reactor Temperature
- ReactorTemp = Message401
- print ("Reactor 400 Temp: " , ReactorTemp)
- local event402, modemSide402, senderChannel402, replyChannel402, Message402, senderDistance402 = os.pullEvent("modem_message") --channel 402 so : Reactor Stored Energy
- ReactorES = Message402
- print ("Reactor 400 Stored Energy: " , ReactorES)
- local event403, modemSide403, senderChannel403, replyChannel403, Message403, senderDistance403 = os.pullEvent("modem_message") --channel 403 so : Reactor Produced Energy
- ReactorLT = Message403
- print ("Reactor 400 produced Energy: " , ReactorLT)
- local event404, modemSide404, senderChannel404, replyChannel404, Message404, senderDistance404 = os.pullEvent("modem_message") --channel 404 so : Reactor Control Rod Level
- ReactorCRL = Message404
- print ("Reactor 400 Control Rod: " , ReactorCRL)
- -----------------
- local event500, modemSide500, senderChannel500, replyChannel500, Message500, senderDistance500 = os.pullEvent("modem_message") --channel 500 so : Reactor Active
- ReactorActive5 = Message500
- print ("Reactor 500 active: " , ReactorActive5)
- local event501, modemSide501, senderChannel501, replyChannel501, Message501, senderDistance501 = os.pullEvent("modem_message") --channel 501 so : Reactor Temperature
- ReactorTemp5 = Message501
- print ("Reactor 500 Temp: " , ReactorTemp5)
- local event502, modemSide502, senderChannel502, replyChannel502, Message502, senderDistance502 = os.pullEvent("modem_message") --channel 502 so : Reactor Stored Energy
- ReactorES5 = Message502
- print ("Reactor 500 Stored Energy: " , ReactorES5)
- local event503, modemSide503, senderChannel503, replyChannel503, Message503, senderDistance503 = os.pullEvent("modem_message") --channel 503 so : Reactor Produced Energy
- ReactorLT5 = Message503
- print ("Reactor 500 produced Energy: " , ReactorLT5)
- local event504, modemSide504, senderChannel504, replyChannel504, Message504, senderDistance504 = os.pullEvent("modem_message") --channel 504 so : Reactor Control Rod Level
- ReactorCRL5 = Message504
- print ("Reactor 500 Control Rod: " , ReactorCRL5)
- ---------------------------------
- local event600, modemSide600, senderChannel600, replyChannel600, Message600, senderDistance600 = os.pullEvent("modem_message") --channel 600 so : Reactor Active
- ReactorActive6 = Message600
- print ("Reactor 600 active: " , ReactorActive6)
- local event601, modemSide601, senderChannel601, replyChannel601, Message601, senderDistance601 = os.pullEvent("modem_message") --channel 601 so : Reactor Temperature
- ReactorTemp6 = Message601
- print ("Reactor 600 Temp: " , ReactorTemp6)
- local event602, modemSide602, senderChannel602, replyChannel602, Message602, senderDistance602 = os.pullEvent("modem_message") --channel 602 so : Reactor Stored Energy
- ReactorES6 = Message602
- print ("Reactor 600 Stored Energy: " , ReactorES6)
- local event603, modemSide603, senderChannel603, replyChannel603, Message603, senderDistance603 = os.pullEvent("modem_message") --channel 603 so : Reactor Produced Energy
- ReactorLT6 = Message603
- print ("Reactor 600 produced Energy: " , ReactorLT6)
- local event604, modemSide604, senderChannel604, replyChannel604, Message604, senderDistance604 = os.pullEvent("modem_message") --channel 604 so : Reactor Control Rod Level
- ReactorCRL6 = Message604
- print ("Reactor 600 Control Rod: " , ReactorCRL6)
- end
- function displayStats() -- display stats to the monitor in 2 columns
- --wrap monitor and pull sizing
- monitor.clear()
- monitor.setCursorPos(1, 9)
- monitor.write("Reactor 1 Active: ")
- monitor.write(ReactorActive)
- monitor.setCursorPos(1, 10)
- monitor.write("Temp: ")
- monitor.setCursorPos(1, 11)
- monitor.write("Buffer: ")
- monitor.setCursorPos(19, 10)
- monitor.write(ReactorTemp)
- monitor.write(" Cel. ")
- monitor.setCursorPos(19, 11)
- monitor.write(ReactorES)
- monitor.write(" %")
- monitor.setCursorPos(1, 12)
- monitor.write("Energy Last Tick: ")
- monitor.setCursorPos(19, 12)
- monitor.write(ReactorLT)
- monitor.write(" RF/t")
- monitor.setCursorPos(1, 13)
- monitor.write("Rod Insertion:")
- monitor.setCursorPos(19, 13)
- monitor.write(ReactorCRL)
- monitor.write(" %")
- ------------------------------------------------
- monitor.setCursorPos(1, 16)
- monitor.write("Reactor 2 Active: ")
- monitor.write(ReactorActive5)
- monitor.setCursorPos(1, 17)
- monitor.write("Temp: ")
- monitor.setCursorPos(1, 18)
- monitor.write("Buffer: ")
- monitor.setCursorPos(19, 17)
- monitor.write(ReactorTemp5)
- monitor.write(" Cel. ")
- monitor.setCursorPos(19, 18)
- monitor.write(ReactorES5)
- monitor.write(" %")
- monitor.setCursorPos(1, 19)
- monitor.write("Energy Last Tick: ")
- monitor.setCursorPos(19, 19)
- monitor.write(ReactorLT5)
- monitor.write(" RF/t")
- monitor.setCursorPos(1, 20)
- monitor.write("Rod Insertion:")
- monitor.setCursorPos(19, 20)
- monitor.write(ReactorCRL5)
- monitor.write(" %")
- -----------------------------------------------
- monitor.setCursorPos(1, 23)
- monitor.write("Reactor 3 Active: ")
- monitor.write(ReactorActive6)
- monitor.setCursorPos(1, 24)
- monitor.write("Temp: ")
- monitor.setCursorPos(1, 25)
- monitor.write("Buffer: ")
- monitor.setCursorPos(19, 24)
- monitor.write(ReactorTemp6)
- monitor.write(" Cel. ")
- monitor.setCursorPos(19, 25)
- monitor.write(ReactorES6)
- monitor.write(" %")
- monitor.setCursorPos(1, 26)
- monitor.write("Energy Last Tick: ")
- monitor.setCursorPos(19, 26)
- monitor.write(ReactorLT6)
- monitor.write(" RF/t")
- monitor.setCursorPos(1, 27)
- monitor.write("Rod Insertion:")
- monitor.setCursorPos(19, 27)
- monitor.write(ReactorCRL6)
- monitor.write(" %")
- end
- function main()
- x = 0
- while (true) do
- getmodeminfo()
- sleep(1)
- displayStats()
- sleep(1)
- end
- end
- wrapmonitor()
- configvars()
- wrapmodem()
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement