familychicken

gui

Jun 24th, 2022 (edited)
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1.  
  2. command /upgrade:
  3. trigger:
  4. sg_open("upgrade", 6, {%player%.line::upgrade}, player)
  5.  
  6. #function sg_itemset(name: text, loc: text, p: player) :: item:
  7. #set {_answer} to stone named "&7moneygod" with nbt "{loc:%{_loc}%}" if {_loc} is "1x3"
  8. #set {_answer} to stone pickaxe named "yukit復活 cost: 1e1.7e308" with nbt "{loc:%{_loc}%}" if {_loc} is "10x2"
  9. #set {_answer} to maxbuy_guicreate({_p}) if {_loc} is "buy"
  10. #set {_answer} to gray glass pane named "" if {_answer} is not set
  11. #return {_answer}
  12.  
  13. function sg_open(name: text, row: number, line: number, p: player):
  14. open chest inventory with {_row} row named "[・] %{_name}%" to {_p}
  15. loop ({_row}-1)*9 times:
  16. set {_lc} to loop-number
  17. set {_invloc1} to {_line}+mod({_lc}-1, 9)
  18. set {_invloc2} to floor(({_lc}-1)/9)+1
  19. set {_invloc} to "%{_invloc1}%x%{_invloc2}%"
  20. set slot {_lc}-1 of {_p}'s current inventory to sg_itemset({_name}, {_invloc}, {_p})
  21. loop 7 times:
  22. set slot (loop-number)+9*({_row}-1) of {_p}'s current inventory to lime glass pane named ""
  23. set slot {_row}*9-9 of {_p}'s current inventory to arrow named "&7⪻⪻" with nbt "{loc:""left""}" if {%{_p}%.line::%{_name}%} is not 0
  24. set slot {_row}*9-1 of {_p}'s current inventory to arrow named "&7⪼⪼" with nbt "{loc:""right""}"
  25. set slot {_row}*9-5 of {_p}'s current inventory to ender pearl named "&3最初へ戻る" with nbt "{loc:""back""}"
  26. set slot {_row}*9-7 of {_p}'s current inventory to maxbuy_guicreate({_p})
  27.  
  28.  
  29.  
  30. #on inventory click:
  31. # if name of clicked inventory contains "[・]":
  32. # cancel event
  33. # set {_item} to event-item
  34. # set {_n} to tag "loc" of nbt of {_item}
  35. # if name of clicked inventory contains "upgrade":
  36. # set {_a::1} to "upgrade"
  37. # set {_a::2} to 6
  38. # if {_n} is "1x3":
  39. # message "bbb"
  40. # if {_n} is "right":
  41. # add 1 to {%player%.line::%{_a::1}%}
  42. # sg_reload({_a::1}, {_a::2}, {%player%.line::%{_a::1}%}, player)
  43. # else if {_n} is "left":
  44. # add -1 to {%player%.line::%{_a::1}%} if {%player%.line::%{_a::1}%} > 1
  45. # sg_reload({_a::1}, {_a::2}, {%player%.line::%{_a::1}%}, player)
  46. # else if {_n} is "back":
  47. # set {%player%.line::%{_a::1}%} to 1
  48. # sg_reload({_a::1}, {_a::2}, {%player%.line::%{_a::1}%}, player)
  49. # else:
  50. # add 1 to {%player%.guic} if {_n} is "buy"
  51. # set slot (index of event-slot) of player's current inventory to sg_itemset({_a::1}, {_n}, player) if {_n} is set
  52.  
  53.  
  54. function sg_reload(name: text, row: number, line: number, p: player):
  55. loop ({_row}-1)*9 times:
  56. set {_lc} to loop-number
  57. set {_invloc1} to {_line}+mod({_lc}-1, 9)
  58. set {_invloc2} to floor(({_lc}-1)/9)+1
  59. set {_invloc} to "%{_invloc1}%x%{_invloc2}%"
  60. set slot {_lc}-1 of {_p}'s current inventory to sg_itemset({_name}, {_invloc}, {_p})
  61.  
  62.  
  63.  
  64.  
Add Comment
Please, Sign In to add comment