Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- print("running...")
- cap = peripheral.find("tile_blockcapacitorbank_name")
- mon = peripheral.wrap("right")
- --mon = peripheral.find("monitor")
- rea = peripheral.find("BigReactors-Reactor")
- local numCapacitors = 2
- local enciendeA = 50
- local apagaA = 95
- local energia = 0
- local energiaGuardada = 0
- local energiaMax = 0
- local energiaGuardadaPorCiento = 0
- local produccionRF = 0
- local usoFuel = 0
- local tempCore = 0
- local reactorOnline = false
- function enciende()
- rea.setActive(true)
- end
- function apaga()
- rea.setActive(false)
- end
- function comma_value(cantidad)
- local formateo = cantidad
- local swap = false
- if formateo < 0 then
- formateo = formateo*-1
- swap = true
- end
- while true do
- formateo, k = string.gsub(formateo, "^(%d+)(%d%d%d)",'%1%2')
- if k == 0 then
- break
- end
- end
- if swap then
- formateo = "-"..formateo
- end
- return formateo
- end
- function muestraEnergia()
- mon.clear()
- mon.setCursorPos(1,1)
- mon.write("Usa de Energia: ")
- if energia < 0 then
- mon.setTextColor(colors.red)
- else
- mon.setTextColor(colors.lime)
- end
- mon.write(comma_value(math.floor(energia)).."RF/T")
- mon.setTextColor(colors.white)
- mon.setCursorPos(1,2)
- mon.write("Energia Almacenada: ")
- if energiaGuardadaPorCiento < 55 then
- mon.setTextColor(colors.red)
- elseif energiaGuardadaPorCiento >= 55 and energiaGuardadaPorCiento <= 85 then
- mon.setTextColor(colors.yellow)
- else
- mon.setTextColor(colors.lime)
- end
- mon.write(energiaGuardadaPorCiento.."%")
- mon.setTextColor(colors.white)
- mon.setCursorPos(1,3)
- mon.write("Este Reactor esta: ")
- if reactorOnline then
- mon.setTextColor(colors.lime)
- mon.write("ENCENDIDO")
- else
- mon.setTextColor(colors.red)
- mon.write("APAGADO")
- end
- mon.setTextColor(colors.white)
- mon.setCursorPos(1,4)
- mon.write("Generacion de RedstoneFluix: ")
- mon.setTextColor(colors.lime)
- mon.write(comma_value(math.floor(produccionRF)).."RF/T")
- mon.setTextColor(colors.white)
- mon.setCursorPos(1,5)
- mon.write("Temperatura interna: "..math.floor(tempCore).."c")
- mon.setCursorPos(1,6)
- mon.write("Uso de Combustible: "..usoFuel.."MB/T")
- end
- function compruebaEnergia()
- local energiaTemporal = 0
- energiaGuardada = cap.getEnergyStored()
- energiaMax = cap.getMaxEnergyStored()
- energiaGuardadaPorCiento = math.floor((energiaGuardada/energiaMax)*100)
- produccionRF = rea.getEnergyProducedLastTick()
- usoFuel = rea.getFuelConsumedLastTick()
- usoFuel = math.floor(usoFuel*100)
- usoFuel = usoFuel/100
- tempCore = rea.getFuelTemperature()
- reactorOnline = rea.getActive()
- energiaTemporal = cap.getEnergyStored()
- sleep(0.1)
- energia = (cap.getEnergyStored()-energiaTemporal)/2
- energia = energia*numCapacitors
- end
- function autoReactor()
- rea.setAllControlRodLevels(0)
- if energiaGuardadaPorCiento < enciendeA then
- if not reactorOnline then
- enciende()
- end
- end
- if energiaGuardadaPorCiento > apagaA then
- apaga()
- end
- end
- function muestraInfo()
- compruebaEnergia()
- muestraEnergia()
- autoReactor()
- end
- while true do
- muestraInfo()
- sleep(5)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement