Guest User

Untitled

a guest
Jul 18th, 2019
23
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. print("Starting Reactor Controller")
  2. print("Version 1")
  3. print("By Bixilon")
  4.  
  5. --Init Modem
  6.  
  7. local modem_connected = false
  8.  
  9.  
  10. for _, side in pairs(rs.getSides()) do
  11.   if peripheral.getType(side) == "modem" then
  12.     modem_connected = true
  13.     rednet.open(side)
  14.   end
  15. end
  16.  
  17. if not modem_connected then
  18.   print("A modem was not found, please attach one and re-run this program")
  19.   stop()
  20. else
  21.   print("A modem was found! Connecting...")
  22. end
  23.  
  24. --Connecting done
  25.  
  26. local mode = 0 -- 0 = unset, 1 = controller (monitor), 2 = reactor controller, 3 = turbine controller
  27.  
  28.  
  29. --Init Reactor
  30.  
  31. local reactor_connected = false
  32. local reactor = nil
  33.  
  34. for _, side in pairs(rs.getSides()) do
  35.   if peripheral.getType(side) == "BigReactors-Reactor" then
  36.     reactor_connected = true
  37.     reactor = peripheral.wrap(side)
  38.   end
  39. end
  40.  
  41.  
  42. --Init Turbine
  43.  
  44. local turbine_connected = false
  45. local turbine = nil
  46.  
  47. for _, side in pairs(rs.getSides()) do
  48.   if peripheral.getType(side) == "BigReactors-Turbine" then
  49.     turbine_connected = true
  50.     turbine = peripheral.wrap(side)
  51.   end
  52. end
  53.  
  54. --Init Monitor
  55.  
  56. local monitor_connected = false
  57. local monitor = nil
  58.  
  59. for _, side in pairs(rs.getSides()) do
  60.   if peripheral.getType(side) == "monitor" then
  61.     monitor_connected = true
  62.     monitor = peripheral.wrap(side)
  63.   end
  64. end
  65.  
  66.  
  67. --Detect mode
  68. if monitor_connected then
  69.   mode = 1 -- Prio 1
  70.   print("Monitor connceted! I am THE controller now")
  71. elseif reactor_connected then
  72.   mode = 2 -- Prio 2
  73.   print("Reactor connected! I am a reactor controller now")
  74. elseif turbine_connected then
  75.   mode = 2 -- Prio 3
  76.   print("Turbine connceted! I am a turbine controller now")
  77. else
  78.   print("There is no monitor/turbine/reactor attatched! Please attatch one and re-run the program")
  79.   stop()
  80. end
  81.  
  82.  
  83.  
  84. --Reactor Controller
  85. if mode == 2 then
  86.   if not reactor.getConnected() then
  87.     -- Reactor does not work
  88.     print("Reactor is broken!")
  89.     stop()
  90.   end
  91.   if not reactor.isActivelyCooled() then
  92.     -- Reaktor does not produce steam!
  93.     print("Reactor does not produce steam")
  94.   end
  95. end
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106. --End
  107. function stop()
  108.   print("Stopping")
  109.   for _, side in pairs(rs.getSides()) do
  110.     if peripheral.getType(side) == "modem" then
  111.       present = true
  112.       rednet.close(side)
  113.     end
  114.   end
  115.   print("Stopped!")
  116.   do return end
  117. end
  118. stop()
Add Comment
Please, Sign In to add comment