Advertisement
Axow01

Automatic Reactor 2.0

Mar 1st, 2020 (edited)
443
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.12 KB | None | 0 0
  1. local component = require("component")
  2. local sides = require("sides")
  3. local term = require("term")
  4. reacteur = component.br_reactor
  5. gpu = component.gpu
  6. max = reacteur.getEnergyCapacity()
  7. term.clear()
  8. local function niv()
  9.     local energy = reacteur.getEnergyStored()
  10.     kRFEnergy = (energy / 1000)
  11.     pct = (energy * 100) / max
  12. end
  13.  
  14. local function infoDisplay()
  15.     local energyProducedLastTick = reacteur.getEnergyProducedLastTick()
  16.     local energyProducedLastTickKRF = (energyProducedLastTick / 1000)
  17.     local fuelCapacity = reacteur.getFuelAmount()
  18.     local fuel = (fuelCapacity / 1000)
  19.     local dechetNucleaire = reacteur.getWasteAmount()
  20.     local statusActive = reacteur.getActive()
  21.     local dech = (dechetNucleaire / 1000)
  22.     if statusActive == false then
  23.         status = gpu.set(10,10,"Status                      : OFF")
  24.     else
  25.         status = gpu.set(10,10,"Status                      : ON   ")
  26.     end
  27.     infor = gpu.set(10,2,"           Informations")
  28.     pctDisplay = gpu.set(10,6,"Pourcentage d'énergie       : "..string.format("%6.0f",pct))
  29.     krfen = gpu.set(10,7,"Énergie stocké              : "..string.format("%5.2f",kRFEnergy))
  30.     productionByTick = gpu.set(10,5,"Énergie Produite Par Tick   : "..energyProducedLastTickKRF)
  31.     fuelDisplay = gpu.set(10,8,"Nombre de carburants        : "..string.format("%3.0f",fuel))
  32.     dechetNuc = gpu.set(10,9,"Nombre de déchets nucléaire : "..string.format("%3.2f",dech))
  33.    
  34.     pour = gpu.set(55,6,"%")
  35.     pour = gpu.set(55,5,"kRF/tick")
  36.     pour = gpu.set(55,7,"kRF")
  37.     pour = gpu.set(55,8,"Lingot")
  38.     pour = gpu.set(55,9,"Lingot")
  39.    
  40. end
  41.  
  42. local function waste()
  43.     wasteLevels = reacteur.getWasteAmount()
  44.     if wasteLevels >= 1000 then
  45.         reacteur.doEjectWaste()
  46.     end
  47. end
  48.  
  49. while true do
  50.     niv()
  51.     infoDisplay()
  52.     waste()
  53.     active = reacteur.getActive()
  54.     if active == false then
  55.         if pct <= 20 then
  56.             reacteur.setActive(true)
  57.         end
  58.     end
  59.  
  60.     if active == true then
  61.         if pct >= 99 then
  62.             reacteur.setActive(false)
  63.         end
  64.     end
  65.     os.sleep(1)
  66. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement