Advertisement
kileraptor1

Untitled

Jun 26th, 2016
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.81 KB | None | 0 0
  1. -- pastebin code:0ggjtRpS
  2. -- Original coder:sgosiaco
  3. -- Editor:sleepytiger (Added EU)
  4.  
  5. local bridge = peripheral.wrap("left")
  6. local net = peripheral.wrap("back")
  7.  
  8. bridge.clear()
  9.  
  10. local width = 100
  11.  
  12. local storageUnits = {
  13. {
  14. ["id"] = "BigReactors-Reactor_0",
  15. ["name"] = "Reactor"
  16.  
  17. }
  18. }
  19.  
  20. local offset = 0
  21. for key, storageUnit in pairs(storageUnits) do
  22. if net.getTypeRemote(storageUnit["id"]) == "cofh_thermalexpansion_energycell" or "batbox" or "mfsu" or "cesu" or "mfe" then
  23. pxOffset = offset * 20
  24. storageUnit["label"] = bridge.addText(4, 4 + pxOffset, storageUnit["name"], 0xffffff)
  25. storageUnit["bar"] = bridge.addBox(4, 14 + pxOffset, 0, 5, 0xCC0000, 0.9)
  26. storageUnit["bar"].setZ(2)
  27. storageUnit["bg"] = bridge.addBox(4, 14 + pxOffset, width, 5, 0x000000, 0.5)
  28. storageUnit["num"] = bridge.addText(4, 24 + pxOffset, "0/0", 0xffffff)
  29. storageUnit["percent"] = bridge.addText(0 + bridge.getStringWidth(storageUnit["name"]), 4 + pxOffset, "##%", 0xffffff)
  30. offset = offset + 2
  31. elseif net.getTypeRemote(storageUnit["id"]) == "harvester" then
  32. pxOffset = offset * 10
  33. storageUnit["label"] = bridge.addText(4, 34 + pxOffset, storageUnit["name"].." :", 0xffffff)
  34. storageUnit["run"] = bridge.addText(0 + bridge.getStringWidth(storageUnit["name"]), 34 + pxOffset, "", 0xffffff)
  35. offset = offset + 1
  36. elseif net.getTypeRemote(storageUnit["id"]) == "planter" then
  37. pxOffset = offset * 10
  38. storageUnit["label"] = bridge.addText(4, 44 + pxOffset, storageUnit["name"].." :", 0xffffff)
  39. storageUnit["run"] = bridge.addText(0 + bridge.getStringWidth(storageUnit["name"]), 44 + pxOffset, "", 0xffffff)
  40. offset = offset + 1
  41. end
  42. elseif net.getTypeRemote(storageUnit["id"]) == "BigReactors-Reactor" then
  43. pxOffset = offset * 20
  44. storageUnit["label"] = bridge.addText(4, 4 + pxOffset, storageUnit["name"], 0xffffff)
  45. storageUnit["bar"] = bridge.addBox(4, 14 + pxOffset, 0, 5, 0xCC0000, 0.9)
  46. storageUnit["bar"].setZ(2)
  47. storageUnit["bg"] = bridge.addBox(4, 14 + pxOffset, width, 5, 0x000000, 0.5)
  48. storageUnit["num"] = bridge.addText(4, 24 + pxOffset, "0/0", 0xffffff)
  49. storageUnit["FuelLabel"] = bridge.addText(4, 34 + pxOffset, "Fuel".." :", 0xffffff)
  50. storageUnit["percent"] = bridge.addText(0 + bridge.getStringWidth(storageUnit["name"]), 4 + pxOffset, "##%", 0xffffff)
  51. storageUnit["FuelPercent"] = bridge.addText(0 + bridge.getStringWidth("Fuel :"), 34 + pxOffset, "##%", 0xffffff)
  52. offset = offset + 3
  53. end
  54.  
  55. while true do
  56. for i=#storageUnits,1,-1 do
  57. storageUnit = storageUnits[i]
  58. if net.isPresentRemote(storageUnit["id"]) then
  59. if net.getTypeRemote(storageUnit["id"]) == "cofh_thermalexpansion_energycell" then
  60. t = peripheral.wrap(storageUnit["id"])
  61. capacity = t.getMaxEnergyStored("")
  62. amount = t.getEnergyStored("")
  63. storageUnit["bar"].setWidth(width / capacity * amount)
  64. perc = math.floor(amount/capacity * 100)
  65. tCap = tostring(capacity)
  66. tAmt = tostring(amount)
  67. tPerc = tostring(perc)
  68. storageUnit["num"].setText(tAmt.."/"..tCap)
  69. storageUnit["percent"].setText(tPerc.."%")
  70. elseif net.getTypeRemote(storageUnit["id"]) == "batbox" or "cesu" or "mfsu" or "mfe" then
  71. t = peripheral.wrap(storageUnit["id"])
  72. capacity = t.getEUCapacity()
  73. amount = t.getEUStored()
  74. storageUnit["bar"].setWidth(width / capacity * amount)
  75. perc = math.floor(amount/capacity * 100)
  76. tCap = tostring(capacity)
  77. tAmt = tostring(amount)
  78. tPerc = tostring(perc)
  79. storageUnit["num"].setText(tAmt.."/"..tCap)
  80. storageUnit["percent"].setText(tPerc.."%")
  81. elseif net.getTypeRemote(storageUnit["id"]) == "BigReactors-Reactor" then
  82. t = peripheral.wrap(storageUnit["id"])
  83. capacity = 10000000
  84. amount = t.getEnergyStored("")
  85. storageUnit["bar"].setWidth(width / capacity * amount)
  86. perc = math.floor(amount/capacity * 100)
  87. tCap = tostring(capacity)
  88. tAmt = tostring(amount)
  89. tPerc = tostring(perc)
  90. storageUnit["num"].setText(tAmt.."/"..tCap)
  91. storageUnit["percent"].setText(tPerc.."%")
  92. MaxFuel = t.getFuelAmountMax()
  93. Fuel = t.getFuelAmount()
  94. FuelPerc = math.floor(Fuel/MaxFuel * 100)
  95. storageUnit["FuelPercent"].setText(FuelPerc.."%")
  96. elseif net.getTypeRemote(storageUnit["id"]) == "harvester" or net.getTypeRemote(storageUnit["id"]) == "planter" then
  97. t = peripheral.wrap(storageUnit["id"])
  98. running = t.isActive()
  99. if running == true then
  100. storageUnit["run"].setText("Running")
  101. storageUnit["run"].setColor(0x33cc33)
  102. --storageUnit["label"].setText(storageUnit["name"]..": Running")
  103. else
  104. storageUnit["run"].setText("Not Running")
  105. storageUnit["run"].setColor(0xff0000)
  106. --storageUnit["label"].setText(storageUnit["name"]..": Not Running")
  107. end
  108. end
  109. else
  110. if net.getTypeRemote(storageUnit["id"]) == "cofh_thermalexpansion_energycell" or "batbox" or "msfu" or "cesu" or "mfe" then
  111. storageUnit["bar"].delete()
  112. storageUnit["bg"].delete()
  113. storageUnit["label"].delete()
  114. storageUnit["num"].delete()
  115. storageUnit["percent"].delte()
  116. table.remove(storageUnits, i)
  117. elseif net.getTypeRemote(storageUnit["id"]) == "harvester" or net.getTypeRemote(storageUnit["id"]) == "planter" then
  118. storageUnit["label"].delete()
  119. storageUnit["run"].delete()
  120. table.remove(storageUnits, i)
  121. end
  122. end
  123. end
  124. sleep(0.5)
  125. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement