Advertisement
Guest User

Untitled

a guest
Jan 24th, 2017
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 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. players = {}
  51. function playerSelection(interface, gui)
  52. cards = interface.getAllStacks()
  53. for i,v in pairs(cards) do
  54. cardData = v.all()
  55. playerName = cardData.display_name
  56. index = string.find(playerName, "-")+2
  57. playerName = string.sub(playerName, index)
  58. players[i] = playerName
  59. gui.addButton(i,1,1+(i-1)*22,#playerName*7,20,playerName)
  60. end
  61. end
  62.  
  63. invToggle = false
  64. targetInv = nil
  65. depoInv = nil
  66. targetItems = {}
  67. selected = -1
  68. while true do
  69. event = {os.pullEvent()}
  70. if(event[1] == "keyInput") then
  71. if(event[3] == 74 and event[4]) then
  72. gui.clear()
  73. playerSelection(interface, gui)
  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