Advertisement
Guest User

enc

a guest
Feb 19th, 2020
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.63 KB | None | 0 0
  1. address = "5652cb7e-1978-435e-83c6-00314fb7098b"
  2. port = 27001
  3. delay = 0.2
  4. radius = 25
  5. displaySphere = true
  6. title = "Starlight Draconic Energy Core"
  7.  
  8.  
  9.  
  10. local component = require("component")
  11. local term = require("term")
  12. local modem = component.modem
  13. local core = component.proxy(address)
  14. local colors = require("colors")
  15. local gpu = component.gpu
  16. gpu.setResolution(80,25)
  17. w,h = gpu.getResolution()
  18.  
  19.  
  20. term.clear()
  21. print(port)
  22.  
  23. function loop()
  24.   read()
  25.   broadcast()
  26.   display()
  27.   os.sleep(delay)
  28. end
  29.  
  30. function read()
  31.   st = core.getEnergyStored()
  32.   mx = core.getMaxEnergyStored()
  33.   rt = core.getTransferPerTick()
  34.   md = "null"
  35.   if (core.canExtract()) then
  36.     md = "extract"
  37.   elseif (core.canReceive()) then
  38.     md = "receive"
  39.   end
  40. end
  41.  
  42. function broadcast()
  43.   modem.broadcast(port, st, mx, rt, md)
  44. end
  45.  
  46. function display()
  47.   term.clear()
  48.   term.setCursor(math.floor((w/2)-(#message/2)),1)
  49.   gpu.setForeground(0x00ffff)
  50.   term.write(message)
  51.  
  52.  
  53.   term.setCursor(1,2)
  54.   gpu.setForeground(0x00ffff)
  55.   term.write("Power Stored: ")
  56.   gpu.setForeground(0xffff00)
  57.   term.write(math.floor(st).."RF")
  58.  
  59.   term.setCursor(1,3)
  60.   gpu.setForeground(0x00ffff)
  61.   term.write("Transfer Rate: ")
  62.   gpu.setForeground(0xffff00)
  63.   term.write(math.floor(rt).."RF/t")
  64.  
  65.   term.setCursor(1,4)
  66.   gpu.setForeground(0x00ffff)
  67.   term.write("Maximum Power Storage: ")
  68.   gpu.setForeground(0xffff00)
  69.   term.write(math.floor(mx).."RF")
  70.  
  71.   if displaySphere then
  72.     sphere()
  73.   end
  74. end
  75.  
  76. function sphere()
  77.  
  78.   if (math.floor(100*st/mx) >= 80) then
  79.     scolor = 0x00ff00
  80.   elseif (math.floor(100*st/mx) <=20) then
  81.     scolor = 0xff0000
  82.   else
  83.     scolor = 0xffff40
  84.   end
  85.  
  86. end
  87.  
  88.  
  89. while true do
  90.   loop()
  91. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement