Advertisement
Guest User

test

a guest
Nov 28th, 2014
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.46 KB | None | 0 0
  1. function getReactor()
  2.   local pList = peripheral.getNames()
  3.   local i,name
  4.   for i,name in pairs(pList) do
  5.     if peripheral.getType(name) == "BigReactors-Reactor" then
  6.       print(i.." Is a reactor")
  7.       return peripheral.wrap(name)
  8.     end
  9.     print(i.." Isn't a reactor")
  10.   end
  11. end
  12.  
  13. r = getReactor()
  14.  
  15. function getMonitor()
  16.   local pList = peripheral.getNames()
  17.   local i,name
  18.   for i,name in pairs(pList) do
  19.     if peripheral.getType(name) == "monitor" then
  20.       print(i.." Is a monitor")
  21.       return peripheral.wrap(name)
  22.     end
  23.     print(i.." Isn't a monitor")
  24.   end
  25. end
  26.  
  27. m = getMonitor()
  28.  
  29. function getEnergyCube()
  30.   local pList = peripheral.getNames()
  31.   local i,name
  32.   for i,name in pairs(pList) do
  33.     if peripheral.getType(name) == "Ultimate Energy Cube" then
  34.       print(i.." Is a cube")
  35.       return peripheral.wrap(name)
  36.     end
  37.     print(i.." Isn't a cube")
  38.   end
  39. end      
  40.  
  41. cube = getEnergyCube()
  42.  
  43. m.clear()
  44.  
  45. function getECPC()
  46.   energySto = cube.getStored()
  47.   maxEnergy = cube.getMaxEnergy()
  48.   cubeEnergy = (energySto*100) / maxEnergy
  49.   cubeEnergyC = math.ceil(cubeEnergy)
  50.   return cubeEnergyC
  51. end
  52.  
  53. function getTemp()
  54.     local iTemperature = math.ceil(r.getCasingTemperature())
  55.     return iTemperature
  56. end
  57.  
  58. function isActive()
  59.     local var = r.getActive()
  60.     if var == true then
  61.     return true
  62.     else return false end
  63. end
  64.  
  65. function getEnergyTick()
  66.     local var1 = math.ceil(r.getEnergyProducedLastTick())
  67.     return var1 / 1000
  68. end
  69.  
  70. function getConsoFuel()
  71.   local varConso = r.getFuelConsumedLastTick()
  72.   local varConso1
  73.   if varConso == 0 then varConso1 = 0
  74.   else
  75.   varConso1 = string.sub(varConso,1,-3)
  76.   end
  77.   return varConso1
  78. end
  79.  
  80. function getEnergySto()
  81.  energyStoc = r.getEnergyStored()
  82.  energyMax = 10000000
  83.  energyS = (energyStoc*100) / energyMax
  84.  local var4 = math.ceil(energyS)
  85.  return var4
  86. end
  87.  
  88. function getFuelA()
  89.     local var2 = r.getFuelAmount()
  90.     return math.ceil(var2 / 1000)
  91. end
  92.  
  93. function getFuelAMax()
  94.     local var3 = r.getFuelAmountMax()
  95.     return var3 / 1000
  96. end
  97.  
  98. function Allumer()
  99.     r.setActive(true)
  100. end
  101.  
  102. function Eteindre()
  103.     r.setActive(false)
  104. end
  105.  
  106. function writeColor(color, text)
  107.    if (m.isColor()) then
  108.       m.setTextColor(color)
  109.    end
  110.    m.write(text)
  111.    if (m.isColor()) then
  112.       m.setTextColor(colors.white)
  113.    end
  114. end
  115.  
  116. function centerPrintM(text, y)
  117.  local w,h = m.getSize()
  118.     m.setCursorPos(w/2 - text:len()/2, y)
  119.     m.write(text)
  120. end
  121.  
  122. function draw()
  123. m.clear()
  124.  
  125. centerPrintM("Reactor :",2)
  126. m.setCursorPos(3,4)
  127. m.write("Reactor Statut :")
  128. m.setCursorPos(20,4)
  129.  
  130. if isActive() then
  131.   writeColor(colors.green,"ON")
  132. else
  133.   writeColor(colors.red,"OFF")
  134. end
  135.  
  136. m.setCursorPos(3,5)
  137. m.write("Production : "..getEnergyTick().." KRF/t")
  138.  
  139. m.setCursorPos(3,6)
  140. m.write("Consommation : "..getConsoFuel().." mB/t")
  141.  
  142. m.setCursorPos(3,7)
  143. m.write("Temperature : "..getTemp().." CĀ„B0")
  144.  
  145. m.setCursorPos(3,8)
  146. m.write("Stockage : "..getEnergySto().." %")
  147.  
  148. m.setCursorPos(3,9)
  149. m.write("Fuel : "..getFuelA().." / "..getFuelAMax().." L")
  150.  
  151. m.setCursorPos(3,10)
  152. m.write("Energy Cube Level : "..getECPC().."%")
  153.  
  154. --[[
  155. if rs.getInput("front") then
  156.   Allumer()
  157. else
  158.   Eteindre()
  159. end
  160. --]]
  161.  
  162. if r.getActive() then
  163.   if getECPC() >= 85 then Eteindre() end
  164. else
  165.   if getECPC() <= 10 then Allumer() end
  166. end
  167.  
  168. if getFuelA() <= 50 then
  169.   rs.setOutput("top",true)
  170. elseif getFuelA() >= 350 then
  171.   rs.setOutput("top",false)
  172. end
  173.  
  174. end
  175.  
  176. while true do
  177. draw()
  178. sleep(0.01)
  179. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement