Ryouga

infopanel

Apr 1st, 2017
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.80 KB | None | 0 0
  1. --
  2. --Info Panel
  3. --
  4.  
  5. os.loadAPI("powermeter")
  6.  
  7. mon = peripheral.wrap("right")
  8. --mon.clear()
  9. mon.setBackgroundColor(colors.black)
  10. mon.setTextColor(colors.white)
  11.  
  12. mod = peripheral.wrap("left")
  13. mod.open(3)
  14.  
  15. local count = 1
  16. info = {}
  17. sender = ""
  18.  
  19.   -- TABLE Structure
  20.   --KEYS
  21.     --Name provided by remote computers
  22.     --DE_Core
  23.     --TE_Res
  24.       --Key, Value
  25.         --max, max energy
  26.         --stored, current energy level
  27.  
  28.  
  29.  
  30.         -- For world loadup
  31.   -- don't jump directly into the loop
  32.   sleep(1)
  33.  
  34.   while true do
  35.     local event, modemSide, senderChannel, replyChannel, message = os.pullEvent("modem_message")
  36.  
  37.     if senderChannel == 3 then
  38.       if type(message) == "table" then
  39.             if message["sender"] then
  40.           sender = message["sender"]
  41.          
  42.           if info[sender] == nil then
  43.             info[sender] = {}
  44.           end
  45.          
  46.           for k,v in pairs(message) do
  47.    
  48.             if k ~= "sender" then
  49.               info[sender][k]=v
  50.             end -- if sender end
  51.            
  52.           end -- for end
  53.         end -- if message[sender]
  54.       end --if type end
  55.     end --if senderChannel end
  56.  
  57.   -- Display remote computers information  
  58.   if info["TE_Res"] then
  59.     --powermeter.label(2,22, info["TE_Res"]["stored"] .. " / " .. info["TE_Res"]["max"] .. "         ")
  60.     powermeter.drawMeter(2,29,54,4,colors.cyan, "Resonant Energy Cell",info["TE_Res"]["stored"],info["TE_Res"]["max"])
  61.   end
  62.  
  63.   if info["DE_Core"] then
  64.     --powermeter.label(2,26, info["DE_Core"]["stored"] .. " / " .. info["DE_Core"]["max"] .. "         ")
  65.     powermeter.drawMeter(2,34,161,4,colors.purple, "Energy Core",info["DE_Core"]["stored"],info["DE_Core"]["max"])
  66.   end
  67.  
  68.  
  69.   --term.setCursorPos(1,1)
  70.   --print(textutils.serialize(info))
  71.  
  72.  
  73. end --while end
Advertisement
Add Comment
Please, Sign In to add comment