Advertisement
Guest User

inductionM

a guest
Oct 22nd, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 7.19 KB | None | 0 0
  1. while true do
  2.   monitor = peripheral.wrap("top")
  3.   battery = peripheral.wrap("Induction Matrix_4")
  4.   reactor = peripheral.wrap("BigReactors-Reactor_1")
  5.  
  6.   if monitor == nil then
  7.     error("monitor disconnected")
  8.   else
  9.     monitor.clear()
  10.     monitor.setCursorPos(1, 1)
  11.   end
  12.  
  13.   if battery == nil then
  14.     error("battery disconnected")
  15.   else
  16.     storagedmax = battery.getMaxEnergy()*0.4
  17.     storaged = battery.getEnergy()*0.4
  18.     pourcent = (storaged/storagedmax)*100
  19.     input = battery.getInput()*0.4
  20.     output = battery.getOutput()*0.4
  21.     monitor.setTextColor(colors.yellow)
  22.     monitor.write("Une batterie de ")
  23.     if storagedmax >= 1000000000000 then
  24.       monitor.write(storagedmax/1000000000000)
  25.       monitor.write(" TRF detecte.")
  26.     else
  27.       if storagedmax >= 1000000000 then
  28.         monitor.write(storagedmax/1000000000)
  29.         monitor.write(" GRF detecte.")
  30.       else
  31.         if storagedmax >= 1000000 then
  32.           monitor.write(storagedmax/1000000)
  33.           monitor.write(" MRF detecte.")
  34.         else
  35.           if storagedmax >= 1000 then
  36.             monitor.write(storagedmax/1000)
  37.             monitor.write(" kRF detecte.")
  38.           else
  39.               monitor.write(storagedmax)
  40.               monitor.write(" RF detecte.")
  41.           end
  42.         end
  43.       end
  44.     end
  45.    
  46.     monitor.setCursorPos(1, 2)
  47.     monitor.write("La batterie est remplie a ")
  48.     monitor.setTextColor(colors.red)
  49.     monitor.write(pourcent)
  50.     monitor.setTextColor(colors.yellow)
  51.     monitor.setCursorPos(32,2)
  52.     monitor.write(" %                ")
  53.     monitor.setCursorPos(1, 3)
  54.     monitor.write("Ce qui fait : ")
  55.     monitor.setTextColor(colors.red)
  56.     if storaged >= 1000000000000 then
  57.       monitor.write(storaged/1000000000000)
  58.       monitor.setCursorPos(21, 3)
  59.       monitor.setTextColor(colors.yellow)
  60.       monitor.write(" TRF.           ")
  61.     else
  62.       if storaged >= 1000000000 then
  63.         monitor.write(storaged/1000000000)
  64.         monitor.setCursorPos(21, 3)
  65.         monitor.setTextColor(colors.yellow)
  66.         monitor.write(" GRF.           ")
  67.       else
  68.         if storaged >= 1000000 then
  69.           monitor.write(storaged/1000000)
  70.           monitor.setCursorPos(21, 3)
  71.           monitor.setTextColor(colors.yellow)
  72.           monitor.write(" MRF.           ")
  73.         else
  74.           if storaged >= 1000 then
  75.             monitor.write(storaged/1000)
  76.             monitor.setCursorPos(21, 3)
  77.             monitor.setTextColor(colors.yellow)
  78.             monitor.write(" kRF.           ")
  79.           else
  80.               monitor.write(storaged)
  81.               monitor.setCursorPos(21, 3)
  82.               monitor.setTextColor(colors.yellow)
  83.               monitor.write(" RF.            ")
  84.           end
  85.         end
  86.       end
  87.     end
  88.  
  89.     monitor.setCursorPos(1, 4)
  90.     monitor.write("La batterie a ")
  91.     monitor.setTextColor(colors.red)
  92.     if input >= 1000000 then
  93.       monitor.write(input/1000000)
  94.       monitor.setCursorPos(21, 4)
  95.       monitor.setTextColor(colors.yellow)
  96.       monitor.write(" MRF en entree. Et ")
  97.     else
  98.       if input >= 1000 then
  99.         monitor.write(input/1000)
  100.         monitor.setCursorPos(21, 4)
  101.         monitor.setTextColor(colors.yellow)
  102.         monitor.write(" kRF en entree. Et ")
  103.       else
  104.         monitor.write(input)
  105.         monitor.setCursorPos(21, 4)
  106.         monitor.setTextColor(colors.yellow)
  107.         monitor.write(" RF en entree. Et ")
  108.       end
  109.     end
  110.  
  111.     monitor.setTextColor(colors.red)
  112.     if output >= 1000000 then
  113.       monitor.write(output/1000000)
  114.       monitor.setCursorPos(45, 4)
  115.       monitor.setTextColor(colors.yellow)
  116.       monitor.write(" MRF en sortie.")
  117.     else
  118.       if output >= 1000 then
  119.         monitor.write(output/1000)
  120.         monitor.setCursorPos(45, 4)
  121.         monitor.setTextColor(colors.yellow)
  122.         monitor.write(" kRF en sortie.")
  123.       else
  124.         monitor.write(output)
  125.         monitor.setCursorPos(44, 4)
  126.         monitor.setTextColor(colors.yellow)
  127.         monitor.write(" RF en sortie.")
  128.       end
  129.     end
  130.   end
  131.  
  132.   monitor.setCursorPos(1, 6)
  133.   if reactor == nil then
  134.     error("Reactor disconnected")
  135.   else
  136.     reactorproduct = reactor.getEnergyProducedLastTick()
  137.     reactortemp = reactor.getFuelTemperature()
  138.     wind = input-reactorproduct
  139.     reactoringot = reactor.getFuelConsumedLastTick()*1.2
  140.     monitor.write("Un reacteur a ete trouve, il est actuellement ")
  141.     if reactor.getActive() == false then
  142.       monitor.setTextColor(colors.red)
  143.       monitor.write("eteint.")
  144.     else
  145.       monitor.setTextColor(colors.lime)
  146.       monitor.write("allume.")
  147.       monitor.setCursorPos(1, 7)
  148.       monitor.setTextColor(colors.yellow)
  149.       monitor.write("Il produit ")
  150.       monitor.setTextColor(colors.red)
  151.       if reactorproduct >= 1000000 then
  152.         monitor.write(reactorproduct/1000000)
  153.         monitor.setTextColor(colors.yellow)
  154.         monitor.setCursorPos(18, 7)
  155.         monitor.write(" MRF.          ")
  156.       else
  157.         if reactorproduct >= 1000 then
  158.           monitor.write(reactorproduct/1000)
  159.           monitor.setTextColor(colors.yellow)
  160.           monitor.setCursorPos(18, 7)
  161.           monitor.write(" kRF.          ")
  162.         else
  163.           monitor.write(reactorproduct)
  164.           monitor.setTextColor(colors.yellow)
  165.           monitor.setCursorPos(18, 7)
  166.           monitor.write(" RF            ")
  167.         end
  168.       end
  169.      
  170.       monitor.setCursorPos(1, 8)
  171.       monitor.write("Sa temperature est de ")
  172.       monitor.setTextColor(colors.red)
  173.       monitor.write(reactortemp)
  174.       monitor.setTextColor(colors.yellow)
  175.       monitor.setCursorPos(29, 8)
  176.       monitor.write(" degres Celsius")
  177.      
  178.       monitor.setCursorPos(1, 9)
  179.       monitor.write("Le reacteur consomme ")
  180.       monitor.setTextColor(colors.red)
  181.       monitor.write(reactoringot)
  182.       monitor.setTextColor(colors.yellow)
  183.       monitor.setCursorPos(28, 9)
  184.       monitor.write(" lingots pas minute.")  
  185.     end
  186.    
  187.     monitor.setTextColor(colors.yellow)
  188.     monitor.setCursorPos(1, 11)
  189.     monitor.write("Les panneaux solaires produisent (+ ou -) ")
  190.     monitor.setTextColor(colors.red)
  191.     if wind >= 1000 then
  192.       monitor.write(wind/1000)
  193.       monitor.setTextColor(colors.yellow)
  194.       monitor.setCursorPos(49, 11)
  195.       monitor.write(" kRF.              ")
  196.     else
  197.       if wind < 20 then
  198.         monitor.write("0.0000")
  199.       else
  200.         monitor.write(wind)
  201.       end
  202.       monitor.setTextColor(colors.yellow)
  203.       monitor.setCursorPos(49, 11)
  204.       monitor.write(" RF.               ")
  205.     end
  206.  
  207.     monitor.setCursorPos(21, 18)
  208.     if rs.getInput("right") == true then
  209.       monitor.setTextColor(colors.lime)
  210.       monitor.write("Redstone activee")
  211.         monitor.setCursorPos(21, 19)
  212.         monitor.write("Mode : Auto")
  213.     else
  214.         monitor.setTextColor(colors.red)
  215.       monitor.write("Redstone desactivee")
  216.         monitor.setCursorPos(21, 19)
  217.         monitor.write("Mode : Manuel")
  218.     end
  219.     if rs.getInput("right") == true then
  220.         if pourcent < 25 then
  221.            reactor.setActive (true)
  222.         else
  223.            if pourcent > 95 then
  224.                 reactor.setActive (false)
  225.            end
  226.       end
  227.     end
  228.   sleep(0.1)
  229.   end
  230. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement