Advertisement
Guest User

Untitled

a guest
Mar 28th, 2020
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.33 KB | None | 0 0
  1. options:
  2. color: %{solar.options.color-1}%
  3. base: %{solar.options.color-2}%
  4.  
  5. command /grants [<offline player>] [<integer>] [<text>]:
  6. permission: solar.command.grants
  7. permission message: %{solar.messages.permission}%
  8. aliases: /solar:grants
  9. trigger:
  10. if arg 1 is not set:
  11. send "{@base}Usage: {@color}/grants &f<player> [page]"
  12. else:
  13. if {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grants} is not set:
  14. send "&cThis user does not have any logged grants."
  15. else:
  16. set {_grnts} to {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grants}
  17. set {solar.data.temp.command.grants.%player%.arg-1} to arg 1
  18. set {_pages} to 1
  19. set {_numberOfRanks} to 0
  20. set {_pagesCount} to 0
  21. loop {_grnts} times:
  22. add 1 to {_numberOfRanks}
  23. add 1 to {_pagesCount}
  24. if {_pagesCount} > 27:
  25. add 1 to {_pages}
  26. set {_pagesCount} to 0
  27. if arg 2 is not set:
  28. set {_page} to 1
  29. else:
  30. if arg 2 < 1:
  31. send "&cThe specified page does not exist."
  32. stop
  33. else if arg 2 > {_pages}:
  34. send "&cThe specified page does not exist."
  35. stop
  36. else:
  37. set {_page} to arg 2
  38. set {solar.data.temp.command.grants.%player%.page} to {_page}
  39. set {solar.data.temp.command.grants.%player%.arg-1} to arg 1
  40. open chest with 4 rows named "Grants for &r%colored {solar.data.rank.%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.rank}%.color}%%arg-1% &7(&r{@color}%{_page}%/%{_pages}%&7)" to player
  41. loop 9 times:
  42. set slot (loop-value) - 1 of player's current inventory to black stained glass named "&7"
  43. if {_page} > 1:
  44. set slot 0 of player's current inventory to arrow named "&e&lPrevious Page" with lore "&7Click to return to||&7the previous page."
  45. if {_page} < {_pages}:
  46. set slot 8 of player's current inventory to arrow named "&e&lNext Page" with lore "&7Click to display||&7the next page."
  47. set slot 4 of player's current inventory to feather named "&e&lRefresh"
  48. set {_itemValue} to 1
  49. if {_page} > 1:
  50. set {_itemValue} to (({_page} - 1) * 27) + 1
  51. set {_itemFutureValue} to {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grants} + 1
  52. loop {_grnts} times:
  53. remove 1 from {_itemFutureValue}
  54. set {_item.%{_itemFutureValue}%} to loop-value
  55. set {_itemUncolored.%{_itemFutureValue}%} to loop-value
  56. set {_ranks} to 0
  57. set {_slot} to 9
  58. loop 27 times:
  59. if {_itemValue} <= {_grnts}:
  60. loop {_grnts} times:
  61. if loop-value-2 is {_item.%{_itemValue}%}:
  62. set {_grant} to loop-value-2
  63. if {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.active} is true:
  64. set {_block} to light green wool
  65. else:
  66. set {_block} to red wool
  67. if {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.expired} is set:
  68. set {_block} to light gray wool
  69. if {_block} is light green wool:
  70. set {_status} to "&a&l(Active) &a%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.added.on}%"
  71. else if {_block} is red wool:
  72. set {_status} to "&c&l(Removed) &c%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.added.on}%"
  73. else if {_block} is light gray wool:
  74. set {_status} to "&7&l(Expired) &7%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.added.on}%"
  75.  
  76. #----------------------------------------------------------------------------------------------------------------------
  77. set {_target} to colored "%{solar.data.rank.%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.rank}%.color}%%arg-1%"
  78. set {_rank} to solar_getColoredRank({solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.rank})
  79. set {_duration} to {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.time}
  80. set {_issued-by} to colored "%{solar.data.rank.%{solar.data.user-uuid.%{solar.data.user.%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.added.by}%.uuid}%.rank}%.color}%%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.added.by}%"
  81. set {_issued-on} to {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.added.on}
  82. set {_removed-by} to colored "%{solar.data.rank.%{solar.data.user-uuid.%{solar.data.user.%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.removed.by}%.uuid}%.rank}%.color}%%{solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.removed.by}%"
  83. set {_removed-on} to {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.removed.on}
  84. set {_removed-reason} to {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.removed.reason}
  85. set {_reason} to {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.reason}
  86. set {_waited} to difference between {_issued-on} and now
  87. set {_expires-in} to difference between {_duration} and {_waited}
  88. #----------------------------------------------------------------------------------------------------------------------
  89. if {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.active} is true:
  90. if "%{_duration}%" is not "forever":
  91. set {_lore} to "{@color}&m------------------------------||{@base}Target: &r%{_target}%||{@base}Rank: &r%{_rank}%||{@base}Expires In: &r%{_expires-in}%||{@color}&m------------------------------||{@base}Duration: &r%{_duration}%||{@base}Issued By: &r%{_issued-by}%||{@base}Issued On: &r%{_issued-on}%||{@base}Issued Reason: &r%{_reason}%||{@color}&m------------------------------"
  92. else:
  93. set {_lore} to "{@color}&m------------------------------||{@base}Target: &r%{_target}%||{@base}Rank: &r%{_rank}%||{@color}&m------------------------------||{@base}Duration: &r%{_duration}%||{@base}Issued By: &r%{_issued-by}%||{@base}Issued On: &r%{_issued-on}%||{@base}Issued Reason: &r%{_reason}%||{@color}&m------------------------------"
  94. else:
  95. if {solar.data.user-uuid.%{solar.data.user.%arg-1%.uuid}%.grant.%{_item.%{_itemValue}%}%.expired} is not set:
  96. set {_lore} to "{@color}&m------------------------------||{@base}Target: &r%{_target}%||{@base}Rank: &r%{_rank}%||{@color}&m------------------------------||{@base}Duration: &r%{_duration}%||{@base}Issued By: &r%{_issued-by}%||{@base}Issued On: &r%{_issued-on}%||{@base}Issued Reason: &r%{_reason}%||{@color}&m------------------------------||{@base}Removed By: &r%{_removed-by}%||{@base}Removed On: &r%{_removed-on}%||{@base}Removed Reason: &r%{_removed-reason}%||{@color}&m------------------------------"
  97. else:
  98. set {_lore} to "{@color}&m------------------------------||{@base}Target: &r%{_target}%||{@base}Rank: &r%{_rank}%||{@color}&m------------------------------||{@base}Duration: &r%{_duration}%||{@base}Issued By: &r%{_issued-by}%||{@base}Issued On: &r%{_issued-on}%||{@base}Issued Reason: &r%{_reason}%||{@color}&m------------------------------"
  99.  
  100. replace "<none><none>" with "<none>" in {_lore}
  101. replace all "<none>" with "N/A " in {_lore}
  102.  
  103. set slot {_slot} of player's current inventory to {_block} named "&r%colored {_status}%" with lore "%colored {_lore}%"
  104.  
  105. add 1 to {_itemValue}
  106. add 1 to {_slot}
  107. set {_grants} to loop-value
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement