Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function getReactor()
- local pList = peripheral.getNames()
- local i,name
- for i,name in pairs(pList) do
- if peripheral.getType(name) == "BigReactors-Reactor" then
- print(i.." Is a reactor")
- return peripheral.wrap(name)
- end
- print(i.." Isn't a reactor")
- end
- end
- r = getReactor()
- function getMonitor()
- local pList = peripheral.getNames()
- local i,name
- for i,name in pairs(pList) do
- if peripheral.getType(name) == "monitor" then
- print(i.." Is a monitor")
- return peripheral.wrap(name)
- end
- print(i.." Isn't a monitor")
- end
- end
- m = getMonitor()
- function getEnergyCube()
- local pList = peripheral.getNames()
- local i,name
- for i,name in pairs(pList) do
- if peripheral.getType(name) == "Ultimate Energy Cube" then
- print(i.." Is a cube")
- return peripheral.wrap(name)
- end
- print(i.." Isn't a cube")
- end
- end
- cube = getEnergyCube()
- m.clear()
- function getECPC()
- energySto = cube.getStored()
- maxEnergy = cube.getMaxEnergy()
- cubeEnergy = (energySto*100) / maxEnergy
- cubeEnergyC = math.ceil(cubeEnergy)
- return cubeEnergyC
- end
- function getTemp()
- local iTemperature = math.ceil(r.getCasingTemperature())
- return iTemperature
- end
- function isActive()
- local var = r.getActive()
- if var == true then
- return true
- else return false end
- end
- function getEnergyTick()
- local var1 = math.ceil(r.getEnergyProducedLastTick())
- return var1 / 1000
- end
- function getConsoFuel()
- local varConso = r.getFuelConsumedLastTick()
- local varConso1
- if varConso == 0 then varConso1 = 0
- else
- varConso1 = string.sub(varConso,1,-3)
- end
- return varConso1
- end
- function getEnergySto()
- energyStoc = r.getEnergyStored()
- energyMax = 10000000
- energyS = (energyStoc*100) / energyMax
- local var4 = math.ceil(energyS)
- return var4
- end
- function getFuelA()
- local var2 = r.getFuelAmount()
- return math.ceil(var2 / 1000)
- end
- function getFuelAMax()
- local var3 = r.getFuelAmountMax()
- return var3 / 1000
- end
- function Allumer()
- r.setActive(true)
- end
- function Eteindre()
- r.setActive(false)
- end
- function writeColor(color, text)
- if (m.isColor()) then
- m.setTextColor(color)
- end
- m.write(text)
- if (m.isColor()) then
- m.setTextColor(colors.white)
- end
- end
- function centerPrintM(text, y)
- local w,h = m.getSize()
- m.setCursorPos(w/2 - text:len()/2, y)
- m.write(text)
- end
- function draw()
- m.clear()
- centerPrintM("Reactor :",2)
- m.setCursorPos(3,4)
- m.write("Reactor Statut :")
- m.setCursorPos(20,4)
- if isActive() then
- writeColor(colors.green,"ON")
- else
- writeColor(colors.red,"OFF")
- end
- m.setCursorPos(3,5)
- m.write("Production : "..getEnergyTick().." KRF/t")
- m.setCursorPos(3,6)
- m.write("Consommation : "..getConsoFuel().." mB/t")
- m.setCursorPos(3,7)
- m.write("Temperature : "..getTemp().." CĀ„B0")
- m.setCursorPos(3,8)
- m.write("Stockage : "..getEnergySto().." %")
- m.setCursorPos(3,9)
- m.write("Fuel : "..getFuelA().." / "..getFuelAMax().." L")
- m.setCursorPos(3,10)
- m.write("Energy Cube Level : "..getECPC().."%")
- --[[
- if rs.getInput("front") then
- Allumer()
- else
- Eteindre()
- end
- --]]
- if r.getActive() then
- if getECPC() >= 85 then Eteindre() end
- else
- if getECPC() <= 10 then Allumer() end
- end
- if getFuelA() <= 50 then
- rs.setOutput("top",true)
- elseif getFuelA() >= 350 then
- rs.setOutput("top",false)
- end
- end
- while true do
- draw()
- sleep(0.01)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement