Advertisement
Guest User

helm

a guest
Jan 24th, 2017
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.82 KB | None | 0 0
  1. function dump(t, level)
  2.         level = level or 0
  3.         for i,v in pairs(t) do
  4.                 io.write(string.rep('  ', level))
  5.                 io.write(i..': ')
  6.                 if type(v) == 'table' then
  7.                         print ''
  8.                         dump(v, level + 1)
  9.                 else
  10.                         print(tostring(v))
  11.                 end
  12.         end
  13. end
  14.  
  15. antenna = peripheral.wrap("left")
  16. players = antenna.getPlayers()
  17. hud = antenna.getHUD(players[1])
  18. gui = hud.getGUI()
  19. resX,resY = hud.getResolution()
  20.  
  21. interface = peripheral.wrap("bottom")
  22. interface.setOutputSide("north")
  23. interface.setInputSide("north")
  24. s = interface.getAllStacks()
  25.  
  26. function itemList(items, gui)
  27.   for i,v in pairs(items) do
  28.     x = math.floor(i/20)*(resX*1/4)
  29.     y = 1+(i%20)*22
  30.     --id,x,y,width,height,text
  31.     gui.addButton(5+i,1+x,y,#v.data.displayName*7,20,v.data.displayName)
  32.   end
  33. end
  34.  
  35. function getItems()
  36.   targetItems = {}
  37.   inc = 0
  38.   for i=0,targetInv.getSize()-1,1 do
  39.     stack = targetInv.getStackInSlot(i)
  40.     if(stack ~= nil) then
  41.       itemData = {}
  42.       itemData["data"] = stack
  43.       itemData["index"] = i
  44.       targetItems[inc] = itemData
  45.       inc = inc+1
  46.     end
  47.   end  
  48. end
  49.  
  50. function playerSelection(gui)
  51.  
  52. end
  53.  
  54. invToggle = false
  55. targetInv = nil
  56. depoInv = nil
  57. targetItems = {}
  58. players = {}
  59. selected = -1
  60. while true do
  61.   event = {os.pullEvent()}
  62.   if(event[1] == "keyInput") then
  63.     if(event[3] == 74 and event[4]) then
  64.       gui.clear()
  65.       cards = interface.getAllStacks()
  66.       for i,v in pairs(cards) do
  67.         cardData = v.all()
  68.         playerName = cardData.display_name
  69.         index = string.find(playerName, "-")+2
  70.         playerName = string.sub(playerName, index)
  71.         players[i] = playerName
  72.         gui.addButton(i,1,1+(i-1)*22,#playerName*7,20,playerName)
  73.       end
  74.       gui.add()
  75.       gui.open()
  76.     end
  77.   elseif(event[1] == "buttonClicked") then
  78.     if(event[3] < 5) then
  79.       if(event[3] == 0) then
  80.         invIndex = targetItems[selected].index
  81.         targetInv.retrieveFromSlot(invIndex,1)
  82.         userInv.push(0,64)
  83.       elseif(event[3] >= 1) then
  84.         if(not invToggle) then
  85.           gui.clear()
  86.           targetInv = interface.getPlayerInv(players[event[3]])
  87.           getItems()
  88.           itemList(targetItems, gui)
  89.           gui.add()
  90.           gui.open()
  91.         else
  92.           depoInv = interface.getPlayerInv(players[event[3]])
  93.         end
  94.       end
  95.     else
  96.       selected = event[3]-5
  97.       item = targetItems[selected].data
  98.       inc = 0
  99.       gui.clear()
  100.       for k,v in pairs(item) do
  101.         gui.drawString(k..": "..v,resX/2,1+inc*16)
  102.         inc = inc+1
  103.       end
  104.       itemList(targetItems,gui)
  105.       gui.addButton(0,resX/2,resY/2,#"Take"*10,20,"Take")
  106.       gui.add()
  107.       gui.open()
  108.     end
  109.   end
  110. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement