Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function round(num, idp)
- local mult = 10^(idp or 0)
- return math.floor(num * mult + 0.5) / mult
- end
- local reactor = peripheral.wrap("BigReactors-Reactor_0")
- local monitor = peripheral.wrap("top")
- local energystored = 0
- local puffer = 0
- local max = 10000000
- local maxtemp = 2000
- local i = 0
- local zeile = 1
- local timeout = os.startTimer(1)
- local x = 0
- local y = 0
- monitor.clear()
- monitor.setTextScale(1)
- if reactor.getConnected() == true then
- while true do
- zeile = 1
- sleep(0.5)
- monitor.clear()
- monitor.setCursorPos(1,zeile)
- zeile = zeile + 1
- if reactor.getActive() then
- monitor.setTextColor(colors.green)
- monitor.write("Reaktor aktiv RF/Tick: ")
- monitor.write(reactor.getEnergyProducedLastTick())
- else
- monitor.setTextColor(colors.red)
- monitor.write("Reaktor inaktiv")
- end
- monitor.setTextColor(colors.white)
- monitor.setCursorPos(1,zeile)
- zeile = zeile + 1
- monitor.write("Energiepuffer: [")
- puffer = reactor.getEnergyStored()
- if energystored > puffer then
- monitor.setTextColor(colors.red)
- else
- monitor.setTextColor(colors.green)
- end
- energystored = puffer
- for i = 0,(energystored / max * 10),1 do
- monitor.write(":")
- end
- for i = i,10 - (energystored / max * 10),1 do
- monitor.write(" ")
- end
- monitor.setTextColor(colors.white)
- monitor.write("] - ")
- monitor.write(round(energystored / max * 100),2)
- if (energystored / max * 10) > 7 then
- reactor.setActive(false)
- end
- if (energystored / max * 10) < 2 then
- reactor.setActive(true)
- end
- if (reactor.getCasingTemperature() / maxtemp * 10) > 9 then
- reactor.setActive(false)
- end
- monitor.setCursorPos(1,zeile)
- monitor.write("C-Temp: [")
- for i = 0,(reactor.getCasingTemperature() / maxtemp * 10),1 do
- monitor.write(":")
- end
- for i = i,10 - (reactor.getCasingTemperature() / maxtemp * 10),1 do
- monitor.write(" ")
- end
- monitor.write("] - ")
- monitor.write(round(reactor.getCasingTemperature() / maxtemp * 100),2)
- zeile = zeile + 1
- monitor.setCursorPos(1,zeile)
- monitor.write("F-Temp: [")
- for i = 0,(reactor.getFuelTemperature() / maxtemp * 10),1 do
- monitor.write(":")
- end
- for i = i,10 - (reactor.getFuelTemperature() / maxtemp * 10),1 do
- monitor.write(" ")
- end
- monitor.write("] - ")
- monitor.write(round(reactor.getFuelTemperature() / maxtemp * 100),2)
- zeile = zeile + 1
- monitor.setCursorPos(1,zeile)
- monitor.write("STAB-1 + - ")
- monitor.write(reactor.getControlRodLevel(1))
- zeile = zeile + 1
- monitor.setCursorPos(1,zeile)
- monitor.write("STAB-2 + - ")
- monitor.write(reactor.getControlRodLevel(0))
- zeile = zeile + 1
- monitor.setCursorPos(1,zeile)
- monitor.write("STAB-3 + - ")
- monitor.write(reactor.getControlRodLevel(2))
- zeile = zeile + 1
- monitor.setCursorPos(1,zeile)
- monitor.write("STAB-4 + - ")
- monitor.write(reactor.getControlRodLevel(3))
- zeile = zeile + 1
- monitor.setCursorPos(1,zeile)
- monitor.write("STAB-5 + - ")
- monitor.write(reactor.getControlRodLevel(4))
- zeile = zeile + 1
- timeout = os.startTimer(1)
- local event = {os.pullEvent()}
- if event[1] == "monitor_touch" then
- x = event[3]
- y = event[4]
- elseif event[1] == "timer" and event[2] == timeout then
- end
- if y == 5 and x == 8 then
- reactor.setControlRodLevel(1,reactor.getControlRodLevel(1)+5)
- end
- if y == 5 and x == 10 then
- reactor.setControlRodLevel(1,reactor.getControlRodLevel(1)-5)
- end
- if y == 6 and x == 8 then
- reactor.setControlRodLevel(0,reactor.getControlRodLevel(0)+5)
- end
- if y == 6 and x == 10 then
- reactor.setControlRodLevel(0,reactor.getControlRodLevel(0)-5)
- end
- if y == 7 and x == 8 then
- reactor.setControlRodLevel(2,reactor.getControlRodLevel(2)+5)
- end
- if y == 7 and x == 10 then
- reactor.setControlRodLevel(2,reactor.getControlRodLevel(2)-5)
- end
- if y == 8 and x == 8 then
- reactor.setControlRodLevel(3,reactor.getControlRodLevel(3)+5)
- end
- if y == 8 and x == 10 then
- reactor.setControlRodLevel(3,reactor.getControlRodLevel(3)-5)
- end
- if y == 9 and x == 8 then
- reactor.setControlRodLevel(4,reactor.getControlRodLevel(4)+5)
- end
- if y == 9 and x == 10 then
- reactor.setControlRodLevel(4,reactor.getControlRodLevel(4)-5)
- end
- x = 0
- y = 0
- if redstone.getInput("bottom") then
- reactor.setAllControlRodLevels(100)
- reactor.setActive(false)
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement