Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local t = {}
- local energy = {}
- local engaged = {}
- local online = {}
- local rpm = {}
- local restart = 0
- local avgrft = "..calculating.. "
- local avgrfth = 0
- local avgrftc = 0
- function getStatus()
- for i = 0, #t - 1 do
- engaged[i] = t[i].getInductorEngaged()
- online[i] = t[i].getActive()
- energy[i] = t[i].getEnergyStored()
- rpm[i] = t[i].getRotorSpeed()
- end
- end
- function getConnectedTurbines()
- local allDone = false
- local turbine = nil
- local i = 0
- repeat
- turbine = peripheral.wrap("BigReactors-Turbine_" .. i)
- if turbine ~= nil then
- t[i] = turbine
- i = i + 1
- end
- allDone = turbine == nil
- until allDone
- return i
- end
- no_turbines_error = getConnectedTurbines() == 0
- if no_turbines_error then
- printError("No turbines found!")
- end
- while true do
- term.clear()
- term.setCursorPos(1,1)
- local rft = 0
- getStatus()
- for i = 0, #t - 1 do
- t[i].setInductorEngaged(not(rpm[i] < 1780 or not (rpm[i] > 1820))) -- turn on coils when needed
- rft = rft + t[i].getEnergyProducedLastTick()
- end
- avgrfth = avgrfth + rft
- if avgrftc == 5 then
- avgrft = avgrfth / 5
- avgrftc = 0
- avgrfth = 0
- end
- avgrftc = avgrftc + 1
- print("Producing " .. rft .. "rf/t")
- print("Average: " .. avgrft .. "rf/t")
- restart = restart + 1
- if restart == 50 then
- --os.reboot()
- else
- os.sleep(1)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement