edoreld

Untitled

Jun 7th, 2013
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.72 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["progressBarBG"] = bridge.addBox(5,19.9,50,5,0x000000,1)
  25. value["progressbar"] = bridge.addBox(5,20,0,5,0x8DC63F,1)
  26. value["progressbar"].setZIndex(2)
  27. value["progressbartext"] = bridge.addText(5,21,"0",0x333845)
  28. value["progressbartext"].setScale(0.5)
  29. value["progressbartext"].setZIndex(3)
  30.  
  31. value["energyLabel"] = bridge.addText(5,30,"Energy Stored:",0x1b1224)
  32. value["energyLabel"].setScale(0.5)
  33. value["energybar"] = bridge.addBox(5,35,0,5,0x28A8B4,1)
  34. value["energybar"].setZIndex(2)
  35. value["energybartext"] = bridge.addText(5,36,"0",0x333845)
  36. value["energybartext"].setScale(0.5)
  37. value["energybartext"].setZIndex(3)
  38. end
  39.  
  40. local progress,maxProgress,curProgress
  41. local energy,maxEnergy,curEnergy
  42.  
  43. while true do
  44. for i=#machines,1,-1 do
  45. machine = machines[i]
  46. if net.isPresentRemote(machine["id"]) then
  47. -- PROGRESS
  48. progress = net.callRemote(machine["id"],"getProgress")
  49. maxProgress = net.callRemote(machine["id"],"getMaxProgress")
  50. curProgress = width / maxProgress * progress
  51.  
  52. machine["progressbar"].setWidth(curProgress)
  53. machine["progressbartext"].setText(tostring(round(curProgress * 2,2)).."%")
  54.  
  55. -- ENERGY
  56. energy = net.callRemote(machine["id"],"getStoredEU")
  57. maxEnergy = net.callRemote(machine["id"],"getEUCapacity")
  58. curEnergy = width / maxEnergy * energy
  59.  
  60. machine["energybar"].setWidth(curEnergy)
  61. machine["energybartext"].setText(tostring(round(curEnergy * 2,2)).."%")
  62. else
  63. machine["progressbar"].delete()
  64. machine["label"].delete()
  65. machine["progressbartext"].delete()
  66. end
  67. end
  68. os.sleep(1)
  69. end
  70.  
  71.  
  72. -- arguments: x, y, width, height, color, opacity
  73. -- mybox = bridge.addBox(0,0,80,40,0x0099FF,0.7)
  74.  
  75. -- arguments: x, y, text, color
  76. -- mytext = bridge.addText(10, 10, "hello!", 0xCC0000)
  77.  
  78. --while true do
  79. -- term.clear()
  80. -- term.setCursorPos(1,1)
  81.  
  82. -- print("1. Clear Glasses.")
  83. -- print("2. Print a blue rectangle.")
  84. -- print("3. Show matter fabricator")
  85. -- print("0. Exit")
  86.  
  87. -- local answer = tonumber(read())
  88.  
  89.  
  90. -- if answer == 1 then
  91. -- bridge.clear()
  92. -- elseif answer == 2 then
  93. -- box = bridge.addBox(0,0,80,40,0x0099FF,0.7)
  94. -- elseif answer == 0 then
  95. -- break
  96. -- end
  97. -- end
Advertisement
Add Comment
Please, Sign In to add comment