Advertisement
Haon

scen manager

Apr 20th, 2019
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.82 KB | None | 0 0
  1. options:
  2. UHC: &6UHC &8»&7
  3. Prefix: &6Scenario Manager &8»&7
  4. Usage: &6UHC &8»&7 Usage:&c
  5. Dot: &8●&f
  6. Permission: skript.op
  7.  
  8. on script load:
  9. delete {ScenarioList::*}
  10. delete {Scen::*}
  11.  
  12. command /scenarios [<text>] [<text>] [<text>]:
  13. aliases: /scenario, /scen
  14. trigger:
  15. if arg-1 is not set:
  16. if size of {scen::*} is 0:
  17. send "{@UHC} There is no enabled scenario" to sender
  18. else:
  19. send "{@UHC} Enabled Scenarios &8(&e%size of {Scen::*}%&8):" to sender
  20. loop {ScenarioList::*}:
  21. if {Scen::%loop-value%} is true:
  22. send " §8» §e%loop-value% §7- §f%{ScenarioDesc::%loop-value%}%" to sender
  23. else if arg-1 is set:
  24. if arg-1 is "help":
  25. send "{@UHC} Scenario management help:" to sender
  26. send " {@Dot} &e/scen &8- &fList every enabled scenarios" to sender
  27. send " {@Dot} &6/scen help &8- &fBring this help" to sender
  28. send " {@Dot} &e/scen list &8- &fList every scenarios on the server" to sender
  29. send " {@Dot} &6/scen info <scenario>&8- &fGive you information about the given scenario" to sender
  30. if sender has permission "{@Permission}":
  31. send " {@Dot} &e/scen enable <scenario> &8- &fEnable a scenario" to sender
  32. send " {@Dot} &6/scen disable <scenario> &8- &fDisable an enabled scenario" to sender
  33. send " {@Dot} &e/scen toggle <scenario> &8- &fToggle a scenario" to sender
  34. send " {@Dot} &6/scen random &8- &fGive you a random scenario" to sender
  35. send " {@Dot} &e/scen give <scenario> <player/*> &8- &fGive a scenario's items" to sender
  36. else if arg-1 is "enable":
  37. if sender does not have permission "{@Permission}":
  38. send "&cYou don't have enough permission to run this command" to sender
  39. else if sender has permission "{@Permission}":
  40. if arg-2 is not set:
  41. send "{@Usage} /scen enable <scenario>" to sender
  42. else if arg-2 is set:
  43. loop {ScenarioList::*}:
  44. if "%arg-2%" is "%loop-value%":
  45. if {Scen::%loop-value%} is true:
  46. send "&c%loop-value% is already enabled" to sender
  47. else:
  48. set {Scen::%loop-value%} to true
  49. send "{@Prefix} &e%loop-value% &7has been &aenabled" to sender
  50. else if arg-1 is "disable":
  51. if sender does not have permission "{@Permission}":
  52. send "&cYou don't have enough permission to run this command" to sender
  53. else if sender has permission "{@Permission}":
  54. if arg-2 is not set:
  55. send "{@Usage} /scen disable <scenario>" to sender
  56. else if arg-2 is set:
  57. loop {ScenarioList::*}:
  58. if "%arg-2%" is "%loop-value%":
  59. if {Scen::%loop-value%} is true:
  60. delete {Scen::%loop-value%}
  61. send "{@Prefix} &e%loop-value% &7has been &cdisabled" to sender
  62. else:
  63. send "&c%loop-value% is not enabled" to sender
  64. else if arg-1 is "toggle":
  65. if sender does not have permission "{@Permission}":
  66. send "&cYou don't have enough permission to run this command" to sender
  67. else if sender has permission "{@Permission}":
  68. if arg-2 is not set:
  69. send "{@Usage} /scen enable <scenario>" to sender
  70. else if arg-2 is set:
  71. loop {ScenarioList::*}:
  72. if "%arg-2%" is "%loop-value%":
  73. if {Scen::%loop-value%} is true:
  74. delete {Scen::%loop-value%}
  75. send "{@Prefix} &e%loop-value% &7has been &cdisabled" to sender
  76. else:
  77. set {Scen::%loop-value%} to true
  78. send "{@Prefix} &e%loop-value% &7has been &aenabled" to sender
  79. else if arg-1 is "give":
  80. if sender does not have permission "{@Permission}":
  81. send "&cYou don't have enough permission to run this command" to sender
  82. else if sender has permission "{@Permission}":
  83. if arg-2 is not set:
  84. send "{@Usage} /scen give <scenario> <*/player>" to sender
  85. else if arg-2 is set:
  86. if {ScenGive::%arg-2%::*} is not set:
  87. send "&cno give"
  88. else if {ScenGive::%arg-2%::*} is set:
  89. if arg-3 is not set:
  90. send "{@Usage} /scen give <scenario> <*/player>" to sender
  91. else if arg-3 is set:
  92. if arg-3 is "*":
  93. loop {ScenGive::%arg-2%::*}:
  94. loop split "%{ScenGive::%arg-2%::*}%" at "+":
  95. give ("%loop-value-2%" parsed as item) to all players
  96. broadcast "{@UHC} Starter items given to everyone"
  97. else:
  98. set {_player} to arg-3 parsed as player
  99. if {_player} does not exist:
  100. send "{@Prefix} &c'%arg-3%' is not online" to sender
  101. else:
  102. loop {ScenGive::%arg-2%::*}:
  103. loop split "%{ScenGive::%arg-2%::*}%" at "+":
  104. give ("%loop-value-2%" parsed as item) to {_player}
  105. send "{@UHC} Starter items given" to {_player}
  106. send "{@UHC} Starter items given to &8'&a%{_player}%&8'" to sender
  107. else if arg-1 is "random":
  108. if sender does not have permission "{@Permission}":
  109. send "&cYou don't have enough permission to run this command" to sender
  110. else if sender has permission "{@Permission}":
  111. send "{@Prefix} Here is a random scenario:" to sender
  112. send "§8» §6%random element out of {ScenarioList::*}%"
  113. else if arg-1 is "reset":
  114. if sender does not have permission "{@Permission}":
  115. send "&cYou don't have enough permission to run this command" to sender
  116. else if sender has permission "{@Permission}":
  117. loop {ScenarioList::*}:
  118. delete {Scen::%loop-value%}
  119. send "{@Prefix} Every scenarios have been reset" to sender
  120. else if arg-1 is "list":
  121. loop {ScenarioList::*}:
  122. if {Scen::%loop-value%} is true:
  123. add "&a%loop-value%" to {_scenlist::*}
  124. else:
  125. add "&c%loop-value%" to {_scenlist::*}
  126. if size of {_scenlist::*} is 0:
  127. send "&cThere is no scenario on the server" to sender
  128. else:
  129. send "{@UHC} Scenarios &8(&e%size of {_scenlist::*}%&8):" to sender
  130. send " &8»&7 %alphabetical order of {_scenlist::*}%" to sender
  131. else if arg-1 is "info":
  132. if arg-2 is not set:
  133. send "{@Usage} /scen info <scenario>" to sender
  134. else if arg-2 is set:
  135. loop {ScenarioList::*}:
  136. if "%arg-2%" is "%loop-value%":
  137. send "{@Prefix} &e%loop-value% &8- &f%{ScenarioDesc::%loop-value%}%" to sender
  138.  
  139. on tab completer for "/scenarios":
  140. if argument at 3 is set:
  141. if argument at 1 is "give":
  142. if sender has permission "{@Permission}":
  143. add "*" to completions
  144. loop players:
  145. set {_t} to convert "%loop-value%" to lowercase
  146. add "%{_t}%" to completions
  147. else if argument at 2 is set:
  148. if sender has permission "{@Permission}":
  149. loop {ScenarioList::*}:
  150. set {_t} to convert "%loop-value%" to lowercase
  151. add "%{_t}%" to completions
  152. else:
  153. if sender has permission "{@Permission}":
  154. add "enable" to completions
  155. add "disable" to completions
  156. add "toggle" to completions
  157. add "list" to completions
  158. add "info" to completions
  159. add "give" to completions
  160. add "random" to completions
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement