Xgamer911

ReactorControl2

Mar 12th, 2015
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.72 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.  
  24.        
  25.  
  26.         print("Backup Fusion Reactor") 
  27.         print("---------------------")
  28.  
  29.         stractive = tostring(active)
  30.         print("Active :" .. stractive)
  31.  
  32.         strtotalenergy= tostring(totalenergy)
  33.         print("Total Energy :" .. strtotalenergy)
  34.  
  35.         strlasttick = tostring(lasttick)
  36.         print("Energy Produced Last Tick :" .. strlasttick )
  37.        
  38.         if comparelasttick == 0 and totalenergy > 0 then
  39.             reactor.setActive(false)
  40.         else
  41.             reactor.setActive(true)    
  42.         end
  43.  
  44.  
  45.         for i=0,numbercontrol-1 do
  46.             crinsertion = reactor.getControlRodLevel(i)
  47.             print("Control Rod " .. i .. " : " .. crinsertion)
  48.         end
  49.  
  50.         local e=reactor.getEnergyStored()
  51.         local p=math.floor(100*e/emax)
  52.         local a=p<100
  53.  
  54.         reactor.setAllControlRodLevels(p-1)
  55.  
  56.         os.startTimer(1)
  57.         totalenergylasttick = totalenergy
  58.  
  59.         local event,p1,p2,p3,p4,p5 = os.pullEvent()
  60.         if event == "key" then
  61.             reactor.setActive(true)
  62.                 break
  63.         elseif event == "peripheral_detach" or event == "peripheral" or event == "monitor_resize" then
  64.                 print("1")
  65.         elseif not (event == "timer" or event=="disk" or event=="disk_eject") then
  66.                 print("2")
  67.         end
  68.  
  69.     end
  70. end
  71.  
  72. main()
Advertisement
Add Comment
Please, Sign In to add comment