Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local id = os.getComputerID()
- local isActive
- local reactorStatus
- local currentFuel
- local prevFuel
- local maxFuel
- local currentPower
- local prevPower
- local maxPower = 1000000
- local tickPower
- local critPower = 300000
- local lowPower = 500000
- local maxPower = 950000
- local caseTemp
- local fuelTemp
- local statusTermColour
- local activeTermColour
- local percent
- function openRednet()
- local listOfSides = rs.getSides()
- listofPossibles = {}
- local counter1 = 0
- while true do
- counter1 = counter1+1
- if peripheral.isPresent(tostring(listOfSides[counter1])) and peripheral.getType(listOfSides[counter1]) == "modem" then
- table.insert(listofPossibles,tostring(listOfSides[counter1]))
- end
- if counter1 == 6 and table.maxn(listofPossibles) == 0 then
- return nil
- end
- if counter1 == 6 and table.maxn(listofPossibles) ~= 0 then
- rednet.open(listofPossibles[1])
- return listofPossibles[1]
- end
- end
- end
- openRednet()
- --local file = fs.open('controller/id','r')
- --local cID = file.readAll()
- --file.close()
- function wrapReactor()
- local listOfSides = rs.getSides()
- listofPossibles = {}
- local counter1 = 0
- while true do
- counter1 = counter1+1
- if peripheral.isPresent(tostring(listOfSides[counter1])) and peripheral.getType(listOfSides[counter1]) == "BigReactors-Reactor" then
- table.insert(listofPossibles,tostring(listOfSides[counter1]))
- end
- if counter1 == 6 and table.maxn(listofPossibles) == 0 then
- return nil
- end
- if counter1 == 6 and table.maxn(listofPossibles) ~= 0 then
- reactor = peripheral.wrap(listofPossibles[1])
- return listofPossibles[1]
- end
- end
- end
- wrapReactor()
- print('Reactor registered on side: '..listofPossibles[1])
- local bool = reactor.getConnected()
- print("Reactor connected: "..tostring(bool))
- isActive = reactor.getActive()
- currentPower = reactor.getEnergyStored()
- tickPower = reactor.getEnergyProducedLastTick
- caseTemp = reactor.getCasingTemperature()
- fuelTemp = reactor.getFuelTemperature()
- currentFuel = reactor.getFuelAmount()
- maxFuel = reactor.getFuelAmountMax()
- function percentage(arg1,arg2)
- percent = math.floor(math.floor(arg2/arg1)*100)
- return percent
- end
- while true do
- if currentPower <= lowPower then
- reactor.setActive(true)
- statusTermColour = colors.orange
- reactorStatus = 'Charging'
- end
- if currentPower <= critPower then
- reactor.setActive(true)
- statusTermColour = colors.red
- reactorStatus = 'Charging'
- end
- if currentPower >= maxPower then
- reactor.setActive(false)
- statusTermColour = colors.lime
- reactorStatus = 'Charged'
- end
- if isActive == true then
- activeTermColour = colors.lime
- isActive = 'Active'
- else
- activeTermColour = colors.red
- isActive = 'Shutdown'
- end
- sleep(3)
- if currentPower ~= prevPower or currentFuel ~=prevFuel then
- term.clear()
- term.setCursorPos(5,2)
- term.write('Reactor Status: ')
- term.setTextColor(activeTermColour)
- term.write(isActive)
- term.setCursorPos(5,5)
- term.setTextColor(colors.white)
- term.write('Charge Status: ')
- term.setTextColor(statusTermColour)
- term.write(reactorStatus)
- term.setCursorPos(5,7)
- term.setTextColor(colors.white)
- term.write('Power Level:')
- term.setCursorPos(7,8)
- term.write(currentPower..'RF / '..maxPower..'RF = '..percentage(currentPower,maxPower)..'% '..tickPower..'RF/t')
- term.setCursorPos(5,10)
- term.write('Fuel Level:')
- term.setCursorPos(7,11)
- term.write(currentFuel..'mB / '..maxFuel..'mB = '..percentage(currentFuel,maxFuel)..'%')
- term.setCursorPos(5,13)
- term.write('Case Temp: '..caseTemp..' Fuel Temp: '..fuelTemp)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment