Xgamer911

ReactorControl

Nov 2nd, 2014
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.71 KB | None | 0 0
  1. reactor = peripheral.wrap("back")
  2.  
  3. local totalenergy
  4. local totalenergylasttick = 0
  5. local comparelasttick
  6. local crinsertion
  7. local emax=10000000
  8.  
  9. reactor.setAllControlRodLevels(0)
  10.  
  11. function main()
  12.     while true do
  13.         reactorcheck = reactor.getConnected()
  14.         active = reactor.getActive()
  15.         numbercontrol = reactor.getNumberOfControlRods()
  16.         totalenergy = reactor.getEnergyStored()
  17.         lasttick = reactor.getEnergyProducedLastTick()
  18.  
  19.         --Is energy being used, should I turn on?
  20.         comparelasttick = totalenergy - totalenergylasttick
  21.         print(totalenergylasttick)
  22.         print(comparelasttick)
  23.         if comparelasttick == 0 then
  24.             reactor.setActive(false)
  25.         else
  26.             reactor.setActive(true)    
  27.         end
  28.        
  29.         monitor.clear()
  30.         print("Backup Fusion Reactor") 
  31.         print("---------------------")
  32.  
  33.         stractive = tostring(active)
  34.         print("Active :" .. stractive)
  35.  
  36.         strtotalenergy= tostring(totalenergy)
  37.         print("Total Energy :" .. strtotalenergy)
  38.  
  39.         strlasttick = tostring(lasttick)
  40.         print("Energy Produced Last Tick :" .. strlasttick )
  41.        
  42.         for i=0,numbercontrol-1 do
  43.             crinsertion = reactor.getControlRodLevel(i)
  44.             print("Control Rod " .. i .. " : " .. crinsertion)
  45.         end
  46.  
  47.         local e=reactor.getEnergyStored()
  48.         local p=math.floor(100*e/emax)
  49.         local a=p<100
  50.  
  51.         reactor.setAllControlRodLevels(p-1)
  52.  
  53.         os.startTimer(1)
  54.         totalenergylasttick = totalenergy
  55.  
  56.         local event,p1,p2,p3,p4,p5 = os.pullEvent()
  57.         if event == "key" then
  58.             reactor.setActive(true)
  59.                 break
  60.         elseif event == "peripheral_detach" or event == "peripheral" or event == "monitor_resize" then
  61.                 print("1")
  62.         elseif not (event == "timer" or event=="disk" or event=="disk_eject") then
  63.                 print("2")
  64.         end
  65.  
  66.     end
  67. end
  68.  
  69. main()
Advertisement
Add Comment
Please, Sign In to add comment