Guest User

RefineryInfo

a guest
Feb 19th, 2013
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 19.64 KB | None | 0 0
  1. function clear()
  2.    term.clear()
  3.    term.setCursorPos(1,1)
  4. end
  5.  
  6.  
  7. function output(x, y, t)
  8.    term.setCursorPos(x,y)
  9.    term.write(t)
  10. end
  11.  
  12.  
  13. function getPos()
  14.    info = POSsensor.getTargetDetails("abihoooo")
  15.    pos = info.Position
  16.    pos["Y"] = math.floor(pos["Y"]+.5)
  17.    if(pos["X"] < 0) then
  18.       pos["X"] = math.ceil(pos["X"]-.5)
  19.    else
  20.       pos["X"] = math.floor(pos["X"]+.5)
  21.    end
  22.    if(pos["Z"] < 0) then
  23.       pos["Z"] = math.ceil(pos["Z"]-.5)
  24.    else
  25.       pos["Z"] = math.floor(pos["Z"]+.5)
  26.    end
  27.    return pos
  28. end
  29.  
  30. function getDir()
  31.    info = POSsensor.getTargetDetails("abihoooo")
  32.    if(info.Yaw > 45 and info.Yaw < 135) then
  33.       return "W"
  34.    elseif(info.Yaw > 225 and info.Yaw < 315) then
  35.       return "E"
  36.    elseif(info.Yaw > 315 and info.Yaw < 360) then
  37.       return "S"
  38.    elseif(info.Yaw > 0 and info.Yaw < 45) then
  39.       return "S"
  40.    elseif(info.Yaw > 135 and info.Yaw < 225) then
  41.       return "N"
  42.    elseif(info.Yaw > -135 and info.Yaw < -45) then
  43.       return "W"
  44.    elseif(info.Yaw > -315 and info.Yaw < -225) then
  45.       return "E"
  46.    elseif(info.Yaw > -360 and info.Yaw < -315) then
  47.       return "S"
  48.    elseif(info.Yaw > -45 and info.Yaw < 0) then
  49.       return "S"
  50.    elseif(info.Yaw > -225 and info.Yaw < -135) then
  51.       return "N"
  52.    end
  53. end
  54.  
  55. function getMachine()
  56.    pos = getPos()
  57.    dir = getDir()
  58.    if(dir == "W") then
  59.       pos["X"] = pos["X"]+1
  60.    elseif(dir == "E") then
  61.       pos["X"] = pos["X"]-1
  62.    elseif(dir == "N") then
  63.       pos["Z"] = pos["X"]+1
  64.    elseif(dir == "S") then
  65.       pos["Z"] = pos["X"]-1
  66.    else
  67.       output(1,1, "Error.")
  68.    end
  69.    posF = pos["X"]..","..pos["Y"]..","..pos["Z"]
  70.    for x = 1, 7 do
  71.       if(posF == MACpos[x]) then
  72.          return MACloc[x], "MAC", x
  73.       end
  74.    end
  75.    for x = 1, 6 do
  76.       if(posF == FURpos[x]) then
  77.          return FURloc[x], "FUR", x
  78.       end
  79.    end
  80.    for x = 1, 3 do
  81.       if(posF == EXTpos[x]) then
  82.          return EXTloc[x], "EXT", x
  83.       end
  84.       if(posF == RECpos[x]) then
  85.          return RECloc[x], "REC", x
  86.       end
  87.    end
  88.    
  89. end
  90.  
  91.  
  92. function macRelays(page)
  93.    clear()
  94.    output(18, 1, "[[Refinery Info]]")
  95.    output(21, 2, "[Macerator]")
  96.    MACrelayInfo = {}
  97.    if(page == 1) then
  98.       for x = 1, 9 do
  99.          info = MACsensor.getTargetDetails(MACREloc[1])
  100.          MACrelayInfo[x] = {}
  101.          MACrelayInfo[x][1] = info["Slots"][x]["Name"]
  102.          MACrelayInfo[x][2] = info["Slots"][x]["Size"]
  103.       end
  104.       for x = 10, 18 do
  105.          info = MACsensor.getTargetDetails(MACREloc[2])
  106.          MACrelayInfo[x] = {}
  107.          MACrelayInfo[x][1] = info["Slots"][x-9]["Name"]
  108.          MACrelayInfo[x][2] = info["Slots"][x-9]["Size"]
  109.       end
  110.       output(1, 19, "[M]Main Menu [R]Refresh [Q]Macerators [P]Next Page")
  111.       output(2, 4, "Relay 1:")
  112.       for x = 1, 9 do
  113.          output(3, x+4, MACrelayInfo[x][1].." - "..MACrelayInfo[x][2])
  114.       end
  115.  
  116.       output(26, 4, "Relay 2:")
  117.       for x = 10, 18 do
  118.          output(27, x-5, MACrelayInfo[x][1].." - "..MACrelayInfo[x][2])
  119.       end
  120.  
  121.       while(true) do
  122.          event, char = os.pullEvent()
  123.          if(char == "m") then
  124.             mainMenu()
  125.          elseif(char == "r") then
  126.             macRelays(1)
  127.          elseif(char == "q") then
  128.             maceratorInfo()
  129.          elseif(char == "p") then
  130.             macRelays(2)
  131.          end
  132.       end
  133.    elseif(page == 2) then
  134.       output(1, 19, "[M]Main Menu [R]Refresh [Q]Next Page [P]Prev. Page")
  135.       for x = 1, 9 do
  136.          info = MACsensor.getTargetDetails(MACREloc[3])
  137.          MACrelayInfo[x] = {}
  138.          MACrelayInfo[x][1] = info["Slots"][x]["Name"]
  139.          MACrelayInfo[x][2] = info["Slots"][x]["Size"]
  140.       end
  141.       for x = 10, 18 do
  142.          info = MACsensor.getTargetDetails(MACREloc[4])
  143.          MACrelayInfo[x] = {}
  144.          MACrelayInfo[x][1] = info["Slots"][x-9]["Name"]
  145.          MACrelayInfo[x][2] = info["Slots"][x-9]["Size"]
  146.       end
  147.       output(2, 4, "Relay 3:")
  148.       for x = 1, 9 do
  149.          output(3, x+4, MACrelayInfo[x][1].." - "..MACrelayInfo[x][2])
  150.       end
  151.  
  152.       output(26, 4, "Relay 4:")
  153.       for x = 10, 18 do
  154.          output(27, x-5, MACrelayInfo[x][1].." - "..MACrelayInfo[x][2])
  155.       end
  156.  
  157.       while(true) do
  158.          event, char = os.pullEvent()
  159.          if(char == "m") then
  160.             mainMenu()
  161.          elseif(char == "r") then
  162.             macRelays(2)
  163.          elseif(char == "q") then
  164.             macRelays(3)
  165.          elseif(char == "p") then
  166.             macRelays(1)
  167.          end
  168.       end
  169.    elseif(page == 3) then
  170.       output(1, 19, "[M]Main Menu [R]Refresh [Q]Next Page [P]Prev. Page")
  171.       for x = 1, 9 do
  172.          info = MACsensor.getTargetDetails(MACREloc[5])
  173.          MACrelayInfo[x] = {}
  174.          MACrelayInfo[x][1] = info["Slots"][x]["Name"]
  175.          MACrelayInfo[x][2] = info["Slots"][x]["Size"]
  176.       end
  177.       for x = 10, 18 do
  178.          info = MACsensor.getTargetDetails(MACREloc[6])
  179.          MACrelayInfo[x] = {}
  180.          MACrelayInfo[x][1] = info["Slots"][x-9]["Name"]
  181.          MACrelayInfo[x][2] = info["Slots"][x-9]["Size"]
  182.       end
  183.       output(2, 4, "Relay 5:")
  184.       for x = 1, 9 do
  185.          output(3, x+4, MACrelayInfo[x][1].." - "..MACrelayInfo[x][2])
  186.       end
  187.  
  188.       output(26, 4, "Relay 6:")
  189.       for x = 10, 18 do
  190.          output(27, x-5, MACrelayInfo[x][1].." - "..MACrelayInfo[x][2])
  191.       end
  192.  
  193.       while(true) do
  194.          event, char = os.pullEvent()
  195.          if(char == "m") then
  196.             mainMenu()
  197.          elseif(char == "r") then
  198.             macRelays(3)
  199.          elseif(char == "q") then
  200.             macRelays(4)
  201.          elseif(char == "p") then
  202.             macRelays(2)
  203.          end
  204.       end
  205.    elseif(page == 4) then
  206.       output(1, 19, "[M]Main Menu [R]Refresh [Q]Macerator [P]Prev. Page")
  207.       for x = 1, 9 do
  208.          info = MACsensor.getTargetDetails(MACREloc[7])
  209.          MACrelayInfo[x] = {}
  210.          MACrelayInfo[x][1] = info["Slots"][x]["Name"]
  211.          MACrelayInfo[x][2] = info["Slots"][x]["Size"]
  212.       end
  213.       output(2, 4, "Relay 7:")
  214.       for x = 1, 9 do
  215.          output(3, x+4, MACrelayInfo[x][1].." - "..MACrelayInfo[x][2])
  216.       end
  217.  
  218.       while(true) do
  219.          event, char = os.pullEvent()
  220.          if(char == "m") then
  221.             mainMenu()
  222.          elseif(char == "r") then
  223.             macRelays(4)
  224.          elseif(char == "q") then
  225.             maceratorInfo()
  226.          elseif(char == "p") then
  227.             macRelays(3)
  228.          end
  229.       end
  230.    end
  231. end
  232.  
  233.  
  234. function maceratorInfo()
  235.    clear()
  236.    output(18, 1, "[[Refinery Info]]")
  237.    output(21, 2, "[Macerator]")
  238.    output(1, 19, "[M]Main Menu    [R]Refresh    [Q]Relays")
  239.    MACinfo = {}
  240.    for x = 1, 7 do
  241.       info = MACsensor.getTargetDetails(MACloc[x])
  242.       slots = info["Slots"]
  243.       MACinfo[x] = {}
  244.       MACinfo[x][1] = slots[1]["Name"]
  245.       MACinfo[x][2] = slots[1]["Size"]
  246.       MACinfo[x][3] = slots[3]["Size"]
  247.    end
  248.    output(2, 4, "MAC1:")
  249.     output(3, 5, "Item: "..MACinfo[1][1])
  250.     output(3, 6, "Percentage Full: "..math.floor(MACinfo[1][2] / 64 * 100).."%")
  251.    output(2, 8, "MAC2:")
  252.     output(3, 9, "Item: "..MACinfo[2][1])
  253.     output(3, 10, "Percentage Full: "..math.floor(MACinfo[2][2] / 64 * 100).."%")
  254.    output(2, 12, "MAC3:")
  255.     output(3, 13, "Item: "..MACinfo[3][1])
  256.     output(3, 14, "Percentage Full: "..math.floor(MACinfo[3][2] / 64 * 100).."%")
  257.    output(2, 16, "MAC4:")
  258.     output(3, 17, "Item: "..MACinfo[4][1])
  259.     output(3, 18, "Percentage Full: "..math.floor(MACinfo[4][2] / 64 * 100).."%")
  260.    output(26, 4, "MAC5:")
  261.     output(27, 5, "Item: "..MACinfo[5][1])
  262.     output(27, 6, "Percentage Full: "..math.floor(MACinfo[5][2] / 64 * 100).."%")
  263.    output(26, 8, "MAC6:")
  264.     output(27, 9, "Item: "..MACinfo[6][1])
  265.     output(27, 10, "Percentage Full: "..math.floor(MACinfo[6][2] / 64 * 100).."%")
  266.    output(26, 12, "MAC7:")
  267.     output(27, 13, "Item: "..MACinfo[7][1])
  268.     output(27, 14, "Percentage Full: "..math.floor(MACinfo[7][2] / 64 * 100).."%")
  269.  
  270.    while(true) do
  271.       event, char = os.pullEvent()
  272.       if(char == "m") then
  273.          mainMenu()
  274.       elseif(char == "r") then
  275.          maceratorInfo()
  276.       elseif(char == "q") then
  277.          macRelays(1)
  278.       end
  279.    end
  280. end
  281.  
  282.  
  283. function furRelays(page)
  284.    clear()
  285.    output(18, 1, "[[Refinery Info]]")
  286.    output(22, 2, "[Furnace]")
  287.    if(page == 1) then
  288.       output(1, 19, "[M]Main Menu [R]Refresh [Q]Furnace [P]Next Page")
  289.       for x = 1, 9 do
  290.          info = FURsensor.getTargetDetails(FURREloc[1])
  291.          FURrelayInfo[x] = {}
  292.          FURrelayInfo[x][1] = info["Slots"][x]["Name"]
  293.          FURrelayInfo[x][2] = info["Slots"][x]["Size"]
  294.       end
  295.       for x = 10, 18 do
  296.          info = FURsensor.getTargetDetails(FURREloc[2])
  297.          FURrelayInfo[x] = {}
  298.          FURrelayInfo[x][1] = info["Slots"][x-9]["Name"]
  299.          FURrelayInfo[x][2] = info["Slots"][x-9]["Size"]
  300.       end
  301.  
  302.       output(2, 4, "Relay 1:")
  303.       for x = 1, 9 do
  304.          output(3, x+4, FURrelayInfo[x][1].." - "..FURrelayInfo[x][2])
  305.       end
  306.  
  307.       output(26, 4, "Relay 2:")
  308.       for x = 10, 18 do
  309.          output(3, x-5, FURrelayInfo[x][1].." - "..FURrelayInfo[x][2])
  310.       end
  311.  
  312.       while(true) do
  313.          event, char = os.pullEvent()
  314.          if(char == "m") then
  315.             mainMenu()
  316.          elseif(char == "r") then
  317.             furRelays(1)
  318.          elseif(char == "q") then
  319.             furnaceInfo()
  320.          elseif(char == "p") then
  321.             furRelays(2)
  322.          end
  323.       end
  324.    elseif(page == 2) then
  325.       output(1, 19, "[M]Main Menu [R]Refresh [Q]Prev. Page [P]Next Page")
  326.       for x = 1, 9 do
  327.          info = FURsensor.getTargetDetails(FURREloc[3])
  328.          FURrelayInfo[x] = {}
  329.          FURrelayInfo[x][1] = info["Slots"][x]["Name"]
  330.          FURrelayInfo[x][2] = info["Slots"][x]["Size"]
  331.       end
  332.       for x = 10, 18 do
  333.          info = FURsensor.getTargetDetails(FURREloc[4])
  334.          FURrelayInfo[x] = {}
  335.          FURrelayInfo[x][1] = info["Slots"][x-9]["Name"]
  336.          FURrelayInfo[x][2] = info["Slots"][x-9]["Size"]
  337.       end
  338.       output(2, 4, "Relay 3:")
  339.       for x = 1, 9 do
  340.          output(3, x+4, FURrelayInfo[x][1].." - "..FURrelayInfo[x][2])
  341.       end
  342.  
  343.       output(26, 4, "Relay 4:")
  344.       for x = 10, 18 do
  345.          output(3, x-5, FURrelayInfo[x][1].." - "..FURrelayInfo[x][2])
  346.       end
  347.  
  348.       while(true) do
  349.          event, char = os.pullEvent()
  350.          if(char == "m") then
  351.             mainMenu()
  352.          elseif(char == "r") then
  353.             furRelays(2)
  354.          elseif(char == "q") then
  355.             furRelays(1)
  356.          elseif(char == "p") then
  357.             furRelays(3)
  358.          end
  359.       end
  360.    elseif(page == 3) then
  361.       output(1, 19, "[M]Main Menu [R]Refresh [Q]Prev. Page [P]Furnace")
  362.       for x = 1, 9 do
  363.          info = FURsensor.getTargetDetails(FURREloc[5])
  364.          FURrelayInfo[x] = {}
  365.          FURrelayInfo[x][1] = info["Slots"][x]["Name"]
  366.          FURrelayInfo[x][2] = info["Slots"][x]["Size"]
  367.       end
  368.       for x = 10, 18 do
  369.          info = FURsensor.getTargetDetails(FURREloc[6])
  370.          FURrelayInfo[x] = {}
  371.          FURrelayInfo[x][1] = info["Slots"][x-9]["Name"]
  372.          FURrelayInfo[x][2] = info["Slots"][x-9]["Size"]
  373.       end
  374.       output(2, 4, "Relay 5:")
  375.       for x = 1, 9 do
  376.          output(3, x+4, FURrelayInfo[x][1].." - "..FURrelayInfo[x][2])
  377.       end
  378.  
  379.       output(26, 4, "Relay 6:")
  380.       for x = 10, 18 do
  381.          output(3, x-5, FURrelayInfo[x][1].." - "..FURrelayInfo[x][2])
  382.       end
  383.  
  384.       while(true) do
  385.          event, char = os.pullEvent()
  386.          if(char == "m") then
  387.             mainMenu()
  388.          elseif(char == "r") then
  389.             furRelays(3)
  390.          elseif(char == "q") then
  391.             furRelays(2)
  392.          elseif(char == "p") then
  393.             furnaceInfo()
  394.          end
  395.       end
  396.    end
  397. end
  398.  
  399.  
  400. function furnaceInfo()
  401.    clear()
  402.    output(18, 1, "[[Refinery Info]]")
  403.    output(22, 2, "[Furnace]")
  404.    output(1, 19, "[M]Main Menu    [R]Refresh    [Q] Relays")
  405.    FURinfo = {}
  406.    FURrelayInfo = {}
  407.    for x = 1, 6 do
  408.       info = FURsensor.getTargetDetails(FURloc[x])
  409.       slots = info["Slots"]
  410.       FURinfo[x] = {}
  411.       FURinfo[x][1] = slots[1]["Name"]
  412.       FURinfo[x][2] = slots[1]["Size"]
  413.       FURinfo[x][3] = slots[3]["Size"]
  414.    end
  415.    output(2, 4, "FUR1:")
  416.     output(3, 5, "Item: "..FURinfo[1][1])
  417.     output(3, 6, "Percentage Full: "..math.floor(FURinfo[1][2] / 64 * 100).."%")
  418.    output(2, 8, "FUR2:")
  419.     output(3, 9, "Item: "..FURinfo[2][1])
  420.     output(3, 10, "Percentage Full: "..math.floor(FURinfo[2][2] / 64 * 100).."%")
  421.    output(2, 12, "FUR3:")
  422.     output(3, 13, "Item: "..FURinfo[3][1])
  423.     output(3, 14, "Percentage Full: "..math.floor(FURinfo[3][2] / 64 * 100).."%")
  424.    output(26, 4, "FUR4:")
  425.     output(27, 5, "Item: "..FURinfo[4][1])
  426.     output(27, 6, "Percentage Full: "..math.floor(FURinfo[4][2] / 64 * 100).."%")
  427.    output(26, 8, "FUR5:")
  428.     output(27, 9, "Item: "..FURinfo[5][1])
  429.     output(27, 10, "Percentage Full: "..math.floor(FURinfo[5][2] / 64 * 100).."%")
  430.    output(26, 12, "FUR6:")
  431.     output(27, 13, "Item: "..FURinfo[6][1])
  432.     output(27, 14, "Percentage Full: "..math.floor(FURinfo[6][2] / 64 * 100).."%")
  433.  
  434.    while(true) do
  435.       event, char = os.pullEvent()
  436.       if(char == "m") then
  437.          mainMenu()
  438.       elseif(char == "r") then
  439.          furnaceInfo()
  440.       elseif(char == "q") then
  441.          furRelays(1)
  442.       end
  443.    end
  444. end
  445.  
  446.  
  447. function extractorInfo()
  448.    clear()
  449.    output(18, 1, "[[Refinery Info]]")
  450.    output(21, 2, "[Extractor]")
  451.    output(1, 19, "[M]Main Menu    [R]Refresh")
  452.    EXTinfo = {}
  453.    EXTrelayInfo = {}
  454.    for x = 1, 3 do
  455.       info = EXTsensor.getTargetDetails(EXTloc[x])
  456.       slots = info["Slots"]
  457.       EXTinfo[x] = {}
  458.       EXTinfo[x][1] = slots[1]["Name"]
  459.       EXTinfo[x][2] = slots[1]["Size"]
  460.       EXTinfo[x][3] = slots[3]["Size"]
  461.    end
  462.    output(2, 4, "EXT1:")
  463.     output(3, 5, "Item: "..EXTinfo[1][1])
  464.     output(3, 6, "Percentage Full: "..math.floor(EXTinfo[1][2] / 64 * 100).."%")
  465.    output(2, 8, "EXT2:")
  466.     output(3, 9, "Item: "..EXTinfo[2][1])
  467.     output(3, 10, "Percentage Full: "..math.floor(EXTinfo[2][2] / 64 * 100).."%")
  468.    output(2, 12, "EXT3:")
  469.     output(3, 13, "Item: "..EXTinfo[3][1])
  470.     output(3, 14, "Percentage Full: "..math.floor(EXTinfo[3][2] / 64 * 100).."%")
  471.  
  472.    while(true) do
  473.       event, char = os.pullEvent()
  474.       if(char == "m") then
  475.          mainMenu()
  476.       elseif(char == "r") then
  477.          extractorInfo()
  478.       end
  479.    end
  480. end
  481.  
  482.  
  483. function recyclerInfo()
  484.    clear()
  485.    output(18, 1, "[[Refinery Info]]")
  486.    output(21, 2, "[Recyclers]")
  487.    output(1, 19, "[M]Main Menu    [R]Refresh")
  488.    RECinfo = {}
  489.    RECrelayInfo = {}
  490.    for x = 1, 3 do
  491.       info = RECsensor.getTargetDetails(RECloc[x])
  492.       slots = info["Slots"]
  493.       RECinfo[x] = {}
  494.       RECinfo[x][1] = slots[1]["Name"]
  495.       RECinfo[x][2] = slots[1]["Size"]
  496.       RECinfo[x][3] = slots[3]["Size"]
  497.    end
  498.    output(2, 4, "REC1:")
  499.     output(3, 5, "Item: "..RECinfo[1][1])
  500.     output(3, 6, "Percentage Full: "..math.floor(RECinfo[1][2] / 64 * 100).."%")
  501.    output(2, 8, "REC2:")
  502.     output(3, 9, "Item: "..RECinfo[2][1])
  503.     output(3, 10, "Percentage Full: "..math.floor(RECinfo[2][2] / 64 * 100).."%")
  504.    output(2, 12, "REC3:")
  505.     output(3, 13, "Item: "..RECinfo[3][1])
  506.     output(3, 14, "Percentage Full: "..math.floor(RECinfo[3][2] / 64 * 100).."%")
  507.  
  508.    while(true) do
  509.       event, char = os.pullEvent()
  510.       if(char == "m") then
  511.          mainMenu()
  512.       elseif(char == "r") then
  513.          recyclerInfo()
  514.       end
  515.    end
  516. end
  517.  
  518.  
  519. function viewMachine()
  520.    clear()
  521.    output(18, 1, "[[Refinery Info]]")
  522.    output(18, 2, "[Current Machine]")
  523.    output(1, 19, "[M] Main Menu    [R] Refresh")
  524.    loc, type, num = getMachine()
  525.    if(type == "MAC") then
  526.       info = MACsensor.getTargetDetails(loc)
  527.       relay = MACsensor.getTargetDetails(MACREloc[num])
  528.       slots = info.Slots
  529.       output(2, 4, "MAC"..num..":")
  530.       output(3, 5, "Item: "..slots[1]["Name"])
  531.       output(3, 6, "Percentage Full : "..math.floor(slots[1]["Size"] / 64 * 100).."%")
  532.       output(26, 4, "Relay: ")
  533.       relaySlot = relay.Slots
  534.       for x = 1, 9 do
  535.          output(27, x+4, relaySlot[x]["Name"].." - "..relaySlot[x]["Size"])
  536.       end
  537.    elseif(type == "FUR") then
  538.       info = FURsensor.getTargetDetails(loc)
  539.       relay = FURsensor.getTargetDetails(FURREloc[num])
  540.       slots = info.Slots
  541.       output(2, 4, "FUR"..num..":")
  542.       output(3, 5, "Item: "..slots[1]["Name"])
  543.       output(3, 6, "Percentage Full : "..math.floor(slots[1]["Size"] / 64 * 100).."%")
  544.       relaySlot = relay.Slots
  545.       for x = 1, 9 do
  546.          output(27, x+4, relaySlot[x]["Name"].." - "..relaySlot[x]["Size"])
  547.       end
  548.    elseif(type == "EXT") then
  549.       info = EXTsensor.getTargetDetails(loc)
  550.       relay = EXTsensor.getTargetDetails(EXTREloc[num])
  551.       slots = info.Slots
  552.       output(2, 4, "EXT"..num..":")
  553.       output(3, 5, "Item: "..slots[1]["Name"])
  554.       output(3, 6, "Percentage Full : "..math.floor(slots[1]["Size"] / 64 * 100).."%")
  555.       relaySlot = relay.Slots
  556.       for x = 1, 9 do
  557.          output(27, x+4, relaySlot[x]["Name"].." - "..relaySlot[x]["Size"])
  558.       end
  559.    elseif(type == "REC") then
  560.       info = RECsensor.getTargetDetails(loc)
  561.       relay = RECsensor.getTargetDetails(RECREloc[num])
  562.       slots = info.Slots
  563.       output(2, 4, "REC"..num..":")
  564.       output(3, 5, "Item: "..slots[1]["Name"])
  565.       output(3, 6, "Percentage Full : "..math.floor(slots[1]["Size"] / 64 * 100).."%")
  566.       relaySlot = relay.Slots
  567.       for x = 1, 9 do
  568.          output(27, x+4, relaySlot[x]["Name"].." - "..relaySlot[x]["Size"])
  569.       end
  570.    else
  571.       output(1, 4, "No machine found.")
  572.    end
  573.    while(true) do
  574.       event, char = os.pullEvent()
  575.       if(event == "char" or event == "pda_char") then
  576.          if(char == "m") then
  577.             mainMenu()
  578.          elseif(char == "r") then
  579.             viewMachine()
  580.          end
  581.       end
  582.    end
  583. end
  584.  
  585.  
  586. function mainMenu()
  587.    clear()
  588.    output(18, 1, "[[Refinery Info]]")
  589.    output(21, 2, "[Main Menu]")
  590.    output(3, 5, "[1] Macerator Info")
  591.    output(3, 7, "[2] Furnace Info")
  592.    output(3, 9, "[3] Extractor Info")
  593.    output(3, 11, "[4] Recycler Info")
  594.    output(1, 19, "[E] Exit    [V] View Current")
  595.    while(true) do
  596.       event, char = os.pullEvent()
  597.       if(event == "char" or event == "pda_char") then
  598.          if(char == "1") then
  599.             maceratorInfo()
  600.          elseif(char == "2") then
  601.             furnaceInfo()
  602.          elseif(char == "3") then
  603.             extractorInfo()
  604.          elseif(char == "4") then
  605.             recyclerInfo()
  606.          elseif(char == "v") then
  607.             viewMachine()
  608.          end
  609.       end
  610.    end
  611. end
  612.  
  613.  
  614.  
  615. os.loadAPI("ocs/apis/sensor")
  616. MACsensor = sensor.wrap("back:orange")
  617. FURsensor = sensor.wrap("back:lime")
  618. EXTsensor = sensor.wrap("back:purple")
  619. RECsensor = sensor.wrap("back:cyan")
  620. POSsensor = sensor.wrap("back:black")
  621.  
  622. MACloc = {"-6,2,3", "-6,2,0", "-6,2,-3", "-4,2,-5", "-1,2,-5", "2,2,-5", "5,2,-5"}
  623.  MACREloc = {"-6,3,3", "-6,3,0", "-6,3,-3", "-4,3,-5", "-1,3,-5", "2,3,-5", "5,3,-5"}
  624. FURloc = {"-4,2,-5", "-1,2,-5", "2,2,-5", "4,2,-3", "4,2,0", "4,2,-3"}
  625.  FURREloc = {"-4,3,-5", "-1,3,-5", "2,3,-5", "4,3,-3", "4,3,0", "4,3,-3"}
  626. EXTloc = {"-2,2,3", "-2,2,0", "-2,2,-3"}
  627.  EXTREloc = {"-2,3,3", "-2,3,0", "-2,3,-3"}
  628. RECloc = {"2,2,-3", "2,2,0", "2,2,3"}
  629.  RECREloc = {"2,3,-3", "2,3,0", "2,3,3"}
  630.  
  631. MACpos = {"-12,2,-4", "-12,2,-7", "-12,2,-10", "-10,2,-12", "-7,2,-12", "-4,2,-12", "-1,=2,-12"}
  632. FURpos = {"4,2,-12", "7,2,-12", "10,2,-12", "12,2,-10", "12,2,-7", "12,2,-4"}
  633. EXTpos = {"-12,2,9", "-12,2,6", "-12,2,3"}
  634. RECpos = {"12,2,2", "12,2,5", "12,2,8"}
  635.  
  636. mainMenu()
Advertisement
Add Comment
Please, Sign In to add comment