Advertisement
mikebald

Reactor

Apr 16th, 2014
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.06 KB | None | 0 0
  1. local reactor = peripheral.wrap("back")
  2. local mon_rf = peripheral.wrap("monitor_1")
  3. local mon_stat = peripheral.wrap("monitor_2")
  4. local powerdraw = 0
  5.  
  6. function showPowerDraw()
  7.     local powerStart = reactor.getEnergyStored()
  8.     os.sleep(0.05) -- a tick
  9.     powerdraw = powerStart - reactor.getEnergyStored()
  10.     mon_rf.clear()
  11.     mon_rf.setCursorPos(1,1)
  12.     mon_rf.setTextScale(2)
  13.     mon_rf.write( powerdraw.." RF/t")
  14. end
  15.  
  16. function showStatus(status)
  17.     mon_stat.clear()
  18.     mon_stat.setCursorPos(1,1)
  19.     mon_stat.setTextScale(2)
  20.     mon_stat.write(status)
  21. end
  22.  
  23. function chargeReactor()
  24.     showStatus("Active")
  25.     reactor.setActive(true)
  26.     while( reactor.getEnergyStored() < 9000000 ) do
  27.         os.sleep(5)
  28.         showPowerDraw()
  29.     end
  30.     showStatus("Inactive")
  31.     reactor.setActive(false)
  32. end
  33.  
  34. function waitForReactorAccess()
  35.     while(not reactor.getConnected()) do
  36.         os.sleep(1)
  37.     end
  38. end
  39.  
  40. waitForReactorAccess()
  41. while true do
  42.     showPowerDraw()
  43.     if(reactor.getEnergyStored() < 50000) then
  44.         chargeReactor()
  45.     else
  46.         reactor.setActive(false)
  47.         showStatus("Inactive")
  48.     end
  49.     os.sleep(10)
  50. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement