Guest User

DynamicListGUI_EN

a guest
May 28th, 2022
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.47 KB | None | 0 0
  1.  
  2. command /sethome_test [<string>] [<string>]:
  3. trigger:
  4. if arg 1 is set:
  5. set {skycreations::database.%player%.homes::%arg 1%} to arg 1
  6. set {skycreations::database.%player%.homes.command::%arg 1%} to arg-1
  7. if arg 2 is set:
  8. set {skycreations::database.%player%.homes.icon::%arg 1%} to arg-2 parsed as item
  9. if arg 2 is not set:
  10. set {skycreations::database.%player%.homes.icon::%arg 1%} to Big Dripleaf
  11.  
  12. command /unsethome_test [<text>]:
  13. trigger:
  14. if arg 1 is set:
  15. delete {skycreations::database.%player%.homes::%arg 1%}
  16. delete {skycreations::database.%player%.homes.command::%arg 1%}
  17. delete {skycreations::database.%player%.homes.icon::%arg 1%}
  18.  
  19. command /home_test [<text>] [<text>] [<text>] [<text>]:
  20. trigger:
  21. if arg 1 is set:
  22. SummonListOfWaypoints(player, arg 1, "Warp To")
  23. if arg 1 is not set:
  24. SummonListOfWaypoints(player, "1", "Warp To")
  25.  
  26. function SummonListOfWaypoints(player: player, typedpage: text, action: text):
  27. open chest inventory with 6 rows named "&8Menadzer szybkiej podrozy" to {_player}
  28. wait 1 ticks
  29. set {_page} to {_typedpage} parsed as number
  30. set {skycreations::player::VarTransfer::lastpage} to {_typedpage} parsed as number
  31. if {_page} is not set:
  32. set {_page} to 1
  33. set {_numberofrecords} to size of {skycreations::database.%{_player}%.homes::*}
  34. set {_numberofpages} to ceil({_numberofrecords}/18)
  35. if {_numberofpages} is smaller than 1:
  36. set {_numberofpages} to 1
  37. if {_page} is smaller than 1:
  38. send "none" to {_player}
  39. stop
  40. if {_page} is greater than {_numberofpages}:
  41. send "none" to {_player}
  42. stop
  43. if {_numberofrecords} is greater than (18*{_page}):
  44. set slot 43 of {_player}'s current inventory to 1 of arrow named "&aNext Page" with lore ""
  45. if {_page} is greater than 1:
  46. set slot 37 of {_player}'s current inventory to 1 of arrow named "&aPrevious Page" with lore ""
  47. if size of {skycreations::database.%{_player}%.homes::*} is smaller than 1:
  48. send "none" to {_player}
  49. stop
  50. set slot 40 of {_player}'s current inventory to 1 of book named "&aPage &e&l%{_page}% &6from &e&l%{_numberofpages}%" with lore "" and "&6You can see a lot of" and "&6records in this list..."
  51. loop {skycreations::database.%{_player}%.homes::*}:
  52. add loop-value to {_skycreations::database.%{_player}%.homes::*}
  53. loop {skycreations::database.%{_player}%.homes.command::*}:
  54. add loop-value to {_skycreations::database.%{_player}%.homes.command::*}
  55. loop {skycreations::database.%{_player}%.homes.icon::*}:
  56. add loop-value to {_skycreations::database.%{_player}%.homes.icon::*}
  57. loop {_numberofrecords} times:
  58. set {_list} to ({_page}-1)*18
  59. add loop-number to {_list}
  60. if {_skycreations::database.%{_player}%.homes::%{_list}%} is not set:
  61. stop
  62. if loop-number is (18+1):
  63. stop
  64. set slot (17+loop-number) of {_player}'s current inventory to 1 of {_skycreations::database.%{_player}%.homes.icon::%{_list}%} named "&e&l%{_skycreations::database.%{_player}%.homes::%{_list}%}%" with lore ""
  65. # send "&7ID --- Name --- Persorm --- Icon" to {_player}
  66. # send "&a%{_list}% &f--- &b&l%{_skycreations::database.%{_player}%.homes::%{_list}%}% &f--- &e&l%{_skycreations::database.%{_player}%.homes.command::%{_list}%}% &f--- &c%{_skycreations::database.%{_player}%.homes.icon::%{_list}%}% " to {_player}
  67. # send "" to {_player}
  68.  
  69. on inventory click:
  70. event-inventory is not player's inventory
  71. if name of event-inventory is "&8Menadzer szybkiej podrozy":
  72. cancel event
  73. set {_player} to player
  74. set {_page} to 1
  75. set {_numberofrecords} to size of {skycreations::database.%{_player}%.homes::*}
  76. set {_numberofpages} to ceil({_numberofrecords}/32000)
  77. if {_numberofpages} is smaller than 1:
  78. set {_numberofpages} to 1
  79. loop {skycreations::database.%{_player}%.homes::*}:
  80. add loop-value to {_skycreations::database.%{_player}%.homes::*}
  81. loop {skycreations::database.%{_player}%.homes.command::*}:
  82. add loop-value to {_skycreations::database.%{_player}%.homes.command::*}
  83. loop {skycreations::database.%{_player}%.homes.icon::*}:
  84. add loop-value to {_skycreations::database.%{_player}%.homes.icon::*}
  85. set {_numberofrecords} to size of {skycreations::database.%{_player}%.homes::*}
  86. loop {_numberofrecords} times:
  87. set {_list} to ({_page}-1)*32000
  88. add loop-number to {_list}
  89. if {_skycreations::database.%{_player}%.homes::%{_list}%} is not set:
  90. stop
  91. if loop-number is 32000:
  92. stop
  93. event-item is {_skycreations::database.%{_player}%.homes.icon::%{_list}%} named "&e&l%{_skycreations::database.%{_player}%.homes::%{_list}%}%":
  94. send "./home %{_skycreations::database.%{_player}%.homes.command::%{_list}%}% get %{_player}%" to {_player}
  95. if event-item is arrow named "&aNext Page":
  96. execute {_player} command "/hometest %({skycreations::player::VarTransfer::lastpage}+1)%"
  97. if event-item is arrow named "&aPrevious Page":
  98. execute {_player} command "/hometest %({skycreations::player::VarTransfer::lastpage}-1)%"
Advertisement
Add Comment
Please, Sign In to add comment