Zeldaboy111

Skript #184 - Lobby af!

Jun 10th, 2019
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.09 KB | None | 0 0
  1. #Als je de coding in je video gebruikt, zet dan het volgende in je beschrijving (kopieer en plak):
  2. # Gemaakt door: Zeldaboy111/Tom Pampiermole
  3. # YouTube kanaal van de maker: https://www.youtube.com/channel/UClmeX0PpxrQd9q-4kRaBefg?view_as=subscriber
  4.  
  5. options:
  6. skript_name: Lobby
  7. version: 1.0
  8. prefix: &f[&3Lobby&f] &8>>
  9. settings: Files/{@skript_name}/Settings.yml
  10.  
  11.  
  12. on enable:
  13. send "%nl%%nl%{@prefix} &7Het Skript &8{@skript_name} &7is aangezet" to console
  14. send "{@prefix} &8Bestanden &7aan het maken...%nl%%nl%" to console
  15.  
  16. #Direction
  17. if dir "Files/{@skript_name}" doesn't exist:
  18. create dir "Files/{@skript_name}"
  19.  
  20. if dir "Files/{@skript_name}/LobbyList" doesn't exist:
  21. create dir "Files/{@skript_name}/LobbyList"
  22.  
  23. if file "Files/{@skript_name}/Settings.yml" doesn't exist:
  24. create file "Files/{@skript_name}/Settings.yml"
  25.  
  26. set yml value "GiveLobbyCompassOnJoin.enabled" of file "Files/{@skript_name}/Settings.yml" to true
  27. set yml value "GiveLobbyCompassOnWorldJoin.enabled" of file "Files/{@skript_name}/Settings.yml" to true
  28. add "world" to yml list "GiveLobbyCompassOnWorldJoin.worlds" of file "Files/{@skript_name}/Settings.yml"
  29. set yml value "ResetJoinSettings.enabled" of file "Files/{@skript_name}/Settings.yml" to true
  30. save yml "Files/{@skript_name}/Settings.yml"
  31.  
  32.  
  33.  
  34. #Bestanden
  35. setup("config")
  36.  
  37.  
  38.  
  39. wait 3 seconds
  40. send "%nl%%nl%{@prefix} &7Succesvol alle &8bestanden &7gemaakt%nl%%nl%" to console
  41.  
  42.  
  43. on disable:
  44. send "%nl%%nl%{@prefix} &4Het Skript &c{@skript_name} &4is uitgezet%nl%%nl%" to console
  45.  
  46.  
  47. on join:
  48. execute console command "/lobby %player%"
  49. wait 2 tick
  50. if yml value "GiveLobbyCompassOnJoin.enabled" of file "Files/Lobby/Settings.yml" is true:
  51. if yml value "GiveLobbyCompassOnWorldJoin.enabled" of file "Files/Lobby/Settings.yml" is true:
  52.  
  53. if yml list "GiveLobbyCompassOnWorldJoin.worlds" of file "Files/Lobby/Settings.yml" is empty:
  54. clear player's inventory
  55. set slot 4 of player to a clock named "&6LobbyCompass" with lore "&5&kl"
  56.  
  57. else if yml list "GiveLobbyCompassOnWorldJoin.worlds" of file "Files/Lobby/Settings.yml" contains "%world of player%":
  58. clear player's inventory
  59. set slot 4 of player to a clock named "&6LobbyCompass" with lore "&5&kl"
  60.  
  61.  
  62.  
  63.  
  64. command /lobbyconfig [<text>] [<text>] [<text>] [<text>]:
  65. trigger:
  66. if player has permission "lobby.*":
  67. if arg 1 is "set":
  68. if arg 2 is set:
  69. if arg 3 is "spawn" OR "lobby":
  70. if arg 2 is "lobby":
  71.  
  72. setValue("Lobby", "set", player)
  73.  
  74. send "{@prefix} &7Succesvol de &8%arg 2 to lower case% &7gezet op:"
  75. send "&8World: &7%world of player%"
  76. send "&8Yaw: &7%yaw of player%"
  77. send "&8Pitch: &7%pitch of player%"
  78. send "&8X: &7%x-coordinate of location of player%"
  79. send "&8Y: &7%y-coordinate of location of player%"
  80. send "&8Z: &7%z-coordinate of location of player%"
  81. stop
  82.  
  83. else:
  84. set yaml value "%arg 2 to lower case%.Location.World" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to "%world of player%"
  85. set yaml value "%arg 2 to lower case%.Location.Yaw" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to yaw of player
  86. set yaml value "%arg 2 to lower case%.Location.Pitch" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to pitch of player
  87. set yaml value "%arg 2 to lower case%.Location.X" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to x-coordinate of player
  88. set yaml value "%arg 2 to lower case%.Location.Y" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to y-coordinate of player
  89. set yaml value "%arg 2 to lower case%.Location.Z" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to z-coordinate of player
  90.  
  91. if yaml value "%arg 2 to lower case%.LobbyCompass.enabled" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" is not set:
  92. set yaml value "%arg 2 to lower case%.LobbyCompass.enabled" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to true
  93. set yaml value "%arg 2 to lower case%.LobbyCompass.item" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to "dirt"
  94. set yaml value "%arg 2 to lower case%.LobbyCompass.itemName" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to "%arg 2%"
  95. set yaml value "%arg 2 to lower case%.LobbyCompass.itemLore" of file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" to "%arg 2%"
  96.  
  97. save yaml "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml"
  98.  
  99. send "{@prefix} &7Succesvol &8%arg 2 to lower case% &7gezet op:"
  100. send "&8World: &7%world of player%"
  101. send "&8Yaw: &7%yaw of player%"
  102. send "&8Pitch: &7%pitch of player%"
  103. send "&8X: &7%x-coordinate of location of player%"
  104. send "&8Y: &7%y-coordinate of location of player%"
  105. send "&8Z: &7%z-coordinate of location of player%"
  106. stop
  107.  
  108. else if arg 3 is "name":
  109. if arg 4 is set:
  110. if arg 2 is "lobby" OR "spawn":
  111. send "{@prefix} &4Je kan de naam van de &c%arg 2 to lower case% &4niet aanpassen."
  112. stop
  113.  
  114. else:
  115.  
  116. if file "Files/{@skript_name}/LobbyList/%arg 4 to lower case%.yml" exists:
  117. send "{@prefix} &4De naam &c%arg 4 to lower case% &4is al in gebruik."
  118. stop
  119.  
  120. send "{@prefix} &7Bestand &8%arg 2 to lower case% &7van naam veranderen naar &8%arg 4 to lower case%&7..."
  121.  
  122. renameLobby("%arg 2 to lower case%", "%arg 4 to lower case%")
  123.  
  124. wait 1 second
  125.  
  126. send "{@prefix} &7Bestand &8%arg 2 to lower case% &7is succesvol van naam gewijzigd naar &8%arg 4 to lower case%&7."
  127. stop
  128.  
  129.  
  130.  
  131. else:
  132. send "{@prefix} &4Je moet nog een &cnaam &4opgeven."
  133.  
  134. else:
  135. send "{@prefix} &4Je moet &cspawn &4of &cname &4opgeven."
  136.  
  137. else:
  138. send "{@prefix} &4Je moet nog &clobby &4of een &cnaam voor je gamemode &4opgeven en &cwat je wilt doen&4."
  139. send "{@prefix} &4Voor een lijstje met evenementen doe: &c/lobbyconfig eventlist&4."
  140.  
  141.  
  142. else if arg 1 is "delete":
  143. if arg 2 is set:
  144. if arg 2 is "lobby" OR "spawn":
  145. setup("config")
  146.  
  147. send "{@prefix} &7Succesvol de &8%arg 2 to lower case% &7verwijderd."
  148. stop
  149.  
  150.  
  151. else:
  152. if file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml" exists:
  153.  
  154. delete file "Files/{@skript_name}/LobbyList/%arg 2 to lower case%.yml"
  155. send "{@prefix} &7Succesvol het bestand &8%arg 2 to lower case%.yml &7verwijderd."
  156. stop
  157.  
  158. else:
  159. send "{@prefix} &4De lobby &c%arg 2 to lower case% &4bestaat niet."
  160. stop
  161.  
  162. else:
  163. send "{@prefix} &4Je moet nog een &clobby naam &4opgeven."
  164. stop
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173. command /lobby [<text>] [<text>]:
  174. trigger:
  175. if executor is console:
  176. if arg 1 is set:
  177. if arg 2 is set:
  178. teleportLobby((arg-1 parsed as a player), "%arg 2 to lower case%")
  179. send "{@prefix} &7Succesvol de speler &8%arg 1% &7naar de lobby gestuurd." to console
  180.  
  181. else:
  182. teleportLobby((arg-1 parsed as a player), "Lobby")
  183.  
  184.  
  185. else:
  186. if arg 1 is set:
  187. if player has permission "Lobby.*":
  188. if arg 2 is set:
  189. teleportLobby((arg-1 parsed as a player), arg 2)
  190.  
  191. else:
  192. teleportLobby((arg-1 parsed as a player), "Lobby")
  193.  
  194. else:
  195. teleportLobby(player, "Lobby")
  196. else:
  197. teleportLobby(player, "Lobby")
  198.  
  199.  
  200. command /lobbycompass [<text>] [<text>] [<text>] [<text>] [<text>]:
  201. aliases: /lc
  202. trigger:
  203. if player has permission "Lobby.*":
  204. if arg 1 is "config":
  205. if arg 2 is "edit":
  206. if arg 3 is set:
  207. if file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml" exists:
  208. if arg 4 is "setname":
  209. if arg 5 is set:
  210. set yaml value "%arg 3 to lower case%.LobbyCompass.itemName" of file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml" to arg 5
  211. save yaml "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml"
  212.  
  213. send "{@prefix} &7Succesvol de naam van &8%arg 3 to lower case% &7veranderd naar: &8%arg 5%"
  214. stop
  215.  
  216. else:
  217. send "{@prefix} &4Je moet nog een &cnaam voor het item &4opgeven."
  218. stop
  219.  
  220. if arg 4 is "deletename":
  221. if yaml value "%arg 3 to lower case%.LobbyCompass.itemName" of file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml" is set:
  222. delete yaml value "%arg 3 to lower case%.LobbyCompass.itemName" of file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml"
  223. save yaml "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml"
  224. send "{@prefix} &7Succesvol de naam van het lobby item &8%arg 3 to lower case% &7verwijderd."
  225. else:
  226. send "{@prefix} &4De naam van het lobby item &c%arg 3% &4is al verwijderd."
  227.  
  228.  
  229. if arg 4 is "setitem":
  230. if arg 5 is set:
  231. if ("%arg 5 to lower case%" parsed as an item) is an item:
  232. set yml value "%arg 3 to lower case%.LobbyCompass.item" of file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml" to arg 5 to lower case
  233. save yaml "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml"
  234. send "{@prefix} &7Succesvol het LobbyCompass item van de lobby &8%arg 3 to lower case% &7veranderd naar &8%arg 5 to lower case%&7."
  235.  
  236. else:
  237. send "{@prefix} &4Het item &c%arg 5 to lower case% &4is geen item."
  238.  
  239. else:
  240. send "{@prefix} &4Je moet nog een &citem &4opgeven."
  241.  
  242.  
  243.  
  244. if arg 4 is "setlore":
  245. if arg 5 is set:
  246. set yml value "%arg 3 to lower case%.LobbyCompass.itemLore" of file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml" to arg 5 to lower case
  247. save yml "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml"
  248. send "{@prefix} &7Succesvol de LobbyCompass lore van de lobby &8%arg 3 to lower case% &7veranderd naar &8%arg 5%&7."
  249.  
  250. else:
  251. send "{@prefix} &4Je moet nog een &clore &4opgeven."
  252.  
  253.  
  254. if arg 4 is "deletelore":
  255. if yml value "%arg 3 to lower case%.LobbyCompass.itemLore" of file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml" is set:
  256. delete yml value "%arg 3 to lower case%.LobbyCompass.itemLore" of file "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml"
  257. save yml "Files/{@skript_name}/LobbyList/%arg 3 to lower case%.yml"
  258. send "{@prefix} &7Succesvol de lore van het lobby item &8%arg 3 to lower case% &7verwijderd."
  259. else:
  260. send "{@prefix} &4De lore van het item &c%arg 3 to lower case% &4is al verwijderd"
  261.  
  262.  
  263.  
  264. if arg 4 is "disable":
  265. if yml value "%arg 3 to lower case%.LobbyCompass.enabled" of file "Files/Lobby/LobbyList/%arg 3 to lower case%.yml" is false:
  266. send "{@prefix} &4Het LobbyCompass van de lobby &c%arg 3 to lower case% &4staat al uit."
  267. else:
  268. set yml value "%arg 3 to lower case%.LobbyCompass.enabled" of file "Files/Lobby/LobbyList/%arg 3 to lower case%.yml" to false
  269. send "{@prefix} &7Het LobbyCompass van de lobby &8%arg 3 to lower case% &7is uitgezet."
  270.  
  271.  
  272. if arg 4 is "enable":
  273. if yml value "%arg 3 to lower case%.LobbyCompass.enabled" of file "Files/Lobby/LobbyList/%arg 3 to lower case%.yml" is true:
  274. send "{@prefix} &4Het LobbyCompass van de lobby &c%arg 3% &4staat al aan."
  275. else:
  276. set yml value "%arg 3 to lower case%.LobbyCompass.enabled" of file "Files/Lobby/LobbyList/%arg 3 to lower case%.yml" to true
  277. send "{@prefix} &7Het LobbyCompass van de lobby &8%arg 3 to lower case% &7is aangezet."
  278.  
  279.  
  280. else:
  281. send "{@prefix} &4Het bestand &c%arg 3 to lower case%.yml &4bestaat niet."
  282. stop
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289. function teleportLobby(p: player, tVar: string):
  290. if {_tVar} is "Lobby":
  291. set {_world} to yaml value "Lobby.Location.World" of file "Files/{@skript_name}/Config.yml"
  292.  
  293. if {_world} is not "None":
  294. set {_yaw} to yaml value "Lobby.Location.Yaw" of file "Files/{@skript_name}/Config.yml"
  295. set {_pitch} to yaml value "Lobby.Location.Pitch" of file "Files/{@skript_name}/Config.yml"
  296. set {_x} to yaml value "Lobby.Location.X" of file "Files/{@skript_name}/Config.yml"
  297. set {_y} to yaml value "Lobby.Location.Y" of file "Files/{@skript_name}/Config.yml"
  298. set {_z} to yaml value "Lobby.Location.Z" of file "Files/{@skript_name}/Config.yml"
  299.  
  300. set {_loc} to location at ({_x}, {_y}, {_z}) in world "%{_world}%"
  301. set {_loc}'s pitch to {_pitch}
  302. set {_loc}'s yaw to {_yaw}
  303.  
  304. teleport {_p} to {_loc}
  305. stop
  306. else:
  307. send "{@prefix} &4De lobby is &cnog niet gezet&4, doe &c/lobby set &c&llobby &cspawn&4." to {_p}
  308. stop
  309.  
  310.  
  311.  
  312. on click:
  313. if player is holding a clock named "&6LobbyCompass" with lore "&5&kl":
  314. set {_files} to amount of files in dir "Files/{@skript_name}/LobbyList"
  315. set {_filesList::*} to files in dir "Files/{@skript_name}/LobbyList"
  316. set {_rows} to ({_files} / 9.1)
  317.  
  318. set {_rows} to the first 1 characters of {_rows}
  319. add 1 to {_rows}
  320.  
  321. open chest with {_rows} rows named "&6LobbyCompass" to player
  322.  
  323. set {_count} to 0
  324. clear {_nameList::*}
  325.  
  326. Loop directory "Files/{@skript_name}/LobbyList"'s files:
  327. set {_value::*} to loop-value split at "\"
  328. loop {_value::*}:
  329. if loop-value-2 contains ".yml":
  330. set {_n} to loop-value-2 to lower case
  331. replace all ".yml" in {_n} with ""
  332. add {_n} to {_nameList::*}
  333.  
  334. loop {_nameList::*}:
  335. if yml value "%loop-value%.LobbyCompass.enabled" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml" is true:
  336. set {_item} to yml value "%loop-value%.LobbyCompass.item" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  337. set {_name} to yml value "%loop-value%.LobbyCompass.itemName" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  338. set {_lore} to yml value "%loop-value%.LobbyCompass.itemLore" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  339.  
  340. make gui slot {_count} of player with ({_item} parsed as an item) named (colored {_name}) with lore (colored {_lore})
  341. add 1 to {_count}
  342.  
  343.  
  344.  
  345.  
  346. #loop {_filesList::*}:
  347. # set {_value} to loop-value
  348. # remove "Files/{@skript_name}/LobbyList" from {_value}
  349. # send "%{_value}%"
  350. # if yml value "%{_value}%.LobbyCompass.enabled" of file "Files/{@skript_name}/LobbyList/%{_value}%.yml" is enabled:
  351. # send "Enabled"
  352.  
  353. on inventory click:
  354. name of clicked inventory is "&6LobbyCompass":
  355. #set {_files} to amount of files in dir "Files/{@skript_name}/LobbyList"
  356. set {_filesList::*} to files in dir "Files/{@skript_name}/LobbyList"
  357.  
  358. set {_slot} to clicked slot
  359.  
  360. set {_count} to 0
  361. clear {_nameList::*}
  362.  
  363. Loop directory "Files/{@skript_name}/LobbyList"'s files:
  364. set {_value::*} to loop-value split at "\"
  365. loop {_value::*}:
  366. if loop-value-2 contains ".yml":
  367. set {_n} to loop-value-2 to lower case
  368. replace all ".yml" in {_n} with ""
  369. add {_n} to {_nameList::*}
  370.  
  371. loop {_nameList::*}:
  372. if yml value "%loop-value%.LobbyCompass.enabled" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml" is true:
  373.  
  374. if {_count} = {_slot}:
  375. set {_world} to yaml value "Lobby.Location.World" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  376.  
  377. if {_world} is "None":
  378. send "{@prefix} &4De spawn van &c%loop-value% &4is nog niet gezet!"
  379. stop
  380.  
  381.  
  382. set {_yaw} to yaml value "%loop-value%.Location.Yaw" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  383. set {_pitch} to yaml value "%loop-value%.Location.Pitch" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  384. set {_x} to yaml value "%loop-value%.Location.X" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  385. set {_y} to yaml value "%loop-value%.Location.Y" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  386. set {_z} to yaml value "%loop-value%.Location.Z" of file "Files/{@skript_name}/LobbyList/%loop-value%.yml"
  387.  
  388.  
  389. set {_loc} to location at ({_x}, {_y}, {_z}) in world "%{_world}%"
  390. set {_loc}'s pitch to {_pitch}
  391. set {_loc}'s yaw to {_yaw}
  392.  
  393. teleport player to {_loc}
  394. stop loop
  395.  
  396. add 1 to {_count}
Advertisement
Add Comment
Please, Sign In to add comment