View difference between Paste ID: 34hJNe8M and tsx6Hw4Z
SHOW: | | - or go back to the newest paste.
1
reactor = peripheral.wrap("back")
2
mon = peripheral.wrap("top")
3
mon.clear()
4
mon.setBackgroundColor(colors.blue)
5
color = blue
6
7
--power = 0
8
--fuel = 0
9
--maxFuel = 0
10
--rf = 0
11
12
function calc(min, max)
13
14
  percent = 53 / max 
15
  
16
  x = percent * min
17
  
18
  --print("percent: "..percent.." x: "..x)
19
  
20
  return 53, x
21
22
end
23
24
function progress(current, max, pos1, pos2)
25
26
--Power
27
  maxX,x = calc(current,max)
28
  for i=0,3 do
29
    for z=1,maxX do
30
      mon.setCursorPos(pos1+z,pos2+i)
31
      if z <= x then
32
        mon.setBackgroundColor(colors.green)
33
      else
34
        mon.setBackgroundColor(colors.white)
35
      end
36
37
      mon.write(" ")
38
    end
39
  end
40
end
41
42
function draw(color)
43
  mon.clear()
44
45
  power = reactor.getEnergyStored()
46
  maxPower = 10000000
47
  fuel = reactor.getFuelAmount()
48
  maxFuel = reactor.getFuelAmountMax()
49
  rf = reactor.getEnergyProducedLastTick()
50
  maxRf = 10000
51
52
  mon.setCursorPos(28,1)
53
  mon.write("Reactor")
54
55
  mon.setCursorPos(2,4)
56
  mon.write("Power:")
57
  mon.setCursorPos(1,5)
58
  mon.write(math.floor(power/1000).."kRF")
59
60
  mon.setCursorPos(2,10)
61
  mon.write("Fuel:")
62
  mon.setCursorPos(1,11)
63
  mon.write(math.floor((fuel/maxFuel)*100).."%")
64
65
  mon.setCursorPos(2,16)
66
  mon.write("RF/t:")
67
  mon.setCursorPos(1,17)
68
  mon.write(math.floor(rf/1000).."kRF/t")
69
70
  progress(power,maxPower,7,3)
71
  progress(fuel,maxFuel,7,9)
72
  progress(rf,maxRf,7,15)
73
  
74
  if reactor.getActive() == true then
75
    mon.setBackgroundColor(colors.blue)
76
  else
77
    mon.setBackgroundColor(colors.red)
78
  end
79
end
80
81
while true do
82
83
  draw(color)
84
85
  if reactor.getEnergyStored() >=9000000 then
86
    reactor.setActive(false)
87
    mon.setBackgroundColor(colors.red)
88
    color = red
89
  end
90
91
  if reactor.getEnergyStored() <= (10000000/4) then
92
    reactor.setActive(true)
93
    mon.setBackgroundColor(colors.blue)
94
    color = blue
95
  end
96
97
  sleep(2)
98
end