Zeldaboy111

Skript #256 - Lobby

Oct 28th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.80 KB | None | 0 0
  1. options:
  2. logo: &6Server &7▬ &2
  3. lobby: &cLobby &7► &2
  4. lcompass: &9C&3ompass
  5. cGuiName: &9M&3inigames
  6.  
  7.  
  8. #alt + 15 = ☼
  9. #alt + 26 = →
  10. #alt + 16 = ►
  11. #alt + 22 = ▬
  12.  
  13. #------------------- Functions -------------------
  14. function openCompass(p: Player):
  15. if {lobby.compassRows} is not set:
  16. set {lobby.compassRows} to 1
  17.  
  18. open chest with {lobby.compassRows} rows named "{@cGuiName}" to {_p}
  19.  
  20. loop {lobby.minigames.list::*}:
  21. if {lobby.minigames.%loop-value%.slot} starts with "-":
  22. stop
  23. else:
  24. if ({lobby.minigames.%loop-value%.slot} parsed as a number) is set:
  25.  
  26. if {lobby.minigames.%loop-value%.item} is "&cGeen":
  27. set {_item} to paper
  28.  
  29. else if ({lobby.minigames.%loop-value%.item} parsed as an item) is not set:
  30. set {_item} to paper
  31.  
  32. else:
  33. set {_item} to {lobby.minigames.%loop-value%.item}
  34.  
  35.  
  36. set {_slot} to ({lobby.minigames.%loop-value%.slot} parsed as a number)
  37.  
  38. if {lobby.minigames.%loop-value%.name} is set:
  39. if {lobby.minigames.%loop-value%.name} is not "&cGeen":
  40. set {_name} to {lobby.minigames.%loop-value%.name}
  41. replace "&" in {_name} with "§"
  42. if {lobby.minigames.%loop-value%.lore} is set:
  43. if {lobby.minigames.%loop-value%.lore} is not "&cGeen":
  44. set {_lore} to {lobby.minigames.%loop-value%.lore}
  45. replace "&" in {_lore} with "§"
  46. format slot {_slot} of {_p} with "%{lobby.minigames.%loop-value%.item}%" parsed as an item named "%{_name}%" with lore "%{_lore}%" to be unstealable
  47. else:
  48. format slot {_slot} of {_p} with "%{lobby.minigames.%loop-value%.item}%" parsed as an item named "%{_name}%" to be unstealable
  49. else:
  50. format slot {_slot} of {_p} with "%{lobby.minigames.%loop-value%.item}%" parsed as an item named "%{_name}%" to be unstealable
  51. else:
  52. format slot {_slot} of {_p} with "%{lobby.minigames.%loop-value%.item}%" parsed as an item to be unstealable
  53. else:
  54. format slot {_slot} of {_p} with "%{lobby.minigames.%loop-value%.item}%" parsed as an item to be unstealable
  55.  
  56.  
  57.  
  58. #------------------- Periotic Events -------------------
  59.  
  60.  
  61. #------------------- Events -------------------
  62. on join:
  63. if {lobby.location} is set:
  64. teleport player to {lobby.location}
  65. set join message to ""
  66. wait 10 ticks
  67.  
  68. clear player's inventory
  69. send "{@lobby} &fDe speler %player% is gejoined!" to all players in world of player
  70. set slot 4 of player to a compass named "{@lcompass}"
  71.  
  72.  
  73. on inventory click:
  74. if player is in world of {lobby.location}:
  75. if clicked item is a compass named "{@lcompass}":
  76. cancel event
  77. close player's inventory
  78. openCompass(player)
  79.  
  80. on click:
  81. if player is in world of {lobby.location}:
  82. if player's held item is a compass named "{@lcompass}":
  83. cancel event
  84. openCompass(player)
  85.  
  86.  
  87. on command:
  88. command is "plugins" or "pl":
  89. cancel event
  90.  
  91. if player is not op:
  92. stop
  93.  
  94. else:
  95. set {_list::*} to list of plugins
  96. set {_count} to 0
  97. loop {_list::*}:
  98. add 1 to {_count}
  99. send "{@logo} Plugins lijst:%nl%&f(&a%{_count}%&f) &2%list of plugins%"
  100.  
  101. else:
  102. set {cmd} to "%command to lower case%"
  103.  
  104.  
  105.  
  106. #------------------- Commands -------------------
  107. command /lobby [<text>] [<text>]:
  108. aliases: /hub
  109. trigger:
  110. if player has permission "lobby.*":
  111. if arg-1 is set:
  112. if arg-1 is "help":
  113. send "&2----------[ &a%{cmd}% &2]----------"
  114. send "&e&o/%{cmd}% help &d→ &fKrijg help pagina"
  115. send "&e&o/%{cmd}% set &d→ &fZet de lobby"
  116. send "&2----------[ &a%{cmd}% &2]----------"
  117.  
  118. else if arg-1 is "set":
  119. send "{@logo} &2Succesvol de &a%{cmd}% &2gezet naar je locatie!"
  120. set {lobby.location} to location of player
  121.  
  122. else:
  123. if {lobby.location} is set:
  124. if world of player is not "%world of {lobby.location}%":
  125. teleport player to {lobby.location}
  126. send "{@lobby} &fDe speler %player% is naar de lobby gegaan!" to all players in world of player
  127. clear player's inventory
  128. set slot 4 of player to a compass named "{@lcompass}"
  129.  
  130. else:
  131. teleport player to {lobby.location}
  132.  
  133.  
  134. else:
  135. send "{@lobby} &cDe %{cmd}% is nog niet gezet!"
  136.  
  137.  
  138. else if {lobby.location} is set:
  139. if world of player is not "%world of {lobby.location}%":
  140. teleport player to {lobby.location}
  141. send "{@lobby} &fDe speler %player% is naar de lobby gegaan!" to all players in world of player
  142. clear player's inventory
  143. set slot 4 of player to a compass named "{@lcompass}"
  144.  
  145. else:
  146. teleport player to {lobby.location}
  147.  
  148. else:
  149. send "{@lobby} &cDe %{cmd}% is nog niet gezet!"
  150.  
  151.  
  152. command /lobbycompass [<text>] [<text>] [<text>]:
  153. aliases: /lcomp, /lcompass
  154. trigger:
  155. if player has permission "lobbycompass.*":
  156. if arg 1 is not set:
  157. send "{@lobby} &4Doe &c&o/%{cmd}% help &4voor meer info."
  158.  
  159. else if arg 1 is set:
  160. if arg 1 is "help":
  161. send "&2----------[ &a%{cmd}% &2]----------"
  162. send "&e&o/%{cmd}% help &d→ &fKrijg help pagina"
  163. send "&e&o/%{cmd}% create <minigame> &d→ &fCreate een minigame"
  164. send "&e&o/%{cmd}% remove/delete <minigame> &d→ &fDelete een minigame"
  165. send "&e&o/%{cmd}% setspawn <minigame> &d→ &fZet een minigame spawn"
  166. send "&e&o/%{cmd}% slot <minigame> <nummer> &d→ &fZet het gui slot van een minigame"
  167.  
  168. send "&e&o/%{cmd}% setname <minigame> <naam> &d→ &fZet een naam"
  169. send "&e&o/%{cmd}% deletename <minigame> &d→ &fVerwijder een minigame naam"
  170. send "&e&o/%{cmd}% setlore <minigame> <lore> &d→ &fZet een lore"
  171. send "&e&o/%{cmd}% deletelore <minigame> <minigame> &d→ &fVerwijder een minigame lore"
  172. send "&e&o/%{cmd}% setitem <minigame> <item> &d→ &fZet het icoon van de minigame"
  173. send "&e&o/%{cmd}% list &d→ &fKrijg een lijst van alle minigames"
  174. send "&e&o/%{cmd}% setrows <nummer> &d→ &fZet het aantal rijen in het compass gui"
  175. send "&e&o/%{cmd}% gui <minigame> &d→ &fOpen het config-gui"
  176. send "&2----------[ &a%{cmd}% &2]----------"
  177.  
  178. else if arg 1 is "create":
  179. if arg 2 is set:
  180. if {lobby.minigames.%arg 2%} is not set:
  181. set {lobby.minigames.%arg 2%} to true
  182. set {lobby.minigames.%arg 2%.name} to "&cGeen"
  183. set {lobby.minigames.%arg 2%.lore} to "&cGeen"
  184. set {lobby.minigames.%arg 2%.item} to "&cGeen"
  185. set {lobby.minigames.%arg 2%.slot} to "&cGeen"
  186. set {lobby.minigames.%arg 2%.spawn} to "&cGeen"
  187. add arg 2 to {lobby.minigames.list::*}
  188.  
  189. send "{@lobby} &2Succesvol de minigame &a%arg 2% &2gemaakt."
  190.  
  191. else:
  192. send "{@lobby} &4De minigame &c%arg 2% &4bestaat al."
  193. else:
  194. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1% <minigame>&4."
  195.  
  196. else if arg 1 is "delete" or "remove":
  197. if arg 2 is set:
  198. if {lobby.minigames.%arg 2%} is set:
  199. delete {lobby.minigames.%arg 2%}
  200. delete {lobby.minigames.%arg 2%.name}
  201. delete {lobby.minigames.%arg 2%.lore}
  202. delete {lobby.minigames.%arg 2%.item}
  203. delete {lobby.minigames.%arg 2%.slot}
  204. delete {lobby.minigames.%arg 2%.spawn}
  205. remove arg 2 from {lobby.minigames.list::*}
  206.  
  207. send "{@lobby} &2Succesvol de minigame &a%arg 2% &2verwijderd."
  208.  
  209. else:
  210. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet."
  211. else:
  212. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <minigame>&4."
  213.  
  214.  
  215. else if arg 1 is "setspawn":
  216. if arg 2 is set:
  217. if {lobby.minigames.%arg 2%} is set:
  218. set {lobby.minigames.%arg 2%.spawn} to location of player
  219. send "{@lobby} &2Succesvol de spawn van de minigame%nl%&a%arg 2% &2gezet op &a%location of player%&2!"
  220.  
  221. else:
  222. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet!"
  223. else:
  224. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <minigame>&4."
  225.  
  226. else if arg 1 is "slot":
  227. if arg 2 is set:
  228. if {lobby.minigames.%arg 2%} is set:
  229. if arg 3 is set:
  230. if (arg 3 parsed as a number) is set:
  231. if {lobby.compassRows} is not set:
  232. set {lobby.compassRows} to 1
  233.  
  234. if {lobby.compassRows} < 1:
  235. set {lobby.compassRows} to 1
  236.  
  237.  
  238. if {lobby.compassRows}*9-1 < arg-3 parsed as a number:
  239. send "{@lobby} &4Het aantal &c%arg 3% &4is te groot omdat het maximaal aantal slots &c%{lobby.compassRows}*9+1% &4is!"
  240.  
  241. else:
  242. loop {lobby.minigames.list::*}:
  243. if {lobby.minigames.%loop-value%.slot} is arg 3:
  244. set {_set} to loop-value
  245. stop loop
  246.  
  247. if {_set} is set:
  248. send "{@lobby} &4Het slot &c%arg 3% &4is al in gebruik voor de minigame &c%{_set}%&4!"
  249. else:
  250. set {lobby.minigames.%arg 2%.slot} to arg 3
  251. send "{@lobby} &2Succesvol het slot van &a%arg 2% &2gezet naar &a%arg 3%&2!"
  252. else:
  253. send "{@lobby} &c%arg 3% &4is geen nummer!"
  254. else:
  255. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% %arg 2% <nummer>&4."
  256. else:
  257. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet!"
  258. else:
  259. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <minigame> <nummer>&4."
  260.  
  261.  
  262. else if arg 1 is "setname":
  263. if arg 2 is set:
  264. if {lobby.minigames.%arg 2%} is set:
  265. if arg 3 is set:
  266. set {lobby.minigames.%arg 2%.name} to arg 3
  267. send "{@lobby} &2Succesvol de naam van de minigame &a%arg 2% &2gezet naar &a%arg 3%&2!"
  268.  
  269. else:
  270. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% %arg 2% <naam>&4."
  271. else:
  272. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet!"
  273. else:
  274. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <naam>&4."
  275.  
  276. else if arg 1 is "delname" or "deletename":
  277. if arg 2 is set:
  278. delete {lobby.minigames.%arg 2%.name}
  279. send "{@lobby} &2Succesvol de naam van de minigame &a%arg 2% &2verwijderd!"
  280.  
  281. else:
  282. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <minigame>&4."
  283.  
  284. else if arg 1 is "setlore":
  285. if arg 2 is set:
  286. if {lobby.minigames.%arg 2%} is set:
  287. if arg 3 is set:
  288. set {lobby.minigames.%arg 2%.lore} to arg 3
  289. send "{@lobby} &2Succesvol de lore van de minigame &a%arg 2% &2gezet naar &a%arg 3%&2!"
  290.  
  291. else:
  292. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% %arg 2% <lore>&4."
  293. else:
  294. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet!"
  295. else:
  296. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <minigame> <lore>&4."
  297.  
  298. else if arg 1 is "dellore" or "deletelore":
  299. if arg 2 is set:
  300. if {lobby.minigames.%arg 2%} is set:
  301. delete {lobby.minigames.%arg 2%.lore}
  302. send "{@lobby} &2Succesvol de lore van de minigame &a%arg 2% &2verwijderd!"
  303.  
  304. else:
  305. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet!"
  306. else:
  307. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <naam>&4."
  308.  
  309. else if arg 1 is "setitem":
  310. if arg 2 is set:
  311. if {lobby.minigames.%arg 2%} is set:
  312. if arg 3 is set:
  313. if (arg 3 parsed as an item) is set:
  314. set {lobby.minigames.%arg 2%.item} to arg 3 parsed as an item
  315. send "{@lobby} &2Succesvol het item van de minigame &a%arg 2% &2gezet naar &a%arg 3%&2!"
  316.  
  317. else:
  318. send "{@lobby} &c%arg 3% &4is geen item!"
  319. else:
  320. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% %arg 2% <item>&4."
  321. else:
  322. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet!"
  323. else:
  324. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <minigame> <item>&4."
  325.  
  326.  
  327. else if arg 1 is "list":
  328. send "{@lobby} &2Dit is de lijst met alle minigames:%nl%&a%{lobby.minigames.list::*}%"
  329.  
  330.  
  331. else if arg 1 is "setrows":
  332. if arg 2 is set:
  333. if (arg 2 parsed as a number) is set:
  334. if (arg-2 parsed as a number) < 7:
  335. set {lobby.compassRows} to (arg-2 parsed as a number)
  336. send "{@lobby} &2Succesvol het aantal rijen gezet naar &a%arg 2%&2!"
  337.  
  338. else:
  339. send "{@lobby} &4Het maximaal aantal rijen is &c6&4!"
  340. else:
  341. send "{@lobby} &c%arg 2% &4is geen nummer!"
  342. else:
  343. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <nummer>&4."
  344.  
  345.  
  346. else if arg 1 is "gui":
  347. if arg 2 is set:
  348. if {lobby.minigames.%arg 2%} is set:
  349. open chest with 2 rows named "&7Config GUI" to player
  350.  
  351. set {_name} to {lobby.minigames.%loop-value%.name}
  352. replace "&" in {_name} with "§"
  353.  
  354. set {_lore} to {lobby.minigames.%loop-value%.lore}
  355. replace "&" in {_lore} with "§"
  356.  
  357.  
  358.  
  359. #Every slot runs a function to change name
  360. format slot 2 of player with a book named "&2Minigame: &a%arg 2%" to be unstealable
  361. format slot 3 of player with a name tag named "&2Naam: &f%{_name}%" to close
  362. format slot 4 of player with a paper named "&2Lore: &f%{_lore}%" to close
  363. format slot 5 of player with a item frame named "&2Item: &a%{lobby.minigames.%arg 2%.item}%" to close
  364. format slot 6 of player with a clock named "&2Slot: &a%{lobby.minigames.%arg 2%.slot}%" to close
  365.  
  366. format slot 12 of player with a paper named "&2Spawn: &a%{lobby.minigames.%arg 2%.spawn}%" to close
  367. format slot 13 of player with a barrier named "&cClose menu" to close
  368. format slot 14 of player with redstone named "&4Verwijderen" to close
  369.  
  370.  
  371. else:
  372. send "{@lobby} &4De minigame &c%arg 2% &4bestaat niet!"
  373. else:
  374. send "{@lobby} &4Command niet goed gebruikt! &c&o/%{cmd}% %arg 1 to lower case% <minigame>&4."
Add Comment
Please, Sign In to add comment