LaniusFNV

CC Reactor Test

Apr 5th, 2021 (edited)
197
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.15 KB | None | 0 0
  1. local mon = peripheral.find("monitor")
  2. local reactor = peripheral.wrap("back")
  3.  
  4. mon.setTextScale(0.5)
  5.  
  6. local function display(term, time_left)
  7.     local energyStats = reactor.getEnergyStats()
  8.     local fuelStats = reactor.getFuelStats()
  9.  
  10.     mon.clear()
  11.     term.setCursorPos(1, 1)
  12.     term.write(time_left .. "...")
  13.     term.setCursorPos(1, 3)
  14.     term.write("Energy:")
  15.     term.setCursorPos(1, 4)
  16.     term.write(energyStats.energyProducedLastTick)
  17.     term.setCursorPos(1, 5)
  18.     term.write("Fuel:")
  19.     term.setCursorPos(1, 6)
  20.     term.write(fuelStats.fuelConsumedLastTick)
  21.     term.setCursorPos(1, 7)
  22.     term.write(fuelStats.fuelTemperature)
  23.     term.setCursorPos(1, 8)
  24.     term.write(fuelStats.fuelReactivity)
  25. end
  26.  
  27. local function write(term, material, time_waited)
  28.     local energyStats = reactor.getEnergyStats()
  29.     local fuelStats = reactor.getFuelStats()
  30.  
  31.     term.write("center" .. ",")
  32.     term.write(material .. ",")
  33.     term.write(energyStats.energyProducedLastTick .. ",")
  34.     term.write(fuelStats.fuelAmount .. ",")
  35.     term.write(fuelStats.wasteAmount .. ",")
  36.     term.write(fuelStats.fuelConsumedLastTick .. ",")
  37.     term.write(fuelStats.fuelTemperature .. ",")
  38.     term.write(fuelStats.fuelReactivity .. ",")
  39.     term.write(time_waited .. "\n")
  40. end
  41.  
  42. local function main()
  43.     local file = fs.open("data.csv", "a")
  44.  
  45.     while true do
  46.         term.clear()
  47.         term.setCursorPos(1, 1)
  48.         term.write("Which material are you using?: ")
  49.         local material = read()
  50.         if material == "" then
  51.             break
  52.         end
  53.  
  54.         reactor.setActive(true)
  55.  
  56.         local time_slept = 0
  57.         local time_limit = 50
  58.         local time_step = 5
  59.  
  60.         while time_slept <= time_limit do
  61.             local time_left = time_limit - time_slept
  62.  
  63.             display(mon, time_left)
  64.             write(file, material, time_slept)
  65.  
  66.             time_slept = time_slept + time_step
  67.             term.clear()
  68.             term.setCursorPos(1, 1)
  69.             term.write(time_left .. "...")
  70.             os.sleep(time_step)
  71.         end
  72.  
  73.         reactor.setActive(false)
  74.     end
  75.  
  76.     file.close()
  77. end
  78.  
  79. main()
Advertisement
Add Comment
Please, Sign In to add comment