KaychenHH

Reactor_triple

Apr 11th, 2022 (edited)
20
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 8.00 KB | None | 0 0
  1. monitor1 = peripheral.wrap("top")
  2. monitor2 = peripheral.wrap("monitor_0")
  3. --monitor3 = peripheral.wrap("monitor_1")
  4. react1 = peripheral.wrap("BigReactors-Reactor_0")
  5. react2 = peripheral.wrap("BigReactors-Reactor_1")
  6. react3 = peripheral.wrap("BigReactors-Reactor_2")
  7.  
  8. AnzReact = 3
  9.  
  10. print(react1, react2, react3)
  11. print(react1.getConnected, react2.getConnected, react3.getConnected)
  12.  
  13. react2.setActive(false)
  14. print("R2:", react2.isActive)
  15. react3.setActive(false)
  16. print("R3:", react3.isActive)
  17.  
  18. ron1 = true
  19. rrod1 = 50
  20. react1.setAllControlRodLevels(rrod1)
  21. react1.setActive(ron1)
  22. print("R1:", react1.isActive)
  23.  
  24. if AnzReact > 1 then
  25.     ron2 = true
  26.     rrod2 = 92
  27.     react2.setAllControlRodLevels(rrod2)
  28.     react2.setActive(ron2)
  29.     print("R2:", react2.isActive)
  30. end
  31. if AnzReact > 2 then
  32.     ron3 = false
  33.     rrod3 = 92
  34.     react3.setAllControlRodLevels(rrod3)
  35.     react3.setActive(ron3)
  36.     print("R3:", react3.isActive)
  37. end
  38.  
  39. function MonAufbau(moni)
  40.  
  41.     moni.setTextScale(0.5)
  42.     moni.setBackgroundColor(colors.black)
  43.     moni.clear()
  44.     if AnzReact<3 then
  45.         moni.setCursorPos(4,1)
  46.     else
  47.         moni.setCursorPos(13,1)
  48.     end
  49.     moni.setBackgroundColor(colors.blue)
  50.     moni.setTextColor(colors.orange)
  51.     moni.write(" *** WuffelPower Control *** ")
  52.     moni.setBackgroundColor(colors.black)
  53.     moni.setTextColor(colors.blue)
  54.     moni.setCursorPos(1,3)
  55.     moni.write("Reactor1")
  56.     if AnzReact > 1 then
  57.         moni.setCursorPos(19,3)
  58.         moni.write("Reactor2")
  59.     end
  60.     if AnzReact > 2 then
  61.         moni.setCursorPos(37,3)
  62.         moni.write("Reactor3")
  63.     end
  64.  
  65.     moni.setCursorPos(10,3)
  66.     if ron1 == true then
  67.         moni.setTextColor(colors.green)
  68.         moni.write("online")
  69.     else
  70.         moni.setTextColor(colors.red)
  71.         moni.write("offline")
  72.     end
  73.     if AnzReact > 1 then
  74.         moni.setCursorPos(28,3)
  75.         if ron2 == true then
  76.             moni.setTextColor(colors.green)
  77.             moni.write("online")
  78.         else
  79.             moni.setTextColor(colors.red)
  80.             moni.write("offline")
  81.         end
  82.     end
  83.     if AnzReact > 2 then
  84.         moni.setCursorPos(46,3)
  85.         if ron3 == true then
  86.             moni.setTextColor(colors.green)
  87.             moni.write("online")
  88.         else
  89.             moni.setTextColor(colors.red)
  90.             moni.write("offline")
  91.         end
  92.     end
  93.  
  94.     moni.setBackgroundColor(colors.lime)
  95.     moni.setTextColor(colors.white)
  96.     moni.setCursorPos(4,4)
  97.     moni.write(" ON  ")
  98.     if AnzReact > 1 then
  99.         moni.setCursorPos(22,4)
  100.         moni.write(" ON  ")
  101.     end
  102.     if AnzReact > 2 then
  103.         moni.setCursorPos(40,4)
  104.         moni.write(" ON  ")
  105.     end
  106.     moni.setBackgroundColor(colors.red)
  107.     moni.setCursorPos(10,4)
  108.     moni.write(" OFF ")
  109.     if AnzReact > 1 then
  110.         moni.setCursorPos(28,4)
  111.         moni.write(" OFF ")
  112.     end
  113.     if AnzReact > 2 then
  114.         moni.setCursorPos(46,4)
  115.         moni.write(" OFF ")
  116.     end
  117.  
  118.     moni.setBackgroundColor(colors.black)
  119.     moni.setTextColor(colors.blue)
  120.     moni.setCursorPos(1,6)
  121.     moni.write("ControlRods:    %")
  122.     moni.setCursorPos(14,6)
  123.     moni.write(string.format("%3d",rrod1))
  124.     if AnzReact > 1 then
  125.         moni.setCursorPos(19,6)
  126.         moni.write("ControlRods:    %")
  127.         moni.setCursorPos(32,6)
  128.         moni.write(string.format("%3d",rrod2))
  129.     end
  130.     if AnzReact > 2 then
  131.         moni.setCursorPos(37,6)
  132.         moni.write("ControlRods:    %")
  133.         moni.setCursorPos(50,6)
  134.         moni.write(string.format("%3d",rrod3))
  135.     end
  136.  
  137.  
  138.     moni.setBackgroundColor(colors.lightGray)
  139.     moni.setTextColor(colors.orange)
  140.     moni.setCursorPos(2,7)
  141.     moni.write(" 0 ")
  142.     moni.setCursorPos(7,7)
  143.     moni.write(" 50 ")
  144.     moni.setCursorPos(13,7)
  145.     moni.write(" 100 ")
  146.     if AnzReact > 1 then
  147.         moni.setCursorPos(20,7)
  148.         moni.write(" 0 ")
  149.         moni.setCursorPos(25,7)
  150.         moni.write(" 50 ")
  151.         moni.setCursorPos(31 ,7)
  152.         moni.write(" 100 ")
  153.     end
  154.     if AnzReact > 2 then
  155.         moni.setCursorPos(38,7)
  156.         moni.write(" 0 ")
  157.         moni.setCursorPos(43,7)
  158.         moni.write(" 50 ")
  159.         moni.setCursorPos(49 ,7)
  160.         moni.write(" 100 ")
  161.     end
  162.  
  163.  
  164.     moni.setBackgroundColor(colors.blue)
  165.     moni.setCursorPos(2,8)
  166.     moni.write("-10")
  167.     moni.setCursorPos(6,8)
  168.     moni.write(" -1")
  169.     moni.setCursorPos(11,8)
  170.     moni.write(" +1")
  171.     moni.setCursorPos(15,8)
  172.     moni.write("+10")
  173.     if AnzReact > 1 then
  174.         moni.setCursorPos(20,8)
  175.         moni.write("-10")
  176.         moni.setCursorPos(24,8)
  177.         moni.write(" -1")
  178.         moni.setCursorPos(29,8)
  179.         moni.write(" +1")
  180.         moni.setCursorPos(33,8)
  181.         moni.write("+10")
  182.     end
  183.     if AnzReact > 2 then
  184.         moni.setCursorPos(38,8)
  185.         moni.write("-10")
  186.         moni.setCursorPos(42,8)
  187.         moni.write(" -1")
  188.         moni.setCursorPos(47,8)
  189.         moni.write(" +1")
  190.         moni.setCursorPos(51,8)
  191.         moni.write("+10")
  192.     end
  193.  
  194.  
  195. end
  196.  
  197.  
  198. function ChangeRT(chNr, chVal)
  199.  
  200.     if chNr == 1 then
  201.         rrod1 = chVal
  202.         react1.setAllControlRodLevels(rrod1)
  203.     elseif chNr == 2 then
  204.         rrod2 = chVal
  205.         react2.setAllControlRodLevels(rrod2)
  206.     else
  207.         rrod3 = chVal
  208.         react3.setAllControlRodLevels(rrod3)
  209.     end
  210.  
  211. end
  212.  
  213. function ChangeR(chNr, chVal)
  214.  
  215.     if chNr == 1 then
  216.         rrod1 = rrod1 + chVal
  217.         react1.setAllControlRodLevels(rrod1)
  218.     elseif chNr == 2 then
  219.         rrod2 = rrod2 + chVal
  220.         react2.setAllControlRodLevels(rrod2)
  221.     else
  222.         rrod3 = rrod3 + chVal
  223.         react3.setAllControlRodLevels(rrod3)
  224.     end
  225.  
  226. end
  227.  
  228.  
  229.  
  230. MonAufbau(monitor1)
  231. MonAufbau(monitor2)
  232. --MonAufbau(monitor3)
  233.  
  234. while true do
  235.     event, button, x, y = os.pullEvent()
  236.  
  237.     if event == "terminate" then
  238.         break
  239.     elseif event == "monitor_touch" then
  240.         if (button == "top") or (button == "monitor_0") or (button == "monitor_1") then
  241.         if y == 4 then
  242.             if (x > 3) and (x < 9) then
  243.                 ron1=true
  244.                 react1.setActive(ron1)
  245.             elseif (x > 9) and (x < 15) then
  246.                 ron1=false
  247.                 react1.setActive(ron1)
  248.             elseif (x > 21) and (x < 27) then
  249.                 ron2=true
  250.                 react2.setActive(ron2)
  251.             elseif (x > 27) and (x < 33) then
  252.                 ron2=false
  253.                 react2.setActive(ron2)
  254.             elseif (x > 39) and (x < 45) then
  255.                 ron3=true
  256.                 react3.setActive(ron3)
  257.             elseif (x > 45) and (x < 51) then
  258.                 ron3=false
  259.                 react3.setActive(ron3)
  260.             end
  261.         elseif y == 7 then
  262.             if (x > 1) and (x < 5) then
  263.                 ChangeRT(1,0)
  264.             elseif (x > 6) and (x < 11) then
  265.                 ChangeRT(1,50)
  266.             elseif (x > 12) and (x < 18) then
  267.                 ChangeRT(1,100)
  268.             elseif (x > 19) and (x < 23) then
  269.                 ChangeRT(2,0)
  270.             elseif (x > 24) and (x < 29) then
  271.                 ChangeRT(2,50)
  272.             elseif (x > 30) and (x < 36) then
  273.                 ChangeRT(2,100)
  274.             elseif (x > 37) and (x < 41) then
  275.                 ChangeRT(3,0)
  276.             elseif (x > 42) and (x < 47) then
  277.                 ChangeRT(3,50)
  278.             elseif (x > 48) and (x < 54) then
  279.                 ChangeRT(3,100)
  280.             end
  281.         elseif y == 8 then
  282.             if (x > 1) and (x < 5) then
  283.                 ChangeR(1,-10)
  284.             elseif (x > 5) and (x < 9) then
  285.                 ChangeR(1,-1)
  286.             elseif (x > 10) and (x < 14) then
  287.                 ChangeR(1,1)
  288.             elseif (x > 14) and (x < 18) then
  289.                 ChangeR(1,10)
  290.             elseif (x > 19) and (x < 23) then
  291.                 ChangeR(2,-10)
  292.             elseif (x > 23) and (x < 27) then
  293.                 ChangeR(2,-1)
  294.             elseif (x > 28) and (x < 32) then
  295.                 ChangeR(2,1)
  296.             elseif (x > 32) and (x < 36) then
  297.                 ChangeR(2,10)
  298.             elseif (x > 37) and (x < 41) then
  299.                 ChangeR(3,-10)
  300.             elseif (x > 41) and (x < 45) then
  301.                 ChangeR(3,-1)
  302.             elseif (x > 44) and (x < 50) then
  303.                 ChangeR(3,1)
  304.             elseif (x > 50) and (x < 54) then
  305.                 ChangeR(3,10)
  306.             end
  307.         end
  308.         MonAufbau(monitor1)
  309.         MonAufbau(monitor2)
  310.         --MonAufbau(monitor3)
  311.         end
  312.     else
  313.         print(event, button, x, y)
  314.     end
  315.  
  316.  
  317. end
  318.  
  319.  
Add Comment
Please, Sign In to add comment