edoreld

Untitled

Jun 7th, 2013
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.65 KB | None | 0 0
  1. local bridge = peripheral.wrap("left")
  2. local net = peripheral.wrap("back")
  3.  
  4. local width = 50
  5. local machines = {
  6. {
  7. ["id"] = "matter_fabricator_0",
  8. ["name"] = "Matter Fab"
  9. }
  10. }
  11.  
  12. function round(num, idp)
  13. local mult = 10^(idp or 0)
  14. return math.floor(num * mult + 0.5) / mult
  15. end
  16.  
  17. bridge.clear()
  18.  
  19. for key,value in pairs(machines) do
  20. value["label"] = bridge.addText(5,5,"Matter Fabricator:",0xC5360F)
  21.  
  22. value["progressLabel"] = bridge.addText(5,15,"UU-Matter Progress:",0x1b1224)
  23. value["progressLabel"].setScale(0.5)
  24. value["progressbar"] = bridge.addBox(5,20,0,5,0x8DC63F,1)
  25. value["progressbar"].setZIndex(2)
  26. value["progressbartext"] = bridge.addText(5,21,"0",0x333845)
  27. value["progressbartext"].setScale(0.5)
  28. value["progressbartext"].setZIndex(3)
  29.  
  30. value["energyLabel"] = bridge.addText(5,30,"Energy Stored:",0x1b1224)
  31. value["energyLabel"].setScale(0.5)
  32. value["energybar"] = bridge.addBox(5,35,0,5,0x28A8B4,1)
  33. value["energybar"].setZIndex(2)
  34. value["energybartext"] = bridge.addText(5,36,"0",0x333845)
  35. value["energybartext"].setScale(0.5)
  36. value["energybartext"].setZIndex(3)
  37. end
  38.  
  39. local progress,maxProgress,curProgress
  40. local energy,maxEnergy,curEnergy
  41.  
  42. while true do
  43. for i=#machines,1,-1 do
  44. machine = machines[i]
  45. if net.isPresentRemote(machine["id"]) then
  46. -- PROGRESS
  47. progress = net.callRemote(machine["id"],"getProgress")
  48. maxProgress = net.callRemote(machine["id"],"getMaxProgress")
  49. curProgress = width / maxProgress * progress
  50.  
  51. machine["progressbar"].setWidth(curProgress)
  52. machine["progressbartext"].setText(tostring(round(curProgress * 2,2)).."%")
  53.  
  54. -- ENERGY
  55. energy = net.callRemote(machine["id"],"getStoredEU")
  56. maxEnergy = net.callRemote(machine["id"],"getEUCapacity")
  57. curEnergy = width / maxEnergy * energy
  58.  
  59. machine["energybar"].setWidth(curEnergy)
  60. machine["energybartext"].setText(tostring(round(curEnergy * 2,2)).."%")
  61. else
  62. machine["progressbar"].delete()
  63. machine["label"].delete()
  64. machine["progressbartext"].delete()
  65. end
  66. end
  67. os.sleep(1)
  68. end
  69.  
  70.  
  71. -- arguments: x, y, width, height, color, opacity
  72. -- mybox = bridge.addBox(0,0,80,40,0x0099FF,0.7)
  73.  
  74. -- arguments: x, y, text, color
  75. -- mytext = bridge.addText(10, 10, "hello!", 0xCC0000)
  76.  
  77. --while true do
  78. -- term.clear()
  79. -- term.setCursorPos(1,1)
  80.  
  81. -- print("1. Clear Glasses.")
  82. -- print("2. Print a blue rectangle.")
  83. -- print("3. Show matter fabricator")
  84. -- print("0. Exit")
  85.  
  86. -- local answer = tonumber(read())
  87.  
  88.  
  89. -- if answer == 1 then
  90. -- bridge.clear()
  91. -- elseif answer == 2 then
  92. -- box = bridge.addBox(0,0,80,40,0x0099FF,0.7)
  93. -- elseif answer == 0 then
  94. -- break
  95. -- end
  96. -- end
Advertisement
Add Comment
Please, Sign In to add comment