· 6 years ago · Mar 09, 2019, 12:18 PM
1on load:
2 set {mineplex.starttime} to now
3
4#(Old ugly acci text here)
5#
6#Mineplex Core Remake
7#The best and only Mineplex Copy
8#by Josh Roy (WheezyGold7931)
9#Enjoy!
10script options:
11 $ use permissions
12
13#! MCR Settings
14
15
16#! If you want to use MySQL features edit the details below
17script options:
18 $ db url jdbc:mysql://<HOST>:3306/<DATABASE>
19 $ db username <USERNAME>
20 $ db password <PASSWORD>
21
22
23#! This value can be set to the following:
24#! "file": Stores the playerdata into files (Default)
25#! "sql": Stores the playerdata into a sql database (Details must be setup above)
26options:
27 mode: file
28
29#! These are internal settings, it is not recomended that you mess with them as they WILL mess up the plugin!
30options:
31 MCRVER: 3.1
32 MCRHOTFIX: 0
33 configver: shamu
34 playerdata: 3
35
36#! json.sk code DO NOT MESS WITH THIS! !(Rezz ily)!
37options:
38 debug: false
39 codes: 0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f|k|l|m|n|o|r
40
41function mcrremoveColor(msg: text) :: text:
42 set {_m::*} to {_msg} split at ""
43
44 set {_color-codes} to "{@codes}"
45 set {_colors::*} to {_color-codes} split at "|"
46
47 set {_new} to ""
48
49 loop {_m::*}:
50 set {_char} to loop-value
51 set {_prev} to the last character of {_new}
52
53 if {_prev} is "&":
54
55 loop {_colors::*}:
56
57 if loop-value-2 is {_char}:
58 set {_skip} to true
59
60 if {_skip} is set:
61 delete {_skip}
62
63 else:
64 set {_new} to "%{_new}%%{_char}%"
65
66 return {_new}
67
68function mcrjsonColorize(msg: text, default-color: text = "&r") :: text:
69 set {_m::*} to {_msg} split at ""
70
71 set {_color-codes} to "{@codes}"
72 set {_colors::*} to {_color-codes} split at "|"
73
74 set {_color} to colored {_default-color}
75 set {_code} to the first character of {_color}
76
77 set {_new} to ""
78 set {_skip} to 0
79
80 loop amount of {_m::*} times:
81
82 if {_skip} is more than or equal to 1:
83 subtract 1 from {_skip}
84
85 else:
86 set {_char} to {_m::%loop-number%}
87 set {_next} to {_m::%loop-number + 1%}
88
89 if {@debug} is true:
90 broadcast "&a[Character Check] &r%loop-number%: &7%{_char}% &r&onext: &8%{_next}% &r[%{_color}%color&r]"
91
92 if {_char} is "&" or {_code}:
93
94 if {@debug} is true:
95 broadcast "&a[Color Check] &rFOUND: &o%{_char}%%{_next}% &7&m<--&7&o is it valid?"
96
97 loop {_colors::*}:
98
99 if loop-value-2 is {_next}:
100 set {_color} to "%{_color}%%{_code}%%{_next}%"
101
102 if {_next} is "r":
103 set {_color} to {_default-color}
104
105 set {_new} to "%{_new}%%{_color}%"
106 set {_skip} to 1
107
108 if {_skip} is less than or equal to 0:
109 set {_new} to "%{_new}%%{_char}%"
110
111 else if {_char} is " ":
112 set {_new} to "%{_new}% %{_color}%"
113
114 else:
115 set {_new} to "%{_new}%%{_char}%"
116
117 return {_new}
118
119function mcrjsonSanitize(msg: text) :: text:
120 if {@debug} is true:
121 broadcast "&a[Sanitize] &7&oSanitizing input..."
122
123 set {_m::*} to {_msg} split at ""
124
125 loop {_m::*}:
126
127 if loop-value is """":
128 set {_m::%loop-index%} to "\""" # """
129
130 else if loop-value is "\":
131 set {_m::%loop-index%} to "\\"
132
133 set {_new} to join {_m::*} with ""
134 return {_new}
135
136function mcrjsonFormat(msg: text, color: boolean = true) :: text:
137 set {_m::*} to {_msg} split at "||"
138
139 set {_current} to 1
140
141 loop {_m::*}:
142 if {_clusters::%{_current}%} is not set:
143 set {_clusters::%{_current}%} to ""
144
145 if {_clusters::%{_current}%::text} is not set:
146 set {_clusters::%{_current}%::text} to mcrjsonSanitize(loop-value)
147
148 else:
149 set {_tag} to the first 4 characters of loop-value
150 set {_value} to subtext of loop-value from characters 5 to the length of loop-value
151
152 if {_tag} is "ttp:":
153 set {_clusters::%{_current}%::tooltip} to mcrjsonSanitize({_value})
154
155 else if {_tag} is "cmd:":
156 set {_clusters::%{_current}%::command} to mcrjsonSanitize({_value})
157
158 else if {_tag} is "sgt:":
159 set {_clusters::%{_current}%::suggest} to mcrjsonSanitize({_value})
160
161 else if {_tag} is "url:":
162
163 if {_value} doesn't contain "http://" or "https://":
164 set {_value} to "http://%{_value}%"
165
166 set {_clusters::%{_current}%::url} to mcrjsonSanitize({_value})
167
168 else if {_tag} is "ins:":
169 set {_clusters::%{_current}%::insertion} to mcrjsonSanitize({_value})
170
171 else:
172 add 1 to {_current}
173 set {_clusters::%{_current}%::text} to mcrjsonSanitize(loop-value)
174 set {_clusters::%{_current}%} to ""
175
176 if {@debug} is true:
177 broadcast "&a[Tag Check] &3cluster:&b%{_current}% &8(&f&o%{_tag}%&8)"
178
179 loop {_clusters::*}:
180
181 if {@debug} is true:
182 broadcast "&a[Cluster Check] &7&oCluster ##%loop-index% exists."
183
184 set {_i} to loop-index
185
186 set {_text} to {_clusters::%{_i}%::text}
187
188 if {_color} is true:
189 set {_text} to mcrjsonColorize({_text})
190
191 if {_json} is not set:
192 set {_json} to "{""text"":""%{_text}%"""
193 else:
194 set {_json} to "%{_json}%,{""text"":""%{_text}%"""
195
196 if {_clusters::%{_i}%::tooltip} is set:
197
198 if {_color} is true:
199 set {_tooltip} to mcrjsonColorize({_clusters::%{_i}%::tooltip})
200
201 else:
202 set {_tooltip} to {_clusters::%{_i}%::tooltip}
203
204 set {_json} to "%{_json}%,""hoverEvent"":{""action"": ""show_text"",""value"": ""%{_tooltip}%""}"
205
206 if {_clusters::%{_i}%::insertion} is set:
207 set {_json} to "%{_json}%,""insertion"":""%{_clusters::%{_i}%::insertion}%"",""obfuscated"":false"
208
209 if {_clusters::%{_i}%::command} is set:
210 set {_clickable} to "%{_json}%,""clickEvent"":{""action"":""run_command"",""value"":""%{_clusters::%{_i}%::command}%""}"
211
212 if {_clusters::%{_i}%::suggest} is set:
213 set {_clickable} to "%{_json}%,""clickEvent"":{""action"": ""suggest_command"",""value"": ""%{_clusters::%{_i}%::suggest}%""}"
214
215 if {_clusters::%{_i}%::url} is set:
216 set {_clickable} to "%{_json}%,""clickEvent"":{""action"": ""open_url"",""value"": ""%{_clusters::%{_i}%::url}%""}"
217
218 if {_clickable} is set:
219 set {_json} to "%{_clickable}%}"
220 delete {_clickable}
221
222 else:
223 set {_json} to "%{_json}%}"
224
225 return "{""text"":"""", ""extra"":[%{_json}%]}"
226
227function mcrjson(to: text, msg: text, color: boolean = true):
228 set {_msg} to mcrjsonFormat({_msg}, {_color})
229 execute console command "/tellraw %{_to}% %{_msg}%"
230
231 if {@debug} is true:
232 set {_player} to {_to} parsed as offline player
233 if {_player} is online:
234 send uncolored {_msg} to {_player}
235
236function mcrjsonBroadcast(msg: text, color: boolean = true):
237 mcrjson("@a", {_msg}, {_color})
238
239#MCR Code
240#MCR Code
241#MCR Code
242#MCR Code
243#MCR Code
244#MCR Code
245#MCR Code
246
247on load: #You cannot trust people to enter the correct thing so lets double check for them :)
248 if "{@mode}" is "file":
249 set {mineplex.mode} to "file"
250 send "§9MCR> §eMCR has been set to store playerdata into files!" to the console
251 else if "{@mode}" is "sql":
252 set {mineplex.mode} to "sql"
253 send "§9MCR> §eMCR has been set to store playerdata into SQL!" to the console
254 send "§9MCR> §eThey better have setup the database correctly" to the console
255 else:
256 set {mineplex.mode} to "file"
257 send "§9MCR> §eMCR has been set to store playerdata into files!" to the console
258
259on load:
260 if {mineplex.mode} is "sql":
261 update "CREATE TABLE IF NOT EXISTS `accounts` ( `id` INT NULL DEFAULT NULL AUTO_INCREMENT , `name` VARCHAR(40) NOT NULL , `uuid` VARCHAR(100) NOT NULL , `rank` VARCHAR(20) NOT NULL DEFAULT 'All' , `level` INT(20) NOT NULL DEFAULT '0' , `gems` INT(20) NOT NULL DEFAULT '0' , `shards` INT(20) NOT NULL DEFAULT '0' , `banned` VARCHAR(20) NOT NULL DEFAULT 'no' , `muted` VARCHAR(20) NOT NULL DEFAULT 'no' , UNIQUE (`id`)) ENGINE = InnoDB;"
262 update "CREATE TABLE IF NOT EXISTS `newslist` ( `id` INT(11) NOT NULL AUTO_INCREMENT , `newsString` VARCHAR(256) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL , `newsPosition` VARCHAR(11) NULL DEFAULT NULL , UNIQUE (`id`)) ENGINE = InnoDB;"
263
264function parseRank(p: player , r: text) :: string:
265 set {_uuid} to uuid of {_p}
266 if {mineplex.mode} is "file":
267 set {_get} to value "rank" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
268 if {mineplex.mode} is "sql":
269 set {_get} to first element out of objects in column "rank" from result of query "SELECT rank FROM `accounts` WHERE uuid = '%uuid of {_p}%'"
270 if {_get} is "All":
271 set {mineplex.rank.%{_p}%} to ""
272 return "&fPlayer"
273 if {_get} is "Ultra":
274 set {mineplex.rank.%{_p}%} to "&b&lULTRA "
275 return "&bUltra"
276 if {_get} is "Hero":
277 set {mineplex.rank.%{_p}%} to "&d&lHERO "
278 return "&dHero"
279 if {_get} is "Legend":
280 set {mineplex.rank.%{_p}%} to "&a&lLEGEND "
281 return "&aLegend"
282 if {_get} is "Titan":
283 set {mineplex.rank.%{_p}%} to "&c&lTITAN "
284 return "&cTitan"
285 if {_get} is "Trainee":
286 set {mineplex.rank.%{_p}%} to "&6&lTRAINEE "
287 return "&6Trainee"
288 if {_get} is "Mod":
289 set {mineplex.rank.%{_p}%} to "&6&lMOD "
290 return "&6Mod"
291 if {_get} is "SrMod":
292 set {mineplex.rank.%{_p}%} to "&6&lSR.MOD "
293 return "&6Sr.Mod"
294 if {_get} is "CMod":
295 set {mineplex.rank.%{_p}%} to "&6&lC.MOD "
296 return "&6C.Mod"
297 if {_get} is "Admin":
298 set {mineplex.rank.%{_p}%} to "&4&lADMIN "
299 return "&4Admin"
300 if {_get} is "Apex":
301 set {mineplex.rank.%{_p}%} to "&9&lAPEX "
302 return "&9Apex"
303 if {_get} is "Leader":
304 set {mineplex.rank.%{_p}%} to "&4&lLEADER "
305 return "&4Leader"
306 if {_get} is "Owner":
307 set {mineplex.rank.%{_p}%} to "&4&lOWNER "
308 return "&4Owner"
309 if {_get} is "Builder":
310 set {mineplex.rank.%{_p}%} to "&9&lBUILDER "
311 return "&9Builder"
312 if {_get} is "Maplead":
313 set {mineplex.rank.%{_p}%} to "&9&lMAPLEAD "
314 return "&9Maplead"
315 if {_get} is "Mapper":
316 set {mineplex.rank.%{_p}%} to "&9&lMAPPER "
317 return "&9Mapper"
318 if {_get} is "JrDev":
319 set {mineplex.rank.%{_p}%} to "&6&lJR.DEV "
320 return "&6Jr.Dev"
321 if {_get} is "Dev":
322 set {mineplex.rank.%{_p}%} to "&4&lDEV "
323 return "&4Dev"
324 if {_get} is "Twitch":
325 set {mineplex.rank.%{_p}%} to "&5&lTWITCH "
326 return "&5Twitch"
327 if {_get} is "Youtube":
328 set {mineplex.rank.%{_p}%} to "&c&lYOUTUBE "
329 return "&cYouTube"
330 if {_get} is "Event":
331 set {mineplex.rank.%{_p}%} to "&f&lEVENT "
332 return "&fEvent"
333 if {_get} is "Yt":
334 set {mineplex.rank.%{_p}%} to "&5&lYT "
335 return "&5YT"
336 if {_get} is "Eternal":
337 set {mineplex.rank.%{_p}%} to "&3&lETERNAL "
338 return "&3Eternal"
339 if {_get} is "Support":
340 set {mineplex.rank.%{_p}%} to "&9&lSUPPORT "
341 return "&9Support"
342 if {_get} is "Artist":
343 set {mineplex.rank.%{_p}%} to "&9&lARTIST "
344 return "&9Artist"
345
346function parseRankRaw(r: text) :: string:
347 set {_get} to {_r}
348 if {_get} is "All":
349 set {_rank} to ""
350 if {_get} is "Ultra":
351 set {_rank} to "&b&lULTRA "
352 if {_get} is "Hero":
353 set {_rank} to "&d&lHERO "
354 if {_get} is "Legend":
355 set {_rank} to "&a&lLEGEND "
356 if {_get} is "Titan":
357 set {_rank} to "&c&lTITAN "
358 if {_get} is "Trainee":
359 set {_rank} to "&6&lTRAINEE "
360 if {_get} is "Mod":
361 set {_rank} to "&6&lMOD "
362 if {_get} is "SrMod":
363 set {_rank} to "&6&lSR.MOD "
364 if {_get} is "CMod":
365 set {_rank} to "&6&lC.MOD "
366 if {_get} is "Admin":
367 set {_rank} to "&4&lADMIN "
368 if {_get} is "Apex":
369 set {_rank} to "&9&lAPEX "
370 if {_get} is "Leader":
371 set {_rank} to "&4&lLEADER "
372 if {_get} is "Owner":
373 set {_rank} to "&4&lOWNER "
374 if {_get} is "Builder":
375 set {_rank} to "&9&lBUILDER "
376 if {_get} is "Maplead":
377 set {_rank} to "&9&lMAPLEAD "
378 if {_get} is "Mapper":
379 set {_rank} to "&9&lMAPPER "
380 if {_get} is "JrDev":
381 set {_rank} to "&6&lJR.DEV "
382 if {_get} is "Dev":
383 set {_rank} to "&4&lDEV "
384 if {_get} is "Twitch":
385 set {_rank} to "&5&lTWITCH "
386 if {_get} is "Youtube":
387 set {_rank} to "&c&lYOUTUBE "
388 if {_get} is "Event":
389 set {_rank} to "&f&lEVENT "
390 if {_get} is "Yt":
391 set {_rank} to "&5&lYT "
392 if {_get} is "Eternal":
393 set {_rank} to "&3&lETERNAL "
394 if {_get} is "Support":
395 set {_rank} to "&9&lSUPPORT "
396 if {_get} is "Artist":
397 set {_rank} to "&9&lARTIST "
398 if {_rank} is set:
399 return {_rank}
400 else:
401 return "null"
402
403function playerdata(p: offline player) :: boolean:
404 set {_uuid} to uuid of {_p}
405 if {mineplex.mode} is "file":
406 if file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" doesn't exists:
407 create file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
408 set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
409 set "player" to "%{_p}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
410 set "rank" to "All" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
411 set "level" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
412 set "gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
413 set "shards" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
414 set "banned" to "no" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
415 set "muted" to "no" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
416 set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
417 set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
418 set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
419 set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
420 set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
421 else:
422 set {_ver} to value "version" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
423 if {_ver} is not "{@playerdata}":
424 if {_ver} is "1":
425 set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
426 set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
427 set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
428 set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
429 set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
430 set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
431 send "&9MCR> &7Your playdata has been updated to the latest version!" to {_p}
432 if {_ver} is "2":
433 set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
434 set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
435 set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
436 set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
437 set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
438 set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
439 send "&9MCR> &7Your playdata has been updated to the latest version!" to {_p}
440 set "player" to "%{_p}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
441 set {_get} to value "rank" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
442 parseRank({_p}, "LOL")
443 set {_lvl} to value "level" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
444 execute console command "/givestat %{_p}% Global.ExpEarned %{_lvl}%"
445 set {_sh} to value "shards" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
446 set {mineplex.shards.%{_p}%} to {_sh} parsed as an number
447 set {_ge} to value "gems" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
448 set {mineplex.gems.%{_p}%} to {_ge} parsed as an number
449 set {_ban} to value "banned" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
450 if {_ban} is "yes":
451 set {banned::%{_p}%} to true
452 else:
453 set {banned::%{_p}%} to false
454 set {_mute} to value "muted" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
455 if {_mute} is "yes":
456 set {muted::%{_p}%} to true
457 else:
458 set {muted::%{_p}%} to false
459 else if {mineplex.mode} is "sql":
460 set {_getuuid} to first element out of objects in column "uuid" from result of query "SELECT uuid FROM `accounts` WHERE uuid = '%{_uuid}%'"
461 if {_getuuid} is not set:
462 update "INSERT INTO `accounts` (`uuid`, `name`) VALUES ('%{_uuid}%', '%{_p}%')"
463 parseRank({_p}, "LOL")
464 set {_lvl} to first element out of objects in column "level" from result of query "SELECT level FROM `accounts` WHERE uuid = '%{_uuid}%'"
465 execute console command "/givestat %{_p}% Global.ExpEarned %{_lvl}%"
466 set {_sh} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
467 set {mineplex.shards.%{_p}%} to {_sh}
468 set {_ge} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
469 set {mineplex.gems.%{_p}%} to {_ge}
470 set {_ban} to first element out of objects in column "banned" from result of query "SELECT banned FROM `accounts` WHERE uuid = '%{_uuid}%'"
471 if {_ban} is "yes":
472 set {banned::%{_p}%} to true
473 else:
474 set {banned::%{_p}%} to false
475 set {_mute} to first element out of objects in column "muted" from result of query "SELECT muted FROM `accounts` WHERE uuid = '%{_uuid}%'"
476 if {_mute} is "yes":
477 set {muted::%{_p}%} to true
478 else:
479 set {muted::%{_p}%} to false
480
481function getPlayerdata(p: offline player , f: text) :: string:
482 set {_uuid} to uuid of {_p}
483 if {mineplex.mode} is "file":
484 set {_get} to value "%{_f}%" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
485 return {_get}
486 else if {mineplex.mode} is "sql":
487 set {_get} to first element out of objects in column "%{_f}%" from result of query "SELECT %{_f}% FROM `accounts` WHERE uuid = '%{_uuid}%'"
488 return {_get}
489
490function setPlayerdata(p: offline player , f: text , v: text) :: boolean:
491 set {_uuid} to uuid of {_p}
492 if {mineplex.mode} is "file":
493 set "%{_f}%" to "%{_v}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
494 return true
495 playerdata({_p})
496 else if {mineplex.mode} is "sql":
497 if {_f} starts with "stats":
498 stop
499 update "UPDATE `accounts` SET `%{_f}%` = '%{_v}%' WHERE uuid = '%{_uuid}%'"
500 return true
501 set {_s} to getPlayerdata({_p}, "shards")
502 set {_g} to getPlayerdata({_p}, "gems")
503 broadcast "shard: %{_s}% -gem: %{_g}%"
504 playerdata({_p})
505
506function addShards(p: offline player , a: number) :: boolean:
507 set {_uuid} to uuid of {_p}
508 if {mineplex.mode} is "file":
509 set {_get} to getPlayerdata({_p}, "shards")
510 set {_cur} to {_get} parsed as a number
511 add {_a} to {_cur}
512 setPlayerdata({_p}, "shards", "%{_cur}%")
513 else if {mineplex.mode} is "sql":
514 set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
515 add {_a} to {_get}
516 setPlayerdata({_p}, "shards", "%{_get}%")
517
518function delShards(p: offline player , a: number) :: boolean:
519 set {_uuid} to uuid of {_p}
520 if {mineplex.mode} is "file":
521 set {_get} to getPlayerdata({_p}, "shards")
522 set {_cur} to {_get} parsed as a number
523 remove {_a} from {_cur}
524 setPlayerdata({_p}, "shards", "%{_cur}%")
525 else if {mineplex.mode} is "sql":
526 set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
527 remove {_a} from {_get}
528 setPlayerdata({_p}, "shards", "%{_get}%")
529
530function addGems(p: offline player , a: number) :: boolean:
531 set {_uuid} to uuid of {_p}
532 if {mineplex.mode} is "file":
533 set {_get} to getPlayerdata({_p}, "gems")
534 set {_cur} to {_get} parsed as a number
535 add {_a} to {_cur}
536 setPlayerdata({_p}, "gems", "%{_cur}%")
537 else if {mineplex.mode} is "sql":
538 set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
539 add {_a} to {_get}
540 setPlayerdata({_p}, "gems", "%{_get}%")
541
542function delGems(p: offline player , a: number) :: boolean:
543 set {_uuid} to uuid of {_p}
544 if {mineplex.mode} is "file":
545 set {_get} to getPlayerdata({_p}, "gems")
546 set {_cur} to {_get} parsed as a number
547 remove {_a} from {_cur}
548 setPlayerdata({_p}, "gems", "%{_cur}%")
549 else if {mineplex.mode} is "sql":
550 set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
551 remove {_a} from {_get}
552 setPlayerdata({_p}, "gems", "%{_get}%")
553
554function firework(l: location, t: string, r: integer, g: integer, b: integer, p: boolean) :: string:
555 if {_p} is true:
556 set {_p} to 1
557 else:
558 set {_p} to 20
559 if {_t} is not "BALL" or "LARGE BALL" or "BALL_LARGE" or "STAR" or "CREEPER" or "BURST":
560 message "&8[&3Firework&bAPI&8] &4Error: &c%{_t}% &7is not a valid firework type." to all players
561 stop
562 if {_r} or {_g} or {_b} > 255:
563 message "&8[&3Firework&bAPI&8] &4Error: &cUnallowed Value (>255)" to all players
564 stop
565 if {_t} is "BALL":
566 set {_t} to 0
567 else if {_t} is "LARGE BALL" or "BALL_LARGE":
568 set {_t} to 1
569 else if {_t} is "STAR":
570 set {_t} to 2
571 else if {_t} is "CREEPER":
572 set {_t} to 3
573 else if {_t} is "BURST":
574 set {_t} to 4
575 #RGB CONVERT
576 set {_c1} to convert num {_r} to hexa
577 set {_c2} to convert num {_g} to hexa
578 set {_c3} to convert num {_b} to hexa
579 loop 3 times:
580 set {_cL} to length of {_c%loop-value%}
581 if {_cL} < 2:
582 set {_c%loop-value%} to "0%{_c%loop-value%}%"
583 set {_color} to convert hexa "%{_c1}%%{_c2}%%{_c3}%" to num
584 spawn a firework at {_l}
585 add "{Silent:1b,FireworksItem:{id:fireworks,Count:1,tag:{Fireworks:{Explosions:[{Type:%{_t}%,Colors:[%{_color}%],FadeColors:[%{_color}%]}]}}}}" to nbt of spawned entity
586 add "{LifeTime:%{_p}%}" to nbt of spawned entity
587
588on quit:
589 delete {mineplex.rank.%player%}
590 delete {mineplex.level.%player%}
591 delete {mineplex.gems.%player%}
592 delete {mineplex.shards.%player%}
593 delete {banned::%player%}
594 delete {muted::%player%}
595
596on connect:
597 set {_uuid} to uuid of {_p}
598 playerdata(player)
599 send "§9MCR> §e%player% (%uuid of player%) has been loaded from playerdata!" to the console
600
601function Beam(e1: entity , e2: entity):
602 spawn a squid at location 0 meter behind {_e1}'s head
603 set {_el} to last spawned entity
604 set target of {_el} to {_e2}
605 apply invisibility to the last spawned entity
606 add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1, NoAI:1}" to nbt of last spawned entity
607 set {_targLoc} to location of {_e2}
608
609 loop 100 times:
610 teleport {_el} to location 0 meter behind {_e1}'s head
611 set target of {_el} to {_e2}
612 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el}
613 if {_e2}'s name is "BeamCow":
614 teleport {_e2} to {_targLoc}
615 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2}
616 wait 1 tick
617
618 create a safe explosion with force 2 at {_e1}
619 loop entities in radius 3 of {_e2}:
620 make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_e2}))
621 teleport {_el} 300 meters below {_el}
622 teleport {_e2} 300 meters below {_e2}
623 kill {_el}
624 kill {_e2}
625
626function ClientBeam(e1: entity , e3: entity , e2: entity):
627 spawn a cow at location of {_e2}
628 set {_c} to last spawned entity
629 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
630 spawn a guardian at location 1 meter behind {_e1}'s head
631 set {_el} to last spawned entity
632 set target of {_el} to {_e2}
633 loop all players:
634 protocol hide {_e1} from loop-player
635 protocol hide {_e2} from loop-player
636 protocol show {_e1} to {_e3}
637 protocol show {_e2} to {_e3}
638 apply invisibility to {_c}
639 apply invisibility to the last spawned entity
640 add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1}" to nbt of last spawned entity
641 set {_targLoc} to location of {_e2}
642
643 loop 100 times:
644 teleport {_el} to location 1 meter behind {_e1}'s head
645 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el}
646 if {_e2}'s name is "BeamCow":
647 teleport {_e2} to {_targLoc}
648 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2}
649 wait 1 tick
650
651 create a safe explosion with force 2 at {_e2}
652 loop entities in radius 3 of {_c}:
653 make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_c}))
654 teleport {_el} 300 meters below {_el}
655 teleport {_e2} 300 meters below {_e2}
656 kill {_el}
657 kill {_c}
658
659function configRefresh(n: number) :: number:
660 set {mineplex.config.config} to value "config" get of "plugins/Mineplex-Core-Remake/config.yml"
661 set {mineplex.config.servername} to value "servername" get of "plugins/Mineplex-Core-Remake/config.yml"
662 set {mineplex.config.website} to value "website" get of "plugins/Mineplex-Core-Remake/config.yml"
663 set {mineplex.config.appealwebsite} to value "appealwebsite" get of "plugins/Mineplex-Core-Remake/config.yml"
664 set {mineplex.config.ruleswebsite} to value "ruleswebsite" get of "plugins/Mineplex-Core-Remake/config.yml"
665 set {mineplex.config.youtube} to value "youtube" get of "plugins/Mineplex-Core-Remake/config.yml"
666 set {mineplex.config.twitter} to value "twitter" get of "plugins/Mineplex-Core-Remake/config.yml"
667 set {mineplex.config.shoplink} to value "shoplink" get of "plugins/Mineplex-Core-Remake/config.yml"
668 set {mineplex.config.world} to value "worldname" get of "plugins/Mineplex-Core-Remake/config.yml"
669 set {mineplex.config.doublejump} to value "doublejump" get of "plugins/Mineplex-Core-Remake/config.yml"
670 set {mineplex.config.autoop} to value "autoop" get of "plugins/Mineplex-Core-Remake/config.yml"
671 set {mineplex.config.unbanadmin} to value "unbanadmin" get of "plugins/Mineplex-Core-Remake/config.yml"
672
673function configPopulate(n: number) :: number:
674 create file "plugins/Mineplex-Core-Remake/config.yml"
675 set "config" to "{@configver}" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
676 set "servername" to "Mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
677 set "website" to "www.mineplex.com" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
678 set "appealwebsite" to "www.mineplex.com/appeals" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
679 set "ruleswebsite" to "www.mineplex.com/rules" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
680 set "youtube" to "http://youtube.com/mineplexgamesofficial" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
681 set "twitter" to "http://twitter.com/mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
682 set "shoplink" to "www.mineplex.com/shop" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
683 set "worldname" to "world" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
684 set "doublejump" to "true" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
685 set "autoop" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
686 set "unbanadmin" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
687
688function updateRankAPI(p: player) :: player:
689 wait 5 ticks
690 if {mineplex.rank.%{_p}%} is not set:
691 set {mineplex.rank.%{_p}%} to ""
692 if {mineplex.disguise.%{_p}%} is set:
693 set {_br} to uncolored {mineplex.rank.%{_p}%}
694 set {_dr} to uncolored {mineplex.rank.%{mineplex.disguise.%{_p}%}%}
695 if {mineplex.rank.%{mineplex.disguise.%{_p}%}%} is set:
696 make all players see {_p}'s prefix as "%{mineplex.rank.%{mineplex.disguise.%{_p}%}%}%&r&e"
697 else:
698 make all players see {_p}'s prefix as "&e"
699 set {_br} to convert string "%{_br}%" to lowercase
700 set {_br} to 1st char in each word of "%{_br}%" to caps
701 set {_dr} to convert string "%{_dr}%" to lowercase
702 set {_dr} to 1st char in each word of "%{_dr}%" to caps
703 replace all " " in {_br} with ""
704 replace all " " in {_dr} with ""
705 if {_dr} is "":
706 set {_dr} to "No Rank"
707 if {_br} contains "mod":
708 replace all "mod" with "Mod" in {_br}
709 if {_dr} contains "mod":
710 replace all "mod" with "Mod" in {_dr}
711 if {_br} contains "dev":
712 replace all "dev" with "Dev" in {_br}
713 if {_dr} contains "dev":
714 replace all "dev" with "Dev" in {_dr}
715 if {_dr} contains "lead":
716 replace all "lead" with "Lead" in {_dr}
717 if {_br} contains "lead":
718 replace all "lead" with "Lead" in {_br}
719 if {_br} is "":
720 set {_br} to "No Rank"
721 if {_br} contains "mod":
722 replace all "mod" with "Mod" in {_br}
723 if {_br} contains "dev":
724 replace all "dev" with "Dev" in {_br}
725 if {_br} contains "mod":
726 replace all "mod" with "Mod" in {_br}
727 if {_br} contains "tube":
728 replace all "tube" with "Tube" in {_br}
729 loop {mineplex.patreon::*}:
730 if loop-value is "%{_p}%":
731 set {_br} to "P.%{_br}%"
732 set {mineplex.api.displayrank.%{_p}%} to "%{_dr}% (%{_br}%)"
733 set {mineplex.api.displayname.%{_p}%} to "%{mineplex.disguise.%{_p}%}%"
734 set {mineplex.sb.anim.%{_p}%} to " Welcome %{mineplex.api.displayname.%{_p}%}%, to the %{mineplex.config.servername}% Network! "
735 else:
736 set {_br} to uncolored {mineplex.rank.%{_p}%}
737 if {mineplex.rank.%{_p}%} is set:
738 make all players see {_p}'s prefix as "%{mineplex.rank.%{_p}%}%&r&e"
739 else:
740 make all players see {_p}'s prefix as "&e"
741 set {_br} to convert string "%{_br}%" to lowercase
742 set {_br} to 1st char in each word of "%{_br}%" to caps
743 if {_br} is "":
744 set {_br} to "No Rank"
745 if {_br} contains "mod":
746 replace all "mod" with "Mod" in {_br}
747 if {_br} contains "dev":
748 replace all "dev" with "Dev" in {_br}
749 if {_br} contains "mod":
750 replace all "mod" with "Mod" in {_br}
751 if {_br} contains "tube":
752 replace all "tube" with "Tube" in {_br}
753 if {_br} contains "lead":
754 replace all "lead" with "Lead" in {_br}
755 if {_br} contains "dev":
756 replace all "dev" with "Dev" in {_br}
757 loop {mineplex.patreon::*}:
758 if loop-value is "%{_p}%":
759 set {_br} to "P.%{_br}%"
760 set {mineplex.api.displayrank.%{_p}%} to "%{_br}%"
761 set {mineplex.api.displayname.%{_p}%} to "%{_p}%"
762 set {mineplex.sb.anim.%{_p}%} to " Welcome %{mineplex.api.displayname.%{_p}%}%, to the %{mineplex.config.servername}% Network! "
763
764function mcs(p: player , m: text) :: number:
765 if {mineplex.overridechat} is true:
766 if {mineplex.disguise.%{_p}%} is set:
767 set {_player} to {mineplex.disguise.%{_p}%}
768 else:
769 set {_player} to {_p}
770 set {_prerank} to getPlayerdata({_player}, "rank")
771 set {_rank} to parseRankRaw({_prerank})
772 if {_rank} is not set:
773 set {_rank} to ""
774 if {_rank} is "null":
775 set {_rank} to ""
776 if {mineplex.level.%{_player}%} is not set:
777 set {mineplex.level.%{_player}%} to "&70"
778 replace all " fuck " with " **** " in {_m}
779 replace all " bitch " with " ***** " in {_m}
780 replace all " ass " with " *** " in {_m}
781 replace all " nigger " with " *** " in {_m}
782 replace all " cunt " with " *** " in {_m}
783 replace all " f|_|ck " with " ****** " in {_m}
784 replace all " shit " with " **** " in {_m}
785 if {_m} is {mineplex.lastsent.%{_p}%}:
786 if {_p} does not have permission "mineplex.mod":
787 send "&9Chat> &7This message is too similar to your previous message." to {_p}
788 return -1
789 stop
790 if {mineplex.authlock.%{_p}%} is true:
791 return -1
792 stop
793 set {mineplex.lastsent.%{_p}%} to {_m}
794 loop all players:
795 if {mineplex.pref.pc.%loop-player%} is true:
796 if {mineplex.rank.%{_player}%} is set:
797 set {_lvl} to {mineplex.level.%{_player}%}
798 if {_player} is "WheezyGold7931":
799 set {_lvl} to "&c101"
800 loop {mineplex.ignorelist.%loop-player%::*}:
801 if loop-value-2 is "%{_player}%":
802 set {_ignore.%loop-player-1%} to true
803 if {_ignore.%loop-player-1%} is not set:
804 if {mineplex.rank.%{_player}%} is not "":
805 set {_sanitizedm} to uncolored {_m}
806 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
807 if loop-value-2 is {_player}:
808 set {_brank} to uncolored {mineplex.rank.%{_player}%}
809 set {_rank} to "&6&lP.%{_brank}%"
810 else:
811 set {_rank} to {mineplex.rank.%{_player}%}
812 mcrjson("%loop-player%", "%{_lvl}%|| %{_rank}%||ttp:%{mineplex.hover.%{_player}%}%||&e%{_player}% &f%{_sanitizedm}%", false)
813 else:
814 send "%{_lvl}% %{mineplex.rank.%{_player}%}%&e%{_player}% &f%{_m}%" to loop-player
815 return -1
816 else:
817 stop
818
819function caseSensitive(source: String, compareTo: String) :: boolean:
820 if size of split {_source} at {_compareTo} is 2:
821 return true
822 else: #Hi Snow
823 return false
824
825function gwenAlert(p: player , r: text) :: number:
826 if {mineplex.disguise.%{_p}%} is set:
827 set {_player} to {mineplex.disguise.%{_p}%}
828 else:
829 set {_player} to {_p}
830 loop all players:
831 if loop-player has permission "mineplex.trainee":
832 if {mineplex.pref.gwen.%loop-player%} is true:
833 send "&b&kK&r &c&lGWEN > &6%{_player}% &esuspected of &a%{_r}%&e." to loop-player
834
835#Config Loading
836
837on script unload:
838 broadcast "&9MCR> &7Mineplex Core is re-parsing!"
839
840on load:
841 if file "plugins/Mineplex-Core-Remake/config.yml" doesn't exists:
842 configPopulate(1)
843# set {mineplex.config.servername} to colored value "servername" get of "plugins/Mineplex-Core-Remake/config.yml"
844 configRefresh(1)
845 wait 1 second
846 if {mineplex.config.config} is "{@configver}":
847 broadcast "&9MCR> &7Config &e{@configver} &7is up to date!"
848 else:
849 broadcast "&9Mineplex Core> &7Your Config is not up to Date! Updating this shit for you!"
850 configPopulate(1)
851 broadcast "&9Mineplex Core> &7Config Re-Populated!"
852 broadcast "&9Mineplex Core> &7Going to reload plugin now!"
853 broadcast "&9Mineplex Core> &7Going to reload plugin now!"
854 wait 1 second
855 configRefresh(1)
856 broadcast "&9Mineplex Core> &7Config Done!"
857 if {mineplex.usescoreboard} is not set:
858 set {mineplex.usescoreboard} to true
859
860#Main Command/Toggles
861command /mineplex-core [<string>] [<string>] [<string>]:
862 aliases: /mpcore
863 permission: op
864 permission message: &9Permissions> &7You do not have permission to do that.
865 trigger:
866 if arg-1 is not set:
867 send "&a"
868 send "&9Core Settings> &7Listing Commands:"
869 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
870 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
871 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
872 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
873 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
874 send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
875 send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
876 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
877 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
878 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
879 send "&a"
880 else if arg-1 is set:
881 if arg-1 is "help":
882 send "&a"
883 send "&9Core Settings> &7Listing Commands:"
884 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
885 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
886 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
887 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
888 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
889 send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
890 send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
891 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
892 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
893 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
894 send "&a"
895 else if arg-1 is "Chat":
896 if arg-2 is not set:
897 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
898 else if arg-2 is set:
899 if arg-2 is "true":
900 set {mineplex.overridechat} to true
901 send "&9Core Settings> &7Now using the Mineplex Chat System (MCS)."
902 else if arg-2 is "false":
903 set {mineplex.overridechat} to false
904 send "&9Core Settings> &7No longer using the Mineplex Chat System (MCS)."
905 else:
906 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
907 else:
908 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
909 else if arg-1 is "Scoreboard":
910 if arg-2 is not set:
911 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
912 else if arg-2 is set:
913 if arg-2 is "true":
914 set {mineplex.usescoreboard} to true
915 send "&9Core Settings> &7Now using the Mineplex Scoreboard System."
916 else if arg-2 is "false":
917 set {mineplex.usescoreboard} to false
918 send "&9Core Settings> &7No longer using the Mineplex Scoreboard System."
919 else:
920 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
921 else:
922 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
923 else if arg-1 is "ForcefieldOff":
924 if arg-2 is not set:
925 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
926 else:
927 delete {mineplex.pref.ff.%arg-2%}
928 delete {mineplex.ff.list::%arg-2%}
929 send "&9MCR> &7Done!"
930 else if arg-1 is "News":
931 if arg-2 is not set:
932 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
933 else if arg-2 is set:
934 if arg-2 is "true":
935 set {mineplex.news.allow} to true
936 send "&9Core Settings> &7Now using the Mineplex News System."
937 else if arg-2 is "false":
938 set {mineplex.news.allow} to false
939 send "&9Core Settings> &7No longer using the Mineplex News System."
940 else:
941 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
942 else:
943 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
944 else if arg-1 is "TNT":
945 if arg-2 is not set:
946 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
947 else if arg-2 is set:
948 if arg-2 is "true":
949 set {mineplex.tntlauncher} to true
950 send "&9Core Settings> &7Now using the Throwing TNT Mechanics."
951 else if arg-2 is "false":
952 set {mineplex.tntlauncher} to false
953 send "&9Core Settings> &7No longer using the Throwing TNT Mechanics."
954 else:
955 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
956 else:
957 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
958 else if arg-1 is "purgehistory":
959 if arg 2 is not set:
960 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
961 else:
962 send "&9MCR> &7Purged %arg-2%'s history"
963 delete {p.%arg-2%::*}
964 delete {punishgui.%arg-2%::*}
965 delete {reversed.p.%arg-2%::history::*}
966 delete {reversed.p.%arg-2%::*}
967 else if arg-1 is "reload":
968 configRefresh(1)
969 send "&9Core Settings> &7The main configuration file has been refreshed."
970 else if arg-1 is "Carl":
971 spawn 1 creeper at location of player
972 set {_carl} to spawned creeper
973 set name of last spawned entity to "&a&lCarl the Creeper"
974 add "{NoAI:1b}" to nbt of {_carl}
975 add "{powered:1}" to nbt of {_carl}
976 apply slowness 255 to last spawned entity for 999 days
977 set {kitnpc} to location of player
978 send "&9Core Settings> &7Carl has been spawned in a fixed position at your current location."
979 else if arg-1 is "admin":
980 if arg-2 is set:
981 set {mineplex.rank.%arg-2%} to "&4&lADMIN "
982 set {_mineplex.setadmin.temp} to arg-2 parsed as player
983 execute console command "/__mp__dp__ %arg-2%"
984 add "mineplex.trainee" to {_mineplex.setadmin.temp}'s permissions
985 add "mineplex.mod" to {_mineplex.setadmin.temp}'s permissions
986 add "mineplex.srmod" to {_mineplex.setadmin.temp}'s permissions
987 add "mineplex.admin" to {_mineplex.setadmin.temp}'s permissions
988 add "mineplex.legend" to {_mineplex.setadmin.temp}'s permissions
989 add "mineplex.builder" to {_mineplex.setadmin.temp}'s permissions
990 updateRankAPI({_mineplex.setadmin.temp})
991 send "&9Core Settings> &7Temporarily added Admin permissions to %arg-2%."
992 else:
993 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
994 else if arg-1 is "TreasurePoint":
995 if arg-2 is "1" or "2" or "3" or "4":
996 set {mineplex.chestpoint.%arg-2%} to target block
997 send "&9Core Settings> &7Treasure Point %arg-2% has been set to your targeted block."
998 else:
999 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
1000 else if arg-1 is "TreasurePointSub":
1001 if arg-2 is "1" or "2" or "3" or "4":
1002 if arg-3 is "1" or "2" or "3" or "4" or "5" or "6" or "7" or "8":
1003 set {mineplex.chestpoint.%arg-2%.sub.%arg-3%} to target block
1004 send "&9Core Settings> &7Treasure Point Sub %arg-3% of Treasure Point %arg-2% has been set to your targeted block."
1005 else:
1006 send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
1007 else:
1008 send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
1009 else:
1010 send "&a"
1011 send "&9Core Settings> &7Listing Commands:"
1012 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
1013 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
1014 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
1015 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
1016 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
1017 send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
1018 send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
1019 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
1020 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
1021 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
1022 send "&a"
1023
1024command /help [<string>]:
1025 aliases: /pleasehelpmeiamgoingtoexplode, /?
1026 trigger:
1027 send "&9Help> &7Hi there! Need some help?"
1028 mcrjson("%player%", "&9> &7Check out ||&eour FAQ for commonly asked questions||ttp:&eClick to visit our FAQ page!||url:%{mineplex.config.website}%/faq")
1029 mcrjson("%player%", "&9> &7Read ||&eour rules to avoid being punished!||ttp:&eClick to visit our rules page!||url:%{mineplex.config.website}%/rules")
1030 mcrjson("%player%", "&9> &7Want to apply for Trainee? Visit ||&eapply.%{mineplex.config.website}%||ttp:&3Click to visit our forums to learn about Trainee!||url:apply.%{mineplex.config.website}%||&7!")
1031 mcrjson("%player%", "&9> &7Question about a purchase? Contact support at ||&e%{mineplex.config.website}%/support||ttp:&eClick to visit our support page!||url:%{mineplex.config.website}%/support||&7!")
1032 mcrjson("%player%", "&9> &7Find us on twitter at ||&b@%capitalize first char of each word in last element of {mineplex.config.twitter} split at ""/""%||ttp:&bClick to visit our twitter!||url:%{mineplex.config.twitter}%")
1033 mcrjson("%player%", "&9> &7Need help with MCR Commands? ||&eView the MCR Wiki for a list of commands||ttp:&eClick to visit the MCR wiki!||url:https://github.com/MPlexCore/Mineplex-Core/wiki/Commands-and-Permissions||&7!")
1034
1035command /recompile [<string>]:
1036 aliases: /rec
1037 permission: op
1038 permission message: &9Permissions> &7You do not have permission to do that.
1039 trigger:
1040 if arg 1 is not set:
1041 broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7will be re-parsing in two seconds."
1042 wait 2 second
1043 player command "/sk reload Mineplex"
1044 else:
1045 if arg 1 is "-s":
1046 broadcast "&9MCR> &7Mineplex Core will be re-parsing in two seconds. (Silent)"
1047 execute console command "/sk reload Mineplex"
1048
1049#Thanks XeXRainnn
1050
1051on quit:
1052 delete {mineplex.%player%.notice}
1053
1054command /bugreport [<string>]:
1055 trigger:
1056 if arg 1 is not set:
1057 send "&9MCR> &7Commands List:"
1058 send "&f/bugreport <bug> &7Reports a bug to the MCR Developers &fPlayer"
1059 else:
1060 if {mineplex.%player%.notice} is not set:
1061 send "&9MCR> &7Abuse of this system will result in a blacklist of this feature! If you are sure about reporting this, repeat the command."
1062 set {mineplex.%player%.notice} to true
1063 stop
1064 set {_pl} to "%list of plugins%"
1065 replace all " and " with ",+" in {_pl}
1066 replace all " " with "" in {_pl}
1067 replace all ", " with ",++" in {_pl}
1068 set {_ra} to arg-1
1069 replace all "`" with "" in {_ra}
1070 replace all "*" with "" in {_ra}
1071 replace all " " with "%%20" in {_ra}
1072 set {_mc} to minecraft version
1073 set {_sk} to skript version
1074 set {_bk} to bukkit version
1075 set {_mcr} to "{@MCRVER}"
1076 set {_url} to uncolored "http://mpcore.us/mcr/bugreport.php?plugins=%{_pl}%&&rmcver=%{_mc}%&&rskver=%{_sk}%&&rbukkit=%{_bk}%&&rplayer=%player%&&rbug=%{_ra}%&&rmcrver=%{_mcr}%"
1077 $ thread
1078 set {_response::*} to contents from url {_url}
1079 send "&9MCR> &7Please Wait!"
1080 wait 5 seconds
1081 if {_response::1} is "600":
1082 send "&9MCR> &7Bug Report was &eSuccessful&7!"
1083 else if {_response::1} contains "602":
1084 set {_thing} to {_response::1}
1085 replace all "602 " with "" in {_thing}
1086 send "&9MCR> &7Bug Report was marked as &eInvalid&7!"
1087 send "&9MCR> &7Bug Report returned the error: &e%{_thing}%&7!"
1088 else if {_response::1} contains "603":
1089 set {_thing} to {_response::1}
1090 replace all "603 " with "" in {_thing}
1091 send "&9MCR> &c&lYou are blacklisted from the bug report system!"
1092 send "&9MCR> &7&lReason: &7%{_thing}%"
1093 else if {_response::1} contains "604":
1094 set {_thing} to {_response::1}
1095 replace all "604 " with "" in {_thing}
1096 send "&9MCR> &7Bug Report returned a diffrent response: &e%{_thing}%"
1097 else if {_response::1} is not set:
1098 send "&9MCR> &7The bug report was malformed and we did not get a response!"
1099
1100command /rules:
1101 trigger:
1102 send "&9Rules> &7The rules can be found here: &a%{mineplex.config.ruleswebsite}%"
1103
1104#CarlBae
1105
1106on load:
1107 if {poll.id.last} is not set:
1108 set {poll.id.last} to 0
1109
1110on join:
1111 set {_player} to "%player%"
1112 replace all "s" in {_player} with "sssss"
1113 send "&2&lCarl the Creeper> &aHey %{_player}%! I have sssome amazing rewardsss for you! Come sssee me!"
1114 if {mineplex.tickets.%player%} is not set:
1115 set {mineplex.tickets.%player%} to 0
1116 if {mineplex.polltaken.0.%player%} is not set:
1117 set {mineplex.polltaken.0.%player%} to true
1118 if {mineplex.thankrewards.%player%} is not set:
1119 set {mineplex.thankrewards.%player%} to 0
1120
1121command /thank [<offline player>]:
1122 trigger:
1123 if arg 1 is set:
1124 if arg 1 is player:
1125 send "&9Thank> &7You cannot thank yourself!"
1126 else:
1127 if arg 1 is online:
1128 if {mineplex.thank.last.%player%} is not set:
1129 set {_good} to true
1130 else:
1131 set {_t} to difference between {mineplex.thank.last.%player%} and now
1132 set {_tc} to "24 hours" parsed as a timespan
1133 if {_t} is more than {_tc}:
1134 set {_good} to true
1135 if {_good} is true:
1136 send "&9Thank> &7You thanked &e%arg-1% &7and earned &b5 Treasure Shards&7!"
1137 send "&9Thank> &e%player% &7used &e/thank &7on you! +&b5 Treasure Shards&7!%nl%&9Thank> &7You can claim your reward at &eCarl the Creeper" to arg-1
1138 addShards(player, 5)
1139 add 5 to {mineplex.thankrewards.%arg-1%}
1140 set {mineplex.thank.last.%player%} to now
1141 else:
1142 send "&9Thank> &7You can only /thank once per day!"
1143 stop
1144 else:
1145 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
1146 else:
1147 send "&9Thank> &7Usage: &e/thank <player>"
1148
1149function carlSpinNew(p: player) :: text:
1150 open chest with 3 rows named "&8Carl's Spinner" to {_p}
1151 loop (random integer between 5 and 10) times:
1152 add prismarine shard named "&bTreasure Shards" to {_roll::*}
1153 loop (random integer between 5 and 22) times:
1154 add emerald named "&fGems" to {_roll::*}
1155 loop (random integer between 1 and 10) times:
1156 add firework rocket named "&fFireworks" to {_roll::*}
1157 loop (random integer between 1 and 10) times:
1158 add ender pearl named "&fEthereal Pearls" to {_roll::*}
1159 loop (random integer between 1 and 10) times:
1160 add tripwire hook named "&fFlesh Hooks" to {_roll::*}
1161 loop (random integer between 1 and 10) times:
1162 add iron horse armor named "&fBat Blasters" to {_roll::*}
1163 loop (random integer between 1 and 10) times:
1164 add gold horse armor named "&fPaintball Guns" to {_roll::*}
1165 add leather named "&dCow Morph" to {_roll::*}
1166 add nether star named "&cTitan Rank" to {_roll::*}
1167 set {_speedFinal} to 3
1168 set {_Selector1} to 4
1169 loop (random integer between 31 and 60) times:
1170 if inventory name of {_p}'s current inventory is not "&8Carl's Spinner":
1171 stop
1172 set {_sel} to 21
1173 loop {_sel} times:
1174 set {_sel2} to {_sel} - 1
1175 set {_item::%{_sel}%} to {_item::%{_sel2}%}
1176 subtract 1 from {_sel}
1177 set {_item::1} to a random element out of {_roll::*}
1178 loop integers between 0 and inventory size of {_p}'s current inventory - 1:
1179 if loop-number-2 is {_Selector1}:
1180 set slot loop-number-2 of {_p}'s current inventory to hopper named " "
1181 loop 9 times:
1182 set slot 8 + loop-number-3 of {_p}'s current inventory to {_item::%loop-number-3%}
1183 set slot loop-number-2 of {_p}'s current inventory to gray stained glass pane named " "
1184 if "%{_item::%loop-number-3%}%" is "prismarine shard":
1185 set slot 17 + loop-number-3 of {_p}'s current inventory to light blue stained glass pane named " "
1186 set slot -1 + loop-number-3 of {_p}'s current inventory to light blue stained glass pane named " "
1187 if "%{_item::%loop-number-3%}%" is "nether star":
1188 set slot 17 + loop-number-3 of {_p}'s current inventory to red stained glass pane named " "
1189 set slot -1 + loop-number-3 of {_p}'s current inventory to red stained glass pane named " "
1190 if "%{_item::%loop-number-3%}%" is "leather":
1191 set slot 17 + loop-number-3 of {_p}'s current inventory to magenta stained glass pane named " "
1192 set slot -1 + loop-number-3 of {_p}'s current inventory to magenta stained glass pane named " "
1193 set slot 4 of {_p}'s current inventory to hopper named " "
1194 add 1 to {_sound}
1195 if {_sound} > 3:
1196 set {_sound} to 1
1197 if {_sound} = 1:
1198 play sound "NOTE_PLING" to {_p} with volume 1 and pitch 15
1199 else if {_sound} = 2:
1200 play sound "NOTE_PLING" to {_p} with volume 1 and pitch 15
1201 else if {_sound} = 3:
1202 play sound "NOTE_PLING" to {_p} with volume 1 and pitch 15
1203 add 1 to {_speed}
1204 if {_speed} is 5:
1205 set {_speed} to 0
1206 add 1 to {_speedFinal}
1207 loop {_speedFinal} times:
1208 wait a tick
1209 set {_wonItem} to slot 13 of {_p}'s current inventory
1210 set {_slotFill} to gray stained glass pane with name " "
1211 if {_wonItem} is a emerald:
1212 set {_add} to random integer between 5 and 20
1213 addGems({_p}, {_add})
1214 message "&9Carl's Spinner> &7You won &f%{_add}% Gems" to {_p}
1215 if {_wonItem} is a ender pearl:
1216 set {_add} to random integer between 5 and 20
1217 add {_add} to {mineplex.cosmetics.pearls.%{_p}%}
1218 message "&9Carl's Spinner> &7You won &f%{_add}% Ethereal Pearls" to {_p}
1219 if {_wonItem} is a firework rocket:
1220 set {_add} to random integer between 5 and 20
1221 add {_add} to {mineplex.cosmetics.firework.%{_p}%}
1222 message "&9Carl's Spinner> &7You won &f%{_add}% Fireworks" to {_p}
1223 if {_wonItem} is a iron horse armor:
1224 set {_add} to random integer between 5 and 20
1225 add {_add} to {mineplex.cosmetics.blaster.%{_p}%}
1226 message "&9Carl's Spinner> &7You won &f%{_add}% Bat Blasters" to {_p}
1227 if {_wonItem} is a gold horse armor:
1228 set {_add} to random integer between 5 and 20
1229 add {_add} to {mineplex.cosmetics.paintball.%{_p}%}
1230 message "&9Carl's Spinner> &7You won &f%{_add}% Paintball Guns" to {_p}
1231 if {_wonItem} is a tripwire hook:
1232 set {_add} to random integer between 5 and 20
1233 add {_add} to {mineplex.cosmetics.hook.%{_p}%}
1234 message "&9Carl's Spinner> &7You won &f%{_add}% Flesh Hooks" to {_p}
1235 if {_wonItem} is a prismarine shard:
1236 set {_add} to random integer between 5 and 20
1237 addShards({_p}, {_add})
1238 message "&9Carl's Spinner> &7You won &b%{_add}% Shards" to {_p}
1239 set {_slotFill} to light blue stained glass pane with name " "
1240 if {_wonItem} is leather:
1241 message "&9Carl's Spinner> &7You won &dCow Morph" to {_p}
1242 set {_slotFill} to magenta stained glass pane with name " "
1243 if {_wonItem} is nether star:
1244 message "&9Carl's Spinner> &7You won &cTitan Rank" to {_p}
1245 set {_slotFill} to red stained glass pane with name " "
1246 execute console command "/rank %{_p}% TITAN"
1247 set {_slot} to 5
1248 loop 5 times:
1249 if inventory name of {_p}'s current inventory is not "&8Carl's Spinner":
1250 stop
1251 set slot 17 + {_slot} of {_p}'s current inventory to {_slotFill}
1252 set slot -1 + {_slot} of {_p}'s current inventory to {_slotFill}
1253 set slot 8 + {_slot} of {_p}'s current inventory to {_slotFill}
1254 set slot 9 - {_slot} of {_p}'s current inventory to {_slotFill}
1255 set slot 18 - {_slot} of {_p}'s current inventory to {_slotFill}
1256 set slot 27 - {_slot} of {_p}'s current inventory to {_slotFill}
1257 set slot 13 of {_p}'s current inventory to {_wonItem}
1258 remove 1 from {_slot}
1259 wait 1 second
1260
1261function reqSpin(p: player) :: text:
1262 if {mineplex.tickets.%{_p}%} is bigger than 0:
1263 wait 2 ticks
1264 carlSpinNew({_p})
1265 remove 1 from {mineplex.tickets.%{_p}%}
1266 else:
1267 message "&9Carl's Spinner> &7A Unknown Error has occured." to {_p}
1268
1269function carlSpin(p: player) :: number:
1270 if {mineplex.tickets.%{_p}%} >= 1:
1271 remove 1 from {mineplex.tickets.%{_p}%}
1272 wait 5 ticks
1273 open chest with 3 rows named "Carl's Spinner" to {_p}
1274 set {opener.%{_p}%} to true
1275 loop 30 times:
1276 inventory name of {_p}'s current inventory is "Carl's Spinner"
1277 play "NOTE_PLING" to {_p} at volume 0.5
1278 format slot 0 of {_p} with white stained glass pane to be unstealable
1279 format slot 1 of {_p} with white glass to be unstealable
1280 format slot 2 of {_p} with white glass to be unstealable
1281 format slot 3 of {_p} with white glass to be unstealable
1282 format slot 4 of {_p} with hopper to be unstealable
1283 format slot 5 of {_p} with white glass to be unstealable
1284 format slot 6 of {_p} with white glass to be unstealable
1285 format slot 7 of {_p} with white glass to be unstealable
1286 format slot 8 of {_p} with white stained glass pane to be unstealable
1287 set {_randomint1.%{_p}%} to random integer between 95 and 375
1288 format slot 9 of {_p} with prismarine shard named "&b%{_randomint1.%{_p}%}% Shards" to be unstealable
1289 format slot 8 of {_p} with white stained glass pane to be unstealable
1290 set {_randomint2.%{_p}%} to random integer between 95 and 375
1291 format slot 10 of {_p} with prismarine shard named "&b%{_randomint2.%{_p}%}% Shards" to be unstealable
1292 format slot 8 of {_p} with white stained glass pane to be unstealable
1293 set {_randomint3.%{_p}%} to random integer between 95 and 375
1294 format slot 11 of {_p} with prismarine shard named "&b%{_randomint3.%{_p}%}% Shards" to be unstealable
1295 format slot 8 of {_p} with white stained glass pane to be unstealable
1296 set {_randomint4.%{_p}%} to random integer between 95 and 375
1297 format slot 12 of {_p} with prismarine shard named "&b%{_randomint4.%{_p}%}% Shards" to be unstealable
1298 format slot 8 of {_p} with white stained glass pane to be unstealable
1299 set {_randomint5.%{_p}%} to random integer between 95 and 375
1300 format slot 13 of {_p} with prismarine shard named "&b%{_randomint5.%{_p}%}% Shards" to be unstealable
1301 format slot 8 of {_p} with white stained glass pane to be unstealable
1302 set {_randomint6.%{_p}%} to random integer between 95 and 375
1303 format slot 14 of {_p} with prismarine shard named "&b%{_randomint6.%{_p}%}% Shards" to be unstealable
1304 format slot 8 of {_p} with white stained glass pane to be unstealable
1305 set {_randomint7.%{_p}%} to random integer between 95 and 375
1306 format slot 15 of {_p} with prismarine shard named "&b%{_randomint7.%{_p}%}% Shards" to be unstealable
1307 format slot 8 of {_p} with white stained glass pane to be unstealable
1308 set {_randomint8.%{_p}%} to random integer between 95 and 375
1309 format slot 16 of {_p} with prismarine shard named "&b%{_randomint8.%{_p}%}% Shards" to be unstealable
1310 format slot 8 of {_p} with white stained glass pane to be unstealable
1311 set {_randomint9.%{_p}%} to random integer between 95 and 375
1312 format slot 17 of {_p} with prismarine shard named "&b%{_randomint9.%{_p}%}% Shards" to be unstealable
1313 format slot 18 of {_p} with white stained glass pane to be unstealable
1314 format slot 19 of {_p} with white glass to be unstealable
1315 format slot 20 of {_p} with white glass to be unstealable
1316 format slot 21 of {_p} with white glass to be unstealable
1317 format slot 22 of {_p} with white glass to be unstealable
1318 format slot 23 of {_p} with white glass to be unstealable
1319 format slot 24 of {_p} with white glass to be unstealable
1320 format slot 25 of {_p} with white glass to be unstealable
1321 format slot 26 of {_p} with white stained glass pane to be unstealable
1322 delete {_randomint1.%{_p}%}
1323 delete {_randomint2.%{_p}%}
1324 delete {_randomint3.%{_p}%}
1325 delete {_randomint4.%{_p}%}
1326 delete {_randomint6.%{_p}%}
1327 delete {_randomint7.%{_p}%}
1328 delete {_randomint8.%{_p}%}
1329 delete {_randomint9.%{_p}%}
1330 wait 0.2 seconds
1331 send "&9Carl> &7You won &b%{_randomint5.%{_p}%}% Shards!" to {_p}
1332 addShards({_p}, {_randomint5.%{_p}%})
1333 wait 3 ticks
1334 delete {_randomint5.%{_p}%}
1335 delete {opener.%{_p}%}
1336 wait 1 second
1337 close {_p}'s inventory
1338 else:
1339 send "&9Carl's Spinner> &7You don't have a Carl Spinner Ticket!" to {_p}
1340
1341function ytlink(p: player) :: number:
1342 set {_t} to difference between {carl.ytr.%{_p}%} and now
1343 set {_tc} to "1 day" parsed as a timespan
1344 if {_t} is less than {_tc}:
1345 message "&6&m=====================================" to {_p}
1346 message "&b &f" to {_p}
1347 message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p}
1348 message " &a%{mineplex.config.youtube}%" to {_p}
1349 message "&b &f" to {_p}
1350 message "&6&m=====================================" to {_p}
1351 stop
1352 else:
1353 set {carl.ytr.%{_p}%} to now
1354 addShards({_p}, 250)
1355 message "&6&m=====================================" to {_p}
1356 message "&b &f" to {_p}
1357 message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p}
1358 message " &a%{mineplex.config.youtube}%" to {_p}
1359 message "&b &f" to {_p}
1360 message "&6&m=====================================" to {_p}
1361 wait 60 seconds
1362 message "&9Carl> &7Rewarded 250 Shards for watching the YouTube Video" to {_p}
1363
1364function tlink(p: player) :: number:
1365 message "&6&m=====================================" to {_p}
1366 message "&b &f" to {_p}
1367 message " &f&lClick to Open in Web Browser" to {_p}
1368 message " &a%{mineplex.config.twitter}%" to {_p}
1369 message "&b &f" to {_p}
1370 message "&6&m=====================================" to {_p}
1371
1372function dailyr(p: player) :: number:
1373 set {_t} to difference between {carl.dr.%{_p}%} and now
1374 set {_tc} to "20 hours" parsed as a timespan
1375 if {_t} is less than {_tc}:
1376 message "&9Carl> &7Come back in another 24 hours." to {_p}
1377 stop
1378 else:
1379 message "&9Carl> &7Rewarded &e100 Treasure Shards" to {_p}
1380 message "&9Carl> &7Rewarded &e100 Gems" to {_p}
1381 message "&9Carl> &7Rewarded &e250 Experience" to {_p}
1382 set {carl.dr.%{_p}%} to now
1383 addShards({_p}, 100)
1384 addGems({_p}, 100)
1385 set {_cur} to getPlayerdata({_p}, "stats.global.dailyr") parsed as a number
1386 add 1 to {_cur}
1387 setPlayerdata({_p}, "stats.global.dailyr", "%{_cur}%")
1388
1389function rawVote(p: player , v: number) :: number:
1390 add 1 to {mineplex.poll.results.%{_v}%.%{poll.id.last}%}
1391 set {mineplex.polltaken.%{poll.id.last}%.%{_p}%} to true
1392 addGems({_p}, {mineplex.poll.gems.%{poll.id.last}%})
1393 message "&9Carl> &7Rewarded &a%{mineplex.poll.gems.%{poll.id.last}%}% Gems&7." to {_p}
1394
1395function pollVote(p: player) :: number:
1396 open chest with 6 rows named "Poll:" to {_p}
1397 wait 2 ticks
1398 format slot 13 of {_p} with book and quill named "&a&lVote on Poll" with lore "||&f%{mineplex.poll.question.%{poll.id.last}%}%||||&b1.) &f%{mineplex.poll.a1.%{poll.id.last}%}%||&b2.) &f%{mineplex.poll.a2.%{poll.id.last}%}%||&b3.) &f%{mineplex.poll.a3.%{poll.id.last}%}%||&b4.) &f%{mineplex.poll.a4.%{poll.id.last}%}%||||&eRewards|| &f%{mineplex.poll.gems.%{poll.id.last}%}% Gems" to be unstealable
1399 format slot 28 of {_p} with emerald named "&aOption 1" with lore "||&f%{mineplex.poll.a1.%{poll.id.last}%}%" to close then run [rawVote({_p}, 1)]
1400 format slot 30 of {_p} with emerald named "&aOption 2" with lore "||&f%{mineplex.poll.a2.%{poll.id.last}%}%" to close then run [rawVote({_p}, 2)]
1401 format slot 32 of {_p} with emerald named "&aOption 3" with lore "||&f%{mineplex.poll.a3.%{poll.id.last}%}%" to close then run [rawVote({_p}, 3)]
1402 format slot 34 of {_p} with emerald named "&aOption 4" with lore "||&f%{mineplex.poll.a4.%{poll.id.last}%}%" to close then run [rawVote({_p}, 4)]
1403
1404function claimThank(p: player) :: number:
1405 set {_am} to {mineplex.thankrewards.%{_p}%}
1406 set {_tp} to {_am} / 5
1407 send "&9Carl> &7You collected &b%{_am}% Treasure Shards &7from &e%{_tp}% &7players!" to {_p}
1408 set {mineplex.thankrewards.%{_p}%} to 0
1409 set {_get} to getPlayerdata({_p}, "shards")
1410 set {_cur} to {_get} parsed as a number
1411 add {_am} to {_cur}
1412 setPlayerdata({_p}, "shards", "%{_cur}%")
1413
1414on inventory click:
1415 if inventory name of player's current inventory is "Carl's Spinner":
1416 cancel event
1417 close player's inventory
1418
1419#Dank as all heck
1420function carlGUI(p: player) :: number:
1421 open chest with 6 rows named "%{_p}%'s Bonuses" to {_p}
1422 wait 2 ticks
1423 format slot 10 of {_p} with redstone block named "&c&lRank Monthly Bonus" with lore "||&7Players with a Rank get a Monthly Bonus!||||&bUltra recieves 1 Mythical Chest Monthly||&dHero recieves 2 Mythical Chests Monthly||&aLegend recieves 3 Mythical Chests Monthly||&cTitan recieves 5 Mythical Chests Monthly||||&fPurchase a Rank at;||&f%{mineplex.config.shoplink}%" to close
1424 set {_t} to difference between {carl.dr.%{_p}%} and now
1425 set {_tc} to "20 hours" parsed as a timespan
1426 set {_mc} to {_tc} - {_t}
1427 set {_st} to "%{_t}%"
1428 set {_args::*} to {_st} split at " "
1429 set {_num1} to "%{_args::1}%" parsed as an int
1430 set {_num2} to 1200
1431 set {_num3} to {_num2} - {_num1}
1432 set {_hourconvert} to {_num3} / 60
1433 set {_finalwait} to "%{_hourconvert}% hours"
1434 if {_t} is less than {_tc}:
1435 format slot 12 of {_p} with redstone block named "&c&lDaily Reward" with lore "||&fNext reward in %{_finalwait}%!|| ||&7||&eRewards|| &f100 Treasure Shards|| &f100 Gems|| &f250 Experience||&7||&eCurrent Streak: &f0||&eStreak Bonus: &f0%%||&7||&eHighest Streak: &f0" to close
1436 else:
1437 format slot 12 of {_p} with chest named "&a&lDaily Reward" with lore "||&fClick to Claim!|| ||&7||&eRewards|| &f100 Treasure Shards|| &f100 Gems|| &f250 Experience||&7||&eCurrent Streak: 0||&eStreak Bonus: 5||&7||&eHighest Streak: &f1||&eStreak Reset: &f1.3 Days" to close then run [dailyr({_p})]
1438 format slot 14 of {_p} with creeper head named "&c&lCarl's Spinner" with lore "||&fYou need a Carl Spin Ticket to Spin||&b||&eYour Tickets: &f%{mineplex.tickets.%{_p}%}%" to close then run [reqSpin({_p})]
1439 format slot 16 of {_p} with redstone block named "&c&lPower Play Club" with lore "&eFebruary's Cosmetic|| &fTrue Love Pet||&b &f||&eOther Rewards|| &f2 Game Amplifier|| &f1 Omega Chest||&b||&cGet Power Play Club months at||&b%{mineplex.config.shoplink}%" to close
1440 format slot 20 of {_p} with water bucket named "&e&lVisit us on Facebook" with lore "||&eRewards|| &f10 Ancient Chest" to close
1441 set {_t} to difference between {carl.ytr.%{_p}%} and now
1442 set {_tc} to "1 day" parsed as a timespan
1443 if {_t} is less than {_tc}:
1444 format slot 24 of {_p} with apple named "&a&lVisit us on YouTube" with lore "&fCome back Tomorrow for your||&fDaily Reward!||||&fCheck out the lastest Video||&fon the %{mineplex.config.servername}% Channel!||&b||&fBe sure and Subscribe so you ||&fdon't miss a video!||&b||&aClick to visit us on YouTube!" to close then run [ytlink({_p})]
1445 else:
1446 format slot 24 of {_p} with apple named "&a&lVisit us on YouTube" with lore "&eClaim your Daily 250 Shard Reward||&fby checking out the latest Video ||&fon the %{mineplex.config.servername}% Channel!||&b||&fBe sure and Subscribe so you ||&fdon't miss a video!||&b||&aClick to visit us on YouTube!" to close then run [ytlink({_p})]
1447 if {mineplex.polltaken.%{poll.id.last}%.%{_p}%} is set:
1448 format slot 28 of {_p} with redstone block named "&cVote on Poll" with lore "||&fYou voted on all of the polls!" to close
1449 else:
1450 format slot 28 of {_p} with book and quill named "&a&lVote on Poll" with lore "||&f%{mineplex.poll.question.%{poll.id.last}%}%||||&b1.) &f%{mineplex.poll.a1.%{poll.id.last}%}%||&b2.) &f%{mineplex.poll.a2.%{poll.id.last}%}%||&b3.) &f%{mineplex.poll.a3.%{poll.id.last}%}%||&b4.) &f%{mineplex.poll.a4.%{poll.id.last}%}%||||&eRewards|| &f%{mineplex.poll.gems.%{poll.id.last}%}% Gems||||&aClick to go to the vote page!" to run [pollVote({_p})]
1451 if {mineplex.thankrewards.%{_p}%} is greater than 0:
1452 format slot 30 of {_p} with emerald named "&a&lThank Rewards" with lore "||&eYour Rewards|| &f%{mineplex.thankrewards.%{_p}%}% Treasure Shards|| ||&fClick to Claim!" to close then run [claimThank({_p})]
1453 else:
1454 format slot 30 of {_p} with redstone block named "&c&lThank Rewards" with lore "||&7Earn Thank Rewards from players using /thank||&7on you, or by enabling Game Amplifiers.||&b||&fGet Amplifiers at &a%{mineplex.config.shoplink}%" to close
1455 format slot 32 of {_p} with tripwire hook named "&a&lWatch an Ad!" with lore "&eEarn 1 Carl Spin Ticket||&fby checking out our partner's Advertisement||||&fYou can watch 5 Ads every 24 hours.||||&fPlease help us keep %{mineplex.config.servername}% awesome||&c&lBe sure to have your AdBlocker disabled!||||&aClick to watch the Ad now!" to be unstealable
1456 format slot 34 of {_p} with egg named "&a&lVisit us on Twitter" with lore "&fCheck out and follow %{mineplex.config.servername}% on||&fTwitter for Giveaways, Announcements,||&fTeasers, and Tips!||||&aClick to visit us on Twitter" to close then run [tlink({_p})]
1457 format slot 40 of {_p} with jukebox named "&a&lVote for %{mineplex.config.servername}%" with lore "||&fClick to Vote!||||&eRewards|| &f1 Carl Spin Ticket|| &f400 Gems||||&eCurrent Streak: &f0||&eStreak Bonus: &f+0%%||||&eHighest Streak: &f0" to be unstealable
1458
1459command /poll [<text>] [<text>] [<text>] [<text>] [<text>] [<text>] [<integer>] [<string>]:
1460 permission: mineplex.admin
1461 permission message: &9Permissions> &7You do not have permission to do that.
1462 trigger:
1463 if arg 1 is set:
1464 if arg 1 is "create":
1465 if arg 2 is set:
1466 if arg 3 is set:
1467 if arg 4 is set:
1468 if arg 5 is set:
1469 if arg 6 is set:
1470 if arg 7 is set:
1471 add 1 to {poll.id.last}
1472 send "&9Poll> &7Rolling out poll with id &e%{poll.id.last}%&7!"
1473 wait 1 second
1474 set {_arg1} to arg 2
1475 set {_arg2} to arg 3
1476 set {_arg3} to arg 4
1477 set {_arg4} to arg 5
1478 set {_arg5} to arg 6
1479 set {mineplex.poll.gems.%{poll.id.last}%} to "%arg 7%" parsed as an integer
1480 replace every "_" with " " in {_arg1}
1481 replace every "_" with " " in {_arg2}
1482 replace every "_" with " " in {_arg3}
1483 replace every "_" with " " in {_arg4}
1484 replace every "_" with " " in {_arg5}
1485 broadcast "&9Poll> &7A new poll is available! Vote in Carl!"
1486 wait 0.5 seconds
1487 send "&9Poll> &7The poll has been rolled out successfully!"
1488 set {mineplex.poll.question.%{poll.id.last}%} to {_arg1}
1489 set {mineplex.poll.a1.%{poll.id.last}%} to {_arg2}
1490 set {mineplex.poll.a2.%{poll.id.last}%} to {_arg3}
1491 set {mineplex.poll.a3.%{poll.id.last}%} to {_arg4}
1492 set {mineplex.poll.a4.%{poll.id.last}%} to {_arg5}
1493 set {mineplex.poll.results.1.%{poll.id.last}%} to 0
1494 set {mineplex.poll.results.2.%{poll.id.last}%} to 0
1495 set {mineplex.poll.results.3.%{poll.id.last}%} to 0
1496 set {mineplex.poll.results.4.%{poll.id.last}%} to 0
1497 else:
1498 send "&9Poll> &7Correct Usage:"
1499 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1500 send "&4/poll results [(id)] Admin"
1501 send ""
1502 send "&9Poll> &7Example:"
1503 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111 Admin"
1504 else:
1505 send "&9Poll> &7Correct Usage:"
1506 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1507 send "&4/poll results [(id)] Admin"
1508 send ""
1509 send "&9Poll> &7Example:"
1510 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1511 else:
1512 send "&9Poll> &7Correct Usage:"
1513 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1514 send "&4/poll results [(id)] Admin"
1515 send ""
1516 send "&9Poll> &7Example:"
1517 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1518 else:
1519 send "&9Poll> &7Correct Usage:"
1520 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1521 send "&4/poll results [(id)] Admin"
1522 send ""
1523 send "&9Poll> &7Example:"
1524 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1525 else:
1526 send "&9Poll> &7Correct Usage:"
1527 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1528 send "&4/poll results [(id)] Admin"
1529 send ""
1530 send "&9Poll> &7Example:"
1531 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1532 else:
1533 send "&9Poll> &7Correct Usage:"
1534 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1535 send "&4/poll results [(id)] Admin"
1536 send ""
1537 send "&9Poll> &7Example:"
1538 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1539 else if arg 1 is "results":
1540 if player has permission "mineplex.admin":
1541 if arg 2 is not set:
1542 open chest with 5 row named "Poll Results" to player
1543 format slot 13 of player with book and quill named "&b&lCurrent Poll" with lore "&eOuestion:||&b%{mineplex.poll.question.%{poll.id.last}%}%|| ||&e&lReward: &f%{mineplex.poll.gems.%{poll.id.last}%}% Gems" to be unstealable
1544 format slot 19 of player with book named "&b&lOption 1" with lore "&eAnswer 1:|| &f%{mineplex.poll.a1.%{poll.id.last}%}%" to be unstealable
1545 format slot 21 of player with book named "&b&lOption 2" with lore "&eAnswer 2:|| &f%{mineplex.poll.a2.%{poll.id.last}%}%" to be unstealable
1546 format slot 23 of player with book named "&b&lOption 3" with lore "&eAnswer 3:|| &f%{mineplex.poll.a3.%{poll.id.last}%}%" to be unstealable
1547 format slot 25 of player with book named "&b&lOption 4" with lore "&eAnswer 4:|| &f%{mineplex.poll.a4.%{poll.id.last}%}%" to be unstealable
1548 format slot 28 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.1.%{poll.id.last}%}% &evotes||&efor answer 1:|| &f%{mineplex.poll.a1.%{poll.id.last}%}%" to be unstealable
1549 format slot 30 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.2.%{poll.id.last}%}% &evotes||&efor answer 2:|| &f%{mineplex.poll.a2.%{poll.id.last}%}%" to be unstealable
1550 format slot 32 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.3.%{poll.id.last}%}% &evotes||&efor answer 3:|| &f%{mineplex.poll.a3.%{poll.id.last}%}%" to be unstealable
1551 format slot 34 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.4.%{poll.id.last}%}% &evotes||&efor answer 4:|| &f%{mineplex.poll.a4.%{poll.id.last}%}%" to be unstealable
1552 else:
1553 set {_id} to arg-2 parsed as a number
1554 if {_id} is 0:
1555 send "&9Poll> &cInvalid Poll ID!"
1556 stop
1557 if {_id} is greater than {poll.id.last}:
1558 send "&9Poll> &cInvalid Poll ID!"
1559 stop
1560 if {_id} is not set:
1561 send "&9Poll> &cInvalid Poll ID!"
1562 stop
1563 open chest with 5 row named "Poll Results" to player
1564 format slot 13 of player with book and quill named "&b&lCurrent Poll" with lore "&eOuestion:||&b%{mineplex.poll.question.%{_id}%}%|| ||&e&lReward: &f%{mineplex.poll.gems.%{_id}%}% Gems" to be unstealable
1565 format slot 19 of player with book named "&b&lOption 1" with lore "&eAnswer 1:|| &f%{mineplex.poll.a1.%{_id}%}%" to be unstealable
1566 format slot 21 of player with book named "&b&lOption 2" with lore "&eAnswer 2:|| &f%{mineplex.poll.a2.%{_id}%}%" to be unstealable
1567 format slot 23 of player with book named "&b&lOption 3" with lore "&eAnswer 3:|| &f%{mineplex.poll.a3.%{_id}%}%" to be unstealable
1568 format slot 25 of player with book named "&b&lOption 4" with lore "&eAnswer 4:|| &f%{mineplex.poll.a4.%{_id}%}%" to be unstealable
1569 format slot 28 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.1.%{_id}%}% &evotes||&efor answer 1:|| &f%{mineplex.poll.a1.%{_id}%}%" to be unstealable
1570 format slot 30 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.2.%{_id}%}% &evotes||&efor answer 2:|| &f%{mineplex.poll.a2.%{_id}%}%" to be unstealable
1571 format slot 32 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.3.%{_id}%}% &evotes||&efor answer 3:|| &f%{mineplex.poll.a3.%{_id}%}%" to be unstealable
1572 format slot 34 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.4.%{_id}%}% &evotes||&efor answer 4:|| &f%{mineplex.poll.a4.%{_id}%}%" to be unstealable
1573 else:
1574 send "&9Permissions> &7You do not have permission to do that."
1575 else:
1576 send "&9Poll> &7Correct Usage:"
1577 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4 (Gem Reward) Admin"
1578 send "&4/poll results [(id)] Admin"
1579 send ""
1580 send "&9Poll> &7Example:"
1581 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1582
1583command /fixanimation:
1584 permission: mineplex.dev
1585 permission message: &9Permissions> &7You do not have permission to do that.
1586 trigger:
1587 loop all entities:
1588 if name of loop-entity is "&a&lCarl the Creeper":
1589 set {_e1} to loop-entity
1590 exit loop
1591 add "{NoAI:0b}" to nbt of {_e1}
1592 teleport {_e1} 100 meters below {_e1}
1593 kill {_e1}
1594
1595command /animation:
1596 permission: mineplex.dev
1597 permission message: &9Permissions> &7You do not have permission to do that.
1598 trigger:
1599 loop all entities:
1600 if name of loop-entity is "&a&lCarl the Creeper":
1601 set {_e1} to loop-entity
1602 exit loop
1603 set {_loc} to location of {_e1}
1604 add "{Fuse:999}" to nbt of {_e1}
1605 add "{ignited:1}" to nbt of {_e1}
1606 wait 1 second
1607 loop all players:
1608 show 1 "Explosion Huge" particles at {_loc} for loop-player
1609 play raw sound "random.explode1" at {_e1} with pitch 1 volume 10
1610 play raw sound "random.explode" at {_e1} with pitch 1 volume 10
1611 wait 0.6 seconds
1612 spawn 1 creeper at location of {_e1}
1613 add "{NoAI:0b}" to nbt of {_e1}
1614 teleport {_e1} 100 meters below {_e1}
1615 kill {_e1}
1616 set {_carl} to spawned creeper
1617 set name of last spawned entity to "&a&lCarl the Creeper"
1618 add "{NoAI:1b}" to nbt of {_carl}
1619 add "{powered:1}" to nbt of {_carl}
1620 apply slowness 255 to last spawned entity for 999 days
1621
1622every 2 minutes:
1623 execute console command "/animation" #Sue me
1624
1625command /ticket [<offline player>] [<string>] [<string>]:
1626 permission: mineplex.admin
1627 permission message: &9Permissions> &7You do not have permission to do that.
1628 trigger:
1629 if arg-1 is set:
1630 if arg-2 is set:
1631 set {_int} to arg-2 parsed as an int
1632 if {_int} is an int:
1633 send "&9Tickets> &7You gave &e%arg-2% &7Carl spin tickets to &e%arg-1%" to sender
1634 send "&9Tickets> &7You recieved &e%arg 2% &7Carl spin tickets" to arg 1
1635 add {_int} to {mineplex.tickets.%arg-1%}
1636 else:
1637 send "&9Tickets> &7Listing Commands"
1638 send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
1639 else:
1640 send "&9Tickets> &7Listing Commands"
1641 send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
1642 else:
1643 send "&9Tickets> &7Listing Commands"
1644 send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
1645
1646on inventory close:
1647 if {opener.%player%} is true:
1648 wait 2 ticks
1649 open chest with 3 rows named "Carl's Spinner" to player
1650
1651every second:
1652 loop all entities:
1653 name of loop-entity contains "&a&lCarl the Creeper"
1654 teleport loop-entity to {kitnpc}
1655
1656on damage:
1657 name of victim contains "&a&lCarl the Creeper"
1658 cancel event
1659
1660on right click on entity:
1661 if player's tool is a chest:
1662 if name of player's tool is "&aCosmetic Menu":
1663 stop
1664 else:
1665 send "&9MCR> &e##BlameWheezy"
1666 else:
1667 name of clicked entity contains "&a&lCarl the Creeper"
1668 if {nospam.%player%} is true:
1669 stop
1670 else:
1671 set {nospam.%player%} to true
1672 carlGUI(player)
1673 wait 1 second
1674 set {nospam.%player%} to false
1675
1676on death:
1677 set {nospam.%victim%} to false
1678
1679on join:
1680 set {nospam.%player%} to false
1681
1682#Broadcast System
1683
1684every 10 seconds:
1685 $ thread
1686 set {_check} to line 1 from url "https://pastebin.com/raw/8YXXWuiA"
1687 if {mineplex.globalannounce.%{_check}%} is not set:
1688 set {mineplex.globalannounce.%{_check}%} to true
1689 $ thread
1690 set {_message} to line 1 from url "https://pastebin.com/raw/fGAUXi37"
1691 send all players title "&eMCR Announcement" with subtitle "&f%{_message}%" for 10 seconds
1692 broadcast "&9MCR Announcement> &b%{_message}%"
1693
1694#Titles
1695
1696function createTitle(arg1: player , arg2: text) :: number:
1697 set {_tploc} to location of {_arg1}
1698 add 1.6 to y-coordinate of {_tploc}
1699 spawn a armor stand at {_tploc}
1700 teleport {%{_arg1}%.title} to {_tploc}
1701 set {%{_arg1}%.title} to the last spawned entity
1702 set metadata value "titleOwner" of last spawned entity to "%{_arg1}%"
1703 add "{CustomName:""%{_arg2}%""}" to nbt of last spawned entity
1704 add "{NoGravity:1}" to nbt of last spawned entity
1705 add "{CustomNameVisible:1}" to nbt of last spawned entity
1706 add "{PersistenceRequired:1}" to nbt of last spawned entity
1707 add "{Invisible:1}" to nbt of last spawned entity
1708 add "{Marker:1}" to nbt of last spawned entity
1709 set {title.%{_arg1}%.active} to true
1710 set {_tploc} to location of {_arg1}
1711 add 1.6 to y-coordinate of {_tploc}
1712 teleport {%{_arg1}%.title} to {_tploc}
1713
1714function removeTitle(arg1: player) :: number:
1715 if {title.%{_arg1}%.active} is true:
1716 kill {%{_arg1}%.title}
1717 set {title.%{_arg1}%.active} to false
1718 delete {%{_arg1}%.title}
1719 set {_void} to location of {_arg1}
1720 remove 256 from y-coordinate of {_void}
1721 loop all entities:
1722 if metadata value "titleOwner" of loop-entity is "%{_arg1}%":
1723 add "{NoGravity:0}" to nbt of loop-entity
1724 teleport loop-entity to {_void}
1725
1726 set {title.%{_arg1}%.active} to false
1727 wait 4 ticks
1728 delete {%{_arg1}%.title}
1729 else:
1730 message "[TitleAPI] Error:" to console
1731 message "[TitleAPI] %{_arg1}% has no title active" to console
1732 stop
1733
1734on any move:
1735 if {title.%player%.active} is true:
1736 set {_tploc} to location of player
1737 add 1.6 to y-coordinate of {_tploc}
1738 teleport {%player%.title} to {_tploc}
1739
1740on any move:
1741 if {title.%player%.active} is true:
1742 push {%player%.title} forwards
1743 set {_tploc} to location of player
1744 add 1.6 to y-coordinate of {_tploc}
1745 teleport {%player%.title} to {_tploc}
1746 make {%player%.title} home towards player
1747 push {%player%.title} forwards
1748
1749command /createtitle [<player>] [<text>]:
1750 permission: mineplex.dev
1751 trigger:
1752 set {_txt} to colored arg 2
1753 removeTitle(arg 1)
1754 message "&9Titles> &7Generating title, please wait..."
1755 wait 5 ticks
1756 createTitle(arg 1, "%{_txt}%")
1757 message "&9Titles> &7Title &e%{_txt}% &7Generated."
1758
1759#protocol hide {_e1} from loop-player
1760
1761on quit:
1762 removeTitle(player)
1763
1764command /removeTitle [<player>]:
1765 trigger:
1766 removeTitle(arg-1)
1767
1768function trackDB(p: player , t: string) :: string:
1769 if {_t} is "aprilfools-2017":
1770 set {_r} to "&5&k?&d 2017 April Fools &5&k?"
1771 if {_t} is "holiday-cheer":
1772 set {_r} to "&c&k?&c Has Santa's Number &c&k?"
1773 if {_t} is "treasure-hunter":
1774 set {_r} to "&c&k?&c Master Treasure Hunter &c&k?"
1775 if {_t} is "leveler":
1776 set {_r} to "&c&k?&c Friend of Douglas &c&k?"
1777 if {_t} is "lucky":
1778 set {_r} to "&c&k?&c Hashtag Blessed &c&k?"
1779 if {_t} is "mineplex-mastery":
1780 set {_r} to "&c&k?&c Mineplex Master &c&k?"
1781 if {_t} is "party-animal":
1782 set {_r} to "&c&k?&c Life is a Party &c&k?"
1783 if {_t} is "peaceful":
1784 set {_r} to "&c&k?&c Pacifist &c&k?"
1785 if {_t} is "perfectionist":
1786 set {_r} to "&c&k?&c Doer of Things &c&k?"
1787 if {_t} is "power-play":
1788 if {mineplex.ppc.%{_p}%} is set:
1789 set {_r} to "&b&k?&b Power Play Club &b&k?"
1790 else:
1791 return "perm"
1792 if {_t} is "sweet-tooth":
1793 set {_r} to "&c&k?&c Candy Addict &c&k?"
1794 if {_t} is "unlucky":
1795 set {_r} to "&c&k?&c Things Don't Go My Way &c&k?"
1796 if {_t} is "warrior":
1797 set {_r} to "&c&k?&c Champion &c&k?"
1798 if {_t} is "gotta-go":
1799 set {_r} to "&6┬┴┬┴┤(・_├┬┴┬┴)"
1800 if {_t} is "santas-helper":
1801 set {_r} to "&c&l&ka&r &f&lSanta's Helper &r&c&l&ka"
1802 if {_t} is "staff-trainee":
1803 if {p} has permission "mineplex.trainee":
1804 set {_r} to "&6&kK&r &6Choo Choo &kK"
1805 else:
1806 return "perm"
1807 if {_t} is "staff-moderator":
1808 if {p} has permission "mineplex.mod":
1809 set {_r} to "&6&kK&r &6My name isn't mod &kK"
1810 else:
1811 return "perm"
1812 if {_t} is "staff-sr_moderator":
1813 if {p} has permission "mineplex.srmod":
1814 set {_r} to "&6&kK&r &6My Team's the Best Team &kK"
1815 else:
1816 return "perm"
1817 if {_t} is "staff-leader":
1818 if {_p} has permission "mineplex.leader":
1819 set {_r} to "&c&kK&4 What's a leader? &c&kK"
1820 else:
1821 return "perm"
1822 if {_t} is "mcr-patreon":
1823 if {_p} is "WheezyGold7931" :
1824 set {_r} to "&6&kK&c&l MCR Patreon &6&kK"
1825 else:
1826 return "perm"
1827 if {_t} is "mcr-staff":
1828 if {_p} is "WheezyGold7931" or "TheSkripterDK" or "Torksi" or "Y7S" or "ItzRenderman" or "NaiculS" or "Drawfull" or "Keyloren" or "citrin_" or "Torksi" or "Mike70387" or "Nathan100" or "GetRekt3" or "Rage_Dog" or "TonyMaster21":
1829 set {_r} to "&6&kK&6&l MCR Staff &6&kK"
1830 else:
1831 return "perm"
1832 if {_t} is "mcr-dev":
1833 if {_p} is "WheezyGold7931" or "TheSkripterDK" or "Torksi" or "ItzRenderman":
1834 set {_r} to "&6&kK&c&l MCR Dev &6&kK"
1835 else:
1836 return "perm"
1837 if {_t} is "mcr-headcouncil":
1838 if {_p} is "WheezyGold7931" or "NaiculS" or "Drawfull" or "Keyloren" or "Torksi" or "Mike70387":
1839 set {_r} to "&6&kK&4&l MCR Head Council &6&kK"
1840 else:
1841 return "perm"
1842 if {_t} is "mcr-creator":
1843 if {_p} is "WheezyGold7931":
1844 set {_r} to "&6&kK&d&l MCR Creator &6&kK"
1845 else:
1846 return "perm"
1847 if {_r} is not set:
1848 set {_r} to "false"
1849 return {_r}
1850
1851command /track [<string>] [<string>]:
1852 trigger:
1853 if {mineplex.track.%player%} is set:
1854 send "&9Track> &7You have disabled your active track"
1855 removeTitle(player)
1856 delete {mineplex.track.%player%}
1857 else:
1858 if arg 1 is not set:
1859 send "&9Track> &7You must specify the ID of a track to enable"
1860 else:
1861 set {_track} to trackDB(player, arg-1)
1862 if {_track} is "false":
1863 send "&9Track> &7That is not a valid track"
1864 stop
1865 if {_track} is "perm":
1866 send "&9Track> &7You have not unlocked any tiers on that track"
1867 stop
1868 removeTitle(player)
1869 wait 5 ticks
1870 createTitle(player, {_track})
1871 send "&9Track> &7Your active track has been updated to %{_track}%"
1872 set {mineplex.track.%player%} to {_track}
1873
1874#Cosmetics
1875on join:
1876 message "&9Cosmetics> &7You enabled all Previously enabled Cosmetics" to player
1877
1878command /chestmeup:
1879 trigger:
1880 give player chest named "&aCosmetic Menu"
1881
1882function mountapi(p: player, action: text, type: text) :: number:
1883 if {_action} is "remove":
1884 set {_loc} to {_p}'s location
1885 add -100000 to y-coordinate of {_loc}
1886 teleport {currentmount.%{_p}%} to {_loc}
1887 delete {currentmount.%{_p}%}
1888 message "&9Mount> &7Despawned &e%{currentmount.%{_p}%.type}%" to {_p}
1889 set {currentmount.%{_p}%.type} to "None"
1890 if {_action} is "create":
1891 if {_type} is "slime":
1892 if {currentmount.%{_p}%} is set:
1893 message "&9MountAPI> &6[WARN] &7%{_p}% already has a mount active. The Action has been canceled." to console
1894 stop
1895 spawn a slime at {_p}
1896 set {currentmount.%{_p}%} to the last spawned entity
1897 add "{CustomName:""%{_p}%'s Slime""}" to nbt of last spawned entity
1898 add "{CustomNameVisible:1}" to nbt of last spawned entity
1899 add "{PersistenceRequired:1}" to nbt of last spawned entity
1900 add "{Size:1}" to nbt of last spawned entity
1901 add "{Attributes:{Name:generic.attackDamage,Base:0},[{Name:generic.followRange,Base:0}]}" to nbt of last spawned entity
1902 add "{ActiveEffects:[{Id:18,Amplifier:255,Duration:19999980,ShowParticles:0b}]}" to nbt of last spawned entity
1903 set {currentmount.%{_p}%.type} to "Slime Mount"
1904 while {currentmount.%{_p}%} is alive:
1905 wait 15 ticks
1906 {_p} is online
1907 if distance between {currentmount.%{_p}%} and {_p} is less than 5:
1908 make {currentmount.%{_p}%} pathfind to {_p} with speed 1
1909 else if distance between {currentmount.%{_p}%} and {_p} is more than 15:
1910 teleport {currentmount.%{_p}%} to {_p}
1911 else:
1912 make {currentmount.%{_p}%} pathfind to {_p} with speed 2
1913
1914
1915
1916function cosmetic_system(arg1: text , arg2: text , p: player) :: number:
1917 set {_wither} to "MHF_WSkeleton" parsed as a player
1918 if {_arg1} is "menu":
1919 if {_arg2} is "gadgets":
1920 if {mineplex.%{_p}%.cosmetics.gadgets.pearl} is not set:
1921 set {mineplex.%{_p}%.cosmetics.gadgets.pearl} to 0
1922 if {mineplex.%{_p}%.cosmetics.gadgets.firework} is not set:
1923 set {mineplex.%{_p}%.cosmetics.gadgets.firework} to 0
1924 if {mineplex.%{_p}%.cosmetics.gadgets.coal} is not set:
1925 set {mineplex.%{_p}%.cosmetics.gadgets.coal} to 0
1926 if {mineplex.%{_p}%.cosmetics.gadgets.tnt} is not set:
1927 set {mineplex.%{_p}%.cosmetics.gadgets.tnt} to 0
1928 if {mineplex.%{_p}%.cosmetics.gadgets.snowball} is not set:
1929 set {mineplex.%{_p}%.cosmetics.gadgets.snowball} to 0
1930 wait 2 ticks
1931 open chest with 6 rows named "Inventory" to {_p}
1932 wait 4 ticks
1933 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1934 format slot 10 of {_p} with ender pearl named "&a&lEthereal Pearl" with lore "||&7These Pearls are stolen from||&7sleeping Endermen!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.pearl}%" to close then run [cosmetic_system("use", "pearl", {_p})]
1935 if {mineplex.gadget.selected.%{_p}%} is "pearl":
1936 format slot 10 of {_p} with shiny ender pearl named "&a&lEthereal Pearl" with lore "||&7These Pearls are stolen from||&7sleeping Endermen!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.pearl}%" to close then run [cosmetic_system("use", "pearl", {_p})]
1937
1938 format slot 11 of {_p} with firework rocket named "&a&lFireworks" with lore "||&7Need to celebrate? These||&7Fireworks should do the trick!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.firework}%" to close then run [cosmetic_system("use", "firework", {_p})]
1939 if {mineplex.gadget.selected.%{_p}%} is "firework":
1940 format slot 11 of {_p} with shiny firework rocket named "&a&lFireworks" with lore "||&7Need to celebrate? These||&7Fireworks should do the trick!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.firework}%" to close then run [cosmetic_system("use", "firework", {_p})]
1941 format slot 14 of {_p} with snowball named "&a&lSnowballs" with lore "||&fJoin in on the festive fun by||&fthrowing show at people!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.snowball}%" to close then run [cosmetic_system("use", "snowball", {_p})]
1942 if {mineplex.gadget.selected.%{_p}%} is "Snowball":
1943 format slot 14 of {_p} with shiny snowball named "&a&lSnowballs" with lore "||&fJoin in on the festive fun by||&fthrowing show at people!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.snowball}%" to close then run [cosmetic_system("use", "snowball", {_p})]
1944 format slot 12 of {_p} with tnt named "&a&lTNT" with lore "||&7Thowing tnt at %{mineplex.config.servername}%||&7Staff is highly encouraged!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.tnt}%" to close then run [cosmetic_system("use", "tnt", {_p})]
1945 if {mineplex.gadget.selected.%{_p}%} is "tnt":
1946 format slot 12 of {_p} with shiny tnt named "&a&lTNT" with lore "||&7Thowing tnt at %{mineplex.config.servername}%||&7Staff is highly encouraged!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.tnt}%" to close then run [cosmetic_system("use", "tnt", {_p})]
1947 format slot 13 of {_p} with coal named "&a&lCoal" with lore "||&7Just a large chunk of coal.||&7Maybe you were naughty or||&7something||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.coal}%" to close then run [cosmetic_system("use", "coal", {_p})]
1948 if {mineplex.gadget.selected.%{_p}%} is "coal":
1949 format slot 13 of {_p} with shiny coal named "&a&lCoal" with lore "||&7Just a large chunk of coal.||&7Maybe you were naughty or||&7something||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.coal}%" to close then run [cosmetic_system("use", "coal", {_p})]
1950 if {_arg2} is "main":
1951 if {mineplex.%{_p}%.cosmetics.morphs} is not set:
1952 set {mineplex.%{_p}%.cosmetics.morphs} to 0
1953 if {mineplex.%{_p}%.cosmetics.hats} is not set:
1954 set {mineplex.%{_p}%.cosmetics.hats} to 0
1955 wait 2 ticks
1956 open chest with 6 rows named "Inventory" to {_p}
1957 set {mineplex.error.slot} to 0
1958 wait 4 ticks
1959 loop 54 times:
1960 format slot {mineplex.error.slot} of {_p} with black glass pane named "&8" with lore "&6" to be unstealable
1961 add 1 to {mineplex.error.slot}
1962 format slot 1 of {_p} with nether star named "&a&lParticle Effects" with lore "||&7Show everyone how cool you ||&7are with swirly particles that ||&7follow you when you walk. ||&8Visible Everywhere ||||&fYou own 0/22 ||||&fActive: &eNone ||&aLeft-click to view category" to close then run [cosmetic_system("menu", "particles", {_p})]
1963 format slot 10 of {_p} with arrow named "&a&lArrow Effects" with lore "||&7Your arrows will now leave ||&7Particle Trails as they soar ||&7through the air ||&8Visible In Games ||||&fYou own 0/13 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1964 format slot 28 of {_p} with golden boots named "&a&lDouble Jump Effects" with lore "||&7Demonstrate your parkour ||&7prowess with sweet particles ||&7when you double jump ||&8Visible Everywhere ||||&fYou own 0/13 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1965 format slot 19 of {_p} with skeleton head named "&a&lDeath Animations" with lore "||&7Your death will now be mourned ||&7with a wonderfull particle ||&7tribute ||&8Visible In Games ||||&fYou own 0/13 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1966 format slot 22 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore " ||&7This seems like it might come in||&7handy. Maybe I can collect more!" to be unstealable
1967 format slot 49 of {_p} with melon block named "&a&lGadgets" with lore "||&fAll sorts of zany contraptions||&7to use on your friends and||&7foes.||&8Useable in Lobbies||||&fYou own 4/4||||&fActive: &e%{mineplex.gadget.selected.%{_p}%}%||&aClick to view Category" to close then run [cosmetic_system("menu", "gadgets", {_p})]
1968 format slot 25 of {_p} with leather named "&a&lMorphs" with lore "||&7Have you ever wanted to be a||&7tiger? Well, you cant be a||&7tiger! Thats silly! But you can||&7be mny other things!||&8Useable in Lobbies||||&fYou own %{mineplex.%{_p}%.cosmetics.morphs}%/4||||&fActive: &e%{mineplex.currentmorph.%{_p}%}%||&aClick to view Category" to close then run [cosmetic_system("menu", "morphs", {_p})]
1969 format slot 50 of {_p} with iron horse armor named "&a&lMounts" with lore "||&7Why walk when you can ride? ||&7Summon fancy mounts to help ||&7you move in style. ||&8Usable In Lobbies ||||&fYou own %{mineplex.%{_p}%.cosmetics.mounts}%/1 ||||&fActive: &e%{currentmount.%{_p}%.type}% ||&aLeft-click to view category" to close then run [cosmetic_system("menu", "mounts", {_p})]
1970 format slot 51 of {_p} with bone named "&a&lPets" with lore "||&7Life on a server can get ||&7lonely sometimes. summon an ||&7adorable pet to follow you ||&7around and cheer you up! ||&8Usable In Lobbies ||||&fYou own 0/16 ||||&fActive: &eNone ||&aLeft-click to view category" to close then run [cosmetic_system("menu", "pets", {_p})]
1971 format slot 7 of {_p} with golden helmet named "&a&lHats" with lore "||&7Hats are in this year. Wear||&7them on your head to impress||&7the ladies.||&8Useable in Lobbies||||&fYou own %{mineplex.%{_p}%.cosmetics.hats}%/2" to close then run [cosmetic_system("menu", "hats", {_p})]
1972 format slot 16 of {_p} with diamond chestplate named "&A&LCostumes" with lore "||&7Sometimes going out calls for ||&7Special Clothes! Gain bonus ||&7effects for matching outfits. ||&8Usable In Lobbies ||||&fYou own 0/12 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1973 format slot 48 of {_p} with music disc named "&A&LMusic" with lore "||&7I JUST WANT TO DANCE WITH ||&7YOU! ||&8Usable In Lobbies ||||&fYou own 0/11 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1974 format slot 31 of {_p} with name tag named "&A&lTaunts" with lore "||&7Taunt your enemies or just ||&7show off. Use /taunt to have ||&7a good time! ||&8Visible In Games ||||&fYou own 0/1 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1975 format slot 13 of {_p} with cake item named "&A&LWin Effects" with lore "||&7Winning a game with your ||&7friends is all good and dandy, ||&7but being able to also ||&7show off awesome effects is ||&7even more fun! ||&8Visible In Games ||||&fYou own 0/10 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1976 format slot 21 of {_p} with torch named "&A&lGame Modifiers" with lore "||&7Cosmetic effects which changes ||&7appearances of objects in ||&7game. ||&8Visible In Games ||||&fYou own 0/25 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1977 format slot 47 of {_p} with lead named "&A&lBalloons" with lore "||&7Balloons are collectibles that ||&7you can float above your head ||&7as you wander the lobby. You ||&7can have up to 10 balloons in ||&7you hand at one time. ||&8Usable In Lobbies ||||&fYou own 0/14 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
1978 format slot 23 of {_p} with lever named "&a&lKit Selector Particles" with lore "||&7Click here to select different||&7particles to indicate which kit you have selected!||&8Usable In Game Lobbies||||&fYou own 0/8 ||##||&aLeft-click to view category" to be unstealable
1979 format slot 34 of {_p} with banner named "&a&lFlags" with lore "||&7Show off your country's flag!||&8Usable In Lobbies||||&fYou own 0/2 ||||&aLeft-click to view category" to be unstealable
1980
1981
1982
1983
1984 if {_arg2} is "pets":
1985 if {mineplex.%{_p}%.cosmetics.pets.ocelot} is not set:
1986 set {mineplex.%{_p}%.cosmetics.pets.ocelot} to 0
1987 if {mineplex.%{_p}%.cosmetics.pets.wolf} is not set:
1988 set {mineplex.%{_p}%.cosmetics.pets.wolf} to 0
1989 if {mineplex.%{_p}%.cosmetics.pets.chicken} is not set:
1990 set {mineplex.%{_p}%.cosmetics.pets.chicken} to 0
1991 wait 2 ticks
1992 open chest with 6 rows named "Inventory" to {_p}
1993 wait 4 ticks
1994 format slot 4 of {_p} with bed item named "&7? Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1995 format slot 10 of {_p} with gray dye named "&c&lGuardian" with lore "||&7Your very own Guardian!||&cUnlocked with Titan Rank" to close then run [cosmetic_system("use", "guardian", {_p})]
1996 format slot 11 of {_p} with gray dye named "&c&lCat" with lore "||&7Your very own Cat!" to close then run [cosmetic_system("use", "ocelot", {_p})]
1997 format slot 12 of {_p} with gray dye named "&c&lDog" with lore "||&7Your very own Dog!" to close then run [cosmetic_system("use", "wolf", {_p})]
1998 format slot 13 of {_p} with gray dye named "&c&lChicken" with lore "||&7Your very own Chicken!" to close then run [cosmetic_system("use", "chicken", {_p})]
1999 if {_arg2} is "morphs":
2000 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not set:
2001 set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 0
2002 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not set:
2003 set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 0
2004 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not set:
2005 set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 0
2006 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not set:
2007 set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 0
2008 wait 2 ticks
2009 open chest with 6 rows named "Inventory" to {_p}
2010 wait 4 ticks
2011 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
2012 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 0:
2013 format slot 10 of {_p} with gray dye named "&c&lVillager Morph" with lore "||&7HURRRR! MURR HURRR!||||&f&lCOST: &b12000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_villager", {_p})]
2014 else:
2015 format slot 10 of {_p} with emerald named "&a&lVillager Morph" with lore "||&7HURRRR! MURR HURRR!||||&aClick to use" to close then run [cosmetic_system("use", "morph_villager", {_p})]
2016 if {mineplex.currentmorph.%{_p}%} is "Villager Morph":
2017 format slot 10 of {_p} with shiny emerald named "&a&lVillager Morph" with lore "||&7HURRRR! MURR HURRR!||||&aClick disable" to close then run [cosmetic_system("use", "morph_villager", {_p})]
2018 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 0:
2019 format slot 11 of {_p} with gray dye named "&c&lSlime Morph" with lore "||&7Splat Splat!||||&f&lCOST: &b20000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_slime", {_p})]
2020 else:
2021 format slot 11 of {_p} with slimeball named "&a&lSlime Morph" with lore "||&7Splat Splat!||||&aClick to enable." to close then run [cosmetic_system("use", "morph_slime", {_p})]
2022 if {mineplex.currentmorph.%{_p}%} is "Slime Morph":
2023 format slot 11 of {_p} with shiny slimeball named "&a&lSlime Morph" with lore "||&7Splat Splat!||||&aClick to disable." to close then run [cosmetic_system("use", "morph_slime", {_p})]
2024 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 0:
2025 format slot 12 of {_p} with gray dye named "&c&lCreeper Morph" with lore "||&7Hissss!||||&f&lCOST: &b10000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_creeper", {_p})]
2026 else:
2027 format slot 12 of {_p} with gunpowder named "&a&lCreeper Morph" with lore "||&7Hissssss!||||&aClick to enable." to close then run [cosmetic_system("use", "morph_creeper", {_p})]
2028 if {mineplex.currentmorph.%{_p}%} is "Creeper Morph":
2029 format slot 12 of {_p} with shiny gunpowder named "&a&lCreeper Morph" with lore "||&7Hissssss!||||&aClick to disable." to close then run [cosmetic_system("use", "morph_creeper", {_p})]
2030 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 0:
2031 format slot 13 of {_p} with gray dye named "&c&lCow Morph" with lore "||&7How now brown cow?||||&f&lCOST: &b6000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_cow", {_p})]
2032 else:
2033 format slot 13 of {_p} with steak named "&a&lCow Morph" with lore "||&7How now brown cow?||||&aClick to enable." to close then run [cosmetic_system("use", "morph_cow", {_p})]
2034 if {mineplex.currentmorph.%{_p}%} is "Cow Morph":
2035 format slot 13 of {_p} with shiny steak named "&a&lCow Morph" with lore "||&7Moooo!||||&aClick to disable." to close then run [cosmetic_system("use", "morph_cow", {_p})]
2036 if {_p} has permission "mineplex.legend":
2037 format slot 14 of {_p} with {_wither}'s skull named "&a&lWither Morph" with lore "||&7Legends have foretold the||&7coming of a powerful Wither...||||&fFly through the air!||||&aClick to Enable" to close then run [cosmetic_system("use", "morph_wither", {_p})]
2038 if {mineplex.currentmorph.%{_p}%} is "Wither Morph":
2039 format slot 14 of {_p} with shiny {_wither}'s skull named "&a&lWither Morph" with lore "||&7Legends have foretold the||&7coming of a powerful Wither...||||&fFly through the air!||||&aClick to Disable" to close then run [cosmetic_system("use", "morph_wither", {_p})]
2040 else:
2041 format slot 14 of {_p} with gray dye named "&c&lWither Morph" with lore "||&7Legends have foretold the||&7coming of a powerful Wither...||||&fFly through the air!||||&aUnlocked with Legend Rank" to be unstealable
2042
2043 if {_arg2} is "hats":
2044 wait 2 ticks
2045 open chest with 6 rows named "Inventory" to {_p}
2046 wait 4 ticks
2047 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
2048 if {mineplex.hat.%{_p}%.owned.compCube} is not set:
2049 set {mineplex.hat.%{_p}%.owned.compCube} to 0
2050 if {mineplex.hat.%{_p}%.owned.present} is not set:
2051 set {mineplex.hat.%{_p}%.owned.present} to 0
2052 if {mineplex.hat.%{_p}%.owned.compCube} is 0:
2053 format slot 10 of {_p} with gray dye named "&c&lCompanion Cube" with lore "||&7The Enrichment Center is||&7required to remind you that||&7the Weighted Companion cube||&7cannot talk. In the event that it does talk The Enrichment||&7Center asks you to ignore its||&7advice.||||&9Found in Treasure Chests" to be unstealable
2054 else:
2055 format slot 10 of {_p} with stone:6 named "&a&lCompanion Cube" with lore "||&7The Enrichment Center is||&7required to remind you that||&7the Weighted Companion cube||&7cannot talk. In the event that it does talk The Enrichment||&7Center asks you to ignore its||&7advice.||||&aClick to enable" to close then run [cosmetic_system("use", "hat_compCube", {_p})]
2056 if {mineplex.hat.selected.%{_p}%} is "compCube":
2057 format slot 10 of {_p} with shiny stone:6 named "&a&lCompanion Cube" with lore "||&7The Enrichment Center is||&7required to remind you that||&7the Weighted Companion cube||&7cannot talk. In the event that||&7it does talk The Enrichment||&7Center asks you to ignore its||&7advice.||||&aClick to disable" to close then run [cosmetic_system("use", "hat_compCube", {_p})]
2058 if {mineplex.hat.%{_p}%.owned.present} is 0:
2059 format slot 11 of {_p} with gray dye named "&c&lPresent" with lore "||&7WHAT'S IN THE PRESENT? Oh, it's||&7just you...||||&9Found in Treasure Chests" to be unstealable
2060 else:
2061 format slot 11 of {_p} with chest named "&a&lPresent" with lore "||&7WHAT'S IN THE PRESENT? Oh, it's||&7just you...||||&aClick to enable." to close then run [cosmetic_system("use", "hat_present", {_p})]
2062 if {mineplex.hat.selected.%{_p}%} is "present":
2063 format slot 11 of {_p} with shiny chest named "&a&lPresent" with lore "||&7WHAT'S IN THE PRESENT? Oh, it's||&7just you...||||&aClick to disable." to close then run [cosmetic_system("use", "hat_present", {_p})]
2064 if {_arg2} is "particles":
2065 wait 2 ticks
2066 open chest with 6 rows named "Inventory" to {_p}
2067 wait 4 ticks
2068 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
2069 if {mineplex.particle.%{_p}%.owned.shadow} is not set:
2070 set {mineplex.particle.%{_p}%.owned.shadow} to 0
2071 if {mineplex.particle.%{_p}%.owned.shadow} is 0:
2072 format slot 10 of {_p} with gray dye named "&c&lShadow Walk" with lore "||&7In a world where footprints do||&7not exist, leaving you shadow||&7behind is the next best thing!||||&9Found in Treasure Chests" to be unstealable
2073 else:
2074 format slot 10 of {_p} with leather boots named "&a&lShadow Walk" with lore "||&7In a world where footprints do||&7not exist, leaving you shadow||&7behind is the next best thing!||||&aClick to enable" to close then run [cosmetic_system("use", "particle_shadow", {_p})]
2075 if {mineplex.particle.selected.%{_p}%} is "shadow":
2076 format slot 10 of {_p} with shiny leather boots named "&a&lShadow Walk" with lore "||&7In a world where footprints do||&7not exist, leaving you shadow||&7behind is the next best thing!||||&aClick to disabe" to close then run [cosmetic_system("use", "particle_shadow", {_p})]
2077 if {mineplex.particle.%{_p}%.owned.flame} is 0:
2078 format slot 11 of {_p} with gray dye named "&c&lFlame Rings" with lore "||&7Forged from the blazing rods||&7of 1000 Blazes by the||&7infamous Nether King.||||&9Found in Treasure Chests" to be unstealable
2079 else:
2080 format slot 11 of {_p} with blaze rod named "&a&lFlame Rings" with lore "||&7Forged from the blazing rods||&7of 1000 Blazes by the||&7infamous Nether King.||||&aClick to enable" to close then run [cosmetic_system("use", "particle_flame", {_p})]
2081 if {mineplex.particle.selected.%{_p}%} is "flame":
2082 format slot 11 of {_p} with shiny blaze rod named "&a&lFlame Rings" with lore "||&7Forged from the blazing rods||&7of 1000 Blazes by the||&7infamous Nether King.||||&aClick to disabe" to close then run [cosmetic_system("use", "particle_flame", {_p})]
2083 if {_arg2} is "mounts":
2084 if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is not set:
2085 set {mineplex.%{_p}%.cosmetics.mounts.owned.slime} to 0
2086 wait 2 ticks
2087 open chest with 6 rows named "Inventory" to {_p}
2088 wait 4 ticks
2089 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
2090 if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is 0:
2091 format slot 10 of {_p} with gray dye named "&c&lSlime Mount" with lore "||&7Splat Splat!||||&f&lCOST: &b12000 Treasure Shards" to close then run [cosmetic_system("buy", "mount_slime", {_p})]
2092 else:
2093 format slot 10 of {_p} with slimeball named "&a&lSlime Mount" with lore "||&7Splat Splat!||||&aClick to use" to close then run [cosmetic_system("use", "mount_slime", {_p})]
2094 if {currentmount.%{_p}%.type} is "Slime Mount":
2095 format slot 10 of {_p} with shiny slimeball named "&a&lSlime Mount" with lore "||&7Splat Splat!||||&aClick disable" to close then run [cosmetic_system("use", "mount_slime", {_p})]
2096
2097
2098 if {_arg1} is "use":
2099 if {_arg2} is "hat_compCube":
2100 if {mineplex.hat.selected.%{_p}%} is "compCube":
2101 wait 1 tick
2102 message "&9Gadget> &7You unequipped &eCompanion Cube" to {_p}
2103 set {mineplex.hat.selected.%{_p}%} to "none"
2104 execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0"
2105 cosmetic_system("menu", "hats", {_p})
2106 stop
2107 if {mineplex.hat.%{_p}%.owned.compCube} is 1:
2108 wait 1 tick
2109 execute console command "/replaceitem entity %{_p}% slot.armor.head skull 1 3 {display:{Name:&a&lCompanion Cube},SkullOwner:{Id:c1e0dbe1-7fef-4de0-96d2-59aa96dafef7,Properties:{textures:[{Value:eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMmU1ZDZjNTY5N2U2ZTA2MmEzNjc5YzdiZjU0MDg0YjU4ZWIzZTNjYWE1N2U0MGFkZjZlNTJmMjFiYzM1Mzk1In19fQ==}]}}}"
2110 message "&9Gadget> &7You equipped &eCompanion Cube" to {_p}
2111 set {mineplex.hat.selected.%{_p}%} to "compCube"
2112 cosmetic_system("menu", "hats", {_p})
2113 if {_arg1} is "use":
2114 if {_arg2} is "hat_present":
2115 if {mineplex.hat.selected.%{_p}%} is "present":
2116 message "&9Gadget> &7You unequipped &ePresent" to {_p}
2117 set {mineplex.hat.selected.%{_p}%} to "none"
2118 execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0"
2119 cosmetic_system("menu", "hats", {_p})
2120 stop
2121 if {mineplex.hat.%{_p}%.owned.compCube} is 1:
2122 execute console command "/replaceitem entity %{_p}% slot.armor.head skull 1 3 {display:{Name:&a&lPresent},SkullOwner:{Id:d350d00d-4dbb-46a9-b769-60bd67546da3,Properties:{textures:[{Value:eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTE4ZjhmMTE1MTRjMWZmYmM2ZTk5OTc1ZDdjYTZiNWJhZjkyZGM5MjRjNTIyM2M0ZWM0OTY5M2NkZmNiOCJ9fX0=}]}}}"
2123 message "&9Gadget> &7You equipped &ePresent" to {_p}
2124 set {mineplex.hat.selected.%{_p}%} to "present"
2125 cosmetic_system("menu", "hats", {_p})
2126 if {_arg1} is "use":
2127 if {_arg2} is "particle_shadow":
2128 if {mineplex.particle.selected.%{_p}%} is "shadow":
2129 message "&9Gadget> &7You unequipped &eShadow Walk" to {_p}
2130 set {mineplex.particle.selected.%{_p}%} to "none"
2131 cosmetic_system("menu", "particles", {_p})
2132 stop
2133 if {mineplex.particle.%{_p}%.owned.shadow} is 1:
2134 message "&9Gadget> &7You equipped &eShadow Walk" to {_p}
2135 set {mineplex.particle.selected.%{_p}%} to "shadow"
2136 cosmetic_system("menu", "particles", {_p})
2137 if {_arg2} is "particle_flame":
2138 if {mineplex.particle.selected.%{_p}%} is "flame":
2139 message "&9Gadget> &7You unequipped &eFlame Rings" to {_p}
2140 set {mineplex.particle.selected.%{_p}%} to "none"
2141 cosmetic_system("menu", "particles", {_p})
2142 stop
2143 if {mineplex.particle.%{_p}%.owned.flame} is 1:
2144 message "&9Gadget> &7You equipped &eFlame Rings" to {_p}
2145 set {mineplex.particle.selected.%{_p}%} to "flame"
2146 cosmetic_system("menu", "particles", {_p})
2147 if {_arg1} is "use":
2148 if {_arg2} is "ocelot":
2149 if {mineplex.pets.ocelot.active.%{_p}%} is not set:
2150 set {mineplex.pets.ocelot.active.%{_p}%} to false
2151 if {mineplex.pets.ocelot.active.%{_p}%} is false:
2152 spawn a ocelot at {_p}
2153 set {_ocelotpet} to the last spawned entity
2154 add "{CustomName:&a%{_p}%'s&c Pet Cat}" to nbt of last spawned entity
2155 add "{Silent:1}" to nbt of last spawned entity
2156 add "{CustomNameVisible:1}" to nbt of last spawned entity
2157 add "{PersistenceRequired:1}" to nbt of last spawned entity
2158 tame {_ocelotpet} to {_p}
2159 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
2160 set {mineplex.pets.ocelot.active.%{_p}%} to true
2161 while {pet::%{_p}%} is alive:
2162 wait 15 ticks
2163 {_p} is online
2164 if distance between {pet::%{_p}%} and {_p} is less than 5:
2165 make {pet::%{_p}%} pathfind to {_p} with speed 1
2166 else if distance between {pet::%{_p}%} and {_p} is more than 15:
2167 teleport {pet::%{_p}%} to {_p}
2168 else:
2169 make {pet::%{_p}%} pathfind to {_p} with speed 2
2170 else:
2171 if {mineplex.pets.ocelot.active.%{_p}%} is true:
2172 kill {pet::%{_p}%}
2173 delete {pet::%{_p}%}
2174 set {mineplex.pets.ocelot.active.%{_p}%} to false
2175 if {_arg1} is "use":
2176 if {_arg2} is "wolf":
2177 if {mineplex.pets.wolf.active.%{_p}%} is not set:
2178 set {mineplex.pets.wolf.active.%{_p}%} to false
2179 if {mineplex.pets.wolf.active.%{_p}%} is false:
2180 spawn a wolf at {_p}
2181 set {_ocelotpet} to the last spawned entity
2182 add "{CustomName:&a%{_p}%'s&c Pet Wolf}" to nbt of last spawned entity
2183 add "{Silent:1}" to nbt of last spawned entity
2184 add "{CustomNameVisible:1}" to nbt of last spawned entity
2185 add "{PersistenceRequired:1}" to nbt of last spawned entity
2186 tame {_ocelotpet} to {_p}
2187 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
2188 set {mineplex.pets.wolf.active.%{_p}%} to true
2189 while {pet::%{_p}%} is alive:
2190 wait 15 ticks
2191 {_p} is online
2192 if distance between {pet::%{_p}%} and {_p} is less than 5:
2193 make {pet::%{_p}%} pathfind to {_p} with speed 1
2194 else if distance between {pet::%{_p}%} and {_p} is more than 15:
2195 teleport {pet::%{_p}%} to {_p}
2196 else:
2197 make {pet::%{_p}%} pathfind to {_p} with speed 2
2198 else:
2199 if {mineplex.pets.wolf.active.%{_p}%} is true:
2200 kill {pet::%{_p}%}
2201 delete {pet::%{_p}%}
2202 set {mineplex.pets.wolf.active.%{_p}%} to false
2203 if {_arg1} is "use":
2204 if {_arg2} is "chicken":
2205 if {mineplex.pets.chicken.active.%{_p}%} is not set:
2206 set {mineplex.pets.chicken.active.%{_p}%} to false
2207 if {mineplex.pets.chicken.active.%{_p}%} is false:
2208 spawn a chicken at {_p}
2209 set {_ocelotpet} to the last spawned entity
2210 add "{CustomName:&a%{_p}%'s&c Pet Chicken}" to nbt of last spawned entity
2211 add "{Silent:1}" to nbt of last spawned entity
2212 add "{CustomNameVisible:1}" to nbt of last spawned entity
2213 add "{PersistenceRequired:1}" to nbt of last spawned entity
2214 tame {_ocelotpet} to {_p}
2215 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
2216 set {mineplex.pets.chicken.active.%{_p}%} to true
2217 while {pet::%{_p}%} is alive:
2218 wait 15 ticks
2219 {_p} is online
2220 if distance between {pet::%{_p}%} and {_p} is less than 5:
2221 make {pet::%{_p}%} pathfind to {_p} with speed 1
2222 else if distance between {pet::%{_p}%} and {_p} is more than 15:
2223 teleport {pet::%{_p}%} to {_p}
2224 else:
2225 make {pet::%{_p}%} pathfind to {_p} with speed 2
2226 else:
2227 if {mineplex.pets.chicken.active.%{_p}%} is true:
2228 kill {pet::%{_p}%}
2229 delete {pet::%{_p}%}
2230 set {mineplex.pets.chicken.active.%{_p}%} to false
2231 if {_arg1} is "use":
2232 if {_arg2} is "guardian":
2233 if {mineplex.pets.guardian.active.%{_p}%} is not set:
2234 set {mineplex.pets.guardian.active.%{_p}%} to false
2235 if {mineplex.pets.guardian.active.%{_p}%} is false:
2236 spawn a guardian at {_p}
2237 set {_ocelotpet} to the last spawned entity
2238 add "{CustomName:&a%{_p}%'s&c Pet Guardian}" to nbt of last spawned entity
2239 add "{Silent:1}" to nbt of last spawned entity
2240 add "{CustomNameVisible:1}" to nbt of last spawned entity
2241 add "{PersistenceRequired:1}" to nbt of last spawned entity
2242 tame {_ocelotpet} to {_p}
2243 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
2244 set {mineplex.pets.guardian.active.%{_p}%} to true
2245 while {pet::%{_p}%} is alive:
2246 wait 15 ticks
2247 {_p} is online
2248 if distance between {pet::%{_p}%} and {_p} is less than 5:
2249 make {pet::%{_p}%} pathfind to {_p} with speed 1
2250 else if distance between {pet::%{_p}%} and {_p} is more than 15:
2251 teleport {pet::%{_p}%} to {_p}
2252 else:
2253 make {pet::%{_p}%} pathfind to {_p} with speed 2
2254 else:
2255 if {mineplex.pets.guardian.active.%{_p}%} is true:
2256 kill {pet::%{_p}%}
2257 delete {pet::%{_p}%}
2258 set {mineplex.pets.guardian.active.%{_p}%} to false
2259 if {_arg1} is "use":
2260 if {_arg2} is "coal":
2261 if {mineplex.gadget.selected.%{_p}%} is "coal":
2262 message "&9Gadget> &7You unequipped &eCoal" to {_p}
2263 set {mineplex.gadget.selected.%{_p}%} to "none"
2264 set slot 3 of {_p} to air with name "lolz"
2265 cosmetic_system("menu", "gadgets", {_p})
2266 stop
2267 message "&9Gadget> &7You equipped &eCoal" to {_p}
2268 set {mineplex.gadget.selected.%{_p}%} to "coal"
2269 set slot 3 of {_p} to coal with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.coal}% Coal"
2270 cosmetic_system("menu", "gadgets", {_p})
2271 stop
2272 if {_arg1} is "buy":
2273 wait 2 ticks
2274 open chest with 6 rows named " Confirmation" to {_p}
2275 wait 2 ticks
2276 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f10000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2277 format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable
2278 format slot 27 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2279 format slot 28 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2280 format slot 29 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2281 format slot 36 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2282 format slot 37 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2283 format slot 38 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2284 format slot 45 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2285 format slot 46 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2286 format slot 47 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2287 format slot 33 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2288 format slot 34 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2289 format slot 35 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2290 format slot 42 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2291 format slot 43 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2292 format slot 44 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2293 format slot 51 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2294 format slot 52 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2295 format slot 53 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2296 #Mounts
2297 if {_arg2} is "mount_slime":
2298 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
2299 message "&9Gadget> &7You already own this mount!" to {_p}
2300 else:
2301 format slot 22 of {_p} with slimeball named "&fSlime Mount" with lore "&fSplat Splat!" to be unstealable
2302 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f10000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2303 #Morphs
2304 if {_arg2} is "morph_creeper":
2305 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
2306 message "&9Gadget> &7You already own this morph!" to {_p}
2307 else:
2308 format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable
2309 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f10000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2310 if {_arg2} is "morph_cow":
2311 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1:
2312 message "&9Gadget> &7You already own this morph!" to {_p}
2313 else:
2314 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f60000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2315 format slot 22 of {_p} with steak named "&fCow Morph" with lore "&fMooooo!" to be unstealable
2316 if {_arg2} is "morph_slime":
2317 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
2318 message "&9Gadget> &7You already own this morph!" to {_p}
2319 else:
2320 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f20000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2321 format slot 22 of {_p} with slimeball named "&fSlime Morph" with lore "&fSplat Splat!" to be unstealable
2322 if {_arg2} is "morph_villager":
2323 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1:
2324 message "&9Gadget> &7You already own this morph!" to {_p}
2325 else:
2326 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f12000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2327 format slot 22 of {_p} with emerald named "&fVillager Morph" with lore "&fMURRR! HURR MURRR!" to be unstealable
2328 #Gadgets
2329 if {_arg2} is "pearl":
2330 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f500 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2331 format slot 22 of {_p} with ender pearl named "&fEthereal Pearl" with lore "&fThese Pearls are stolen from||&fsleeping Endermen!" to be unstealable
2332 if {_arg2} is "firework":
2333 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f500 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2334 format slot 22 of {_p} with firework rocket named "&fFirework" with lore "&fNeed to celebrate? These||&fFireworks should do the trick!" to be unstealable
2335 if {_arg2} is "tnt":
2336 format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f500 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
2337 format slot 22 of {_p} with tnt named "&fTNT" with lore "&fThowing tnt at %{mineplex.config.servername}%||&fStaff is highly encouraged!" to be unstealable
2338 if {_arg1} is "confirm":
2339 if {_arg2} is "mount_slime":
2340 if {mineplex.shards.%{_p}%} is bigger than 9999:
2341 set {mineplex.proc.slot} to 45
2342 wait 2 ticks
2343 open chest with 6 rows named " Confirmation" to {_p}
2344 loop 9 times:
2345 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2346 wait 1 tick
2347 add 1 to {mineplex.proc.slot}
2348 if {mineplex.proc.slot} is 54:
2349 message "&9Cosmetics> &7Purchased &eSlime Mount" to {mineplex.chest.buyplayer.%{_p}%}
2350 set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1
2351 delShards({_p}, 10000)
2352 add 1 to {mineplex.%{_p}%.cosmetics.mounts}
2353 set {mineplex.error.slot} to 0
2354 loop 54 times:
2355 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eCreeper Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
2356 add 1 to {mineplex.error.slot}
2357 wait 2 ticks
2358 stop
2359 if {mineplex.shards.%{_p}%} is not bigger than 9999:
2360 wait 2 ticks
2361 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2362 set {mineplex.error.slot} to 0
2363 loop 54 times:
2364 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "mounts", {_p})]
2365 add 1 to {mineplex.error.slot}
2366 if {_arg1} is "use":
2367 if {_arg2} is "mount_slime":
2368 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1:
2369 message "&9Gadget> &7You dont own this mount." to {_p}
2370 stop
2371 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
2372 if {mineplex.currentmorph.%{_p}%} is not set:
2373 set {mineplex.currentmorph.%{_p}%} to "None"
2374 if {currentmount.%{_p}%.type} is not "Slime Mount":
2375 if {currentmount.%{_p}%.type} is not "None":
2376 message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p}
2377 message "&9Gadget> &7You spawned &eSlime Mount" to {_p}
2378 mountapi({_p}, "create", "slime")
2379 cosmetic_system("menu", "mounts", {_p})
2380 stop
2381 if {currentmount.%{_p}%.type} is "Slime Mount":
2382 message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p}
2383 set {mineplex.currentmorph.%{_p}%} to "None"
2384 mountapi({_p}, "remove", "notused")
2385 cosmetic_system("menu", "morphs", {_p})
2386 stop
2387 if {_arg1} is "confirm":
2388 if {_arg2} is "morph_creeper":
2389 if {mineplex.shards.%{_p}%} is bigger than 9999:
2390 set {mineplex.proc.slot} to 45
2391 wait 2 ticks
2392 open chest with 6 rows named " Confirmation" to {_p}
2393 loop 9 times:
2394 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2395 wait 1 tick
2396 add 1 to {mineplex.proc.slot}
2397 if {mineplex.proc.slot} is 54:
2398 message "&9Cosmetics> &7Purchased &eCreeper Morph" to {mineplex.chest.buyplayer.%{_p}%}
2399 set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 1
2400 delShards({_p}, 10000)
2401 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2402 set {mineplex.error.slot} to 0
2403 loop 54 times:
2404 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eCreeper Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
2405 add 1 to {mineplex.error.slot}
2406 wait 2 ticks
2407 stop
2408 if {mineplex.shards.%{_p}%} is not bigger than 9999:
2409 wait 2 ticks
2410 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2411 set {mineplex.error.slot} to 0
2412 loop 54 times:
2413 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2414 add 1 to {mineplex.error.slot}
2415 if {_arg1} is "use":
2416 if {_arg2} is "morph_creeper":
2417 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1:
2418 message "&9Gadget> &7You dont own this morph." to {_p}
2419 stop
2420 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
2421 if {mineplex.currentmorph.%{_p}%} is not set:
2422 set {mineplex.currentmorph.%{_p}%} to "None"
2423 if {mineplex.currentmorph.%{_p}%} is not "Creeper Morph":
2424 if {mineplex.currentmorph.%{_p}%} is not "None":
2425 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2426 message "&9Gadget> &7You morphed into &eCreeper Morph" to {_p}
2427 set {mineplex.currentmorph.%{_p}%} to "Creeper Morph"
2428 execute console command "odisguise %{_p}% creeper"
2429 cosmetic_system("menu", "morphs", {_p})
2430 stop
2431 if {mineplex.currentmorph.%{_p}%} is "Creeper Morph":
2432 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2433 set {mineplex.currentmorph.%{_p}%} to "None"
2434 execute console command "undisguise %{_p}%"
2435 cosmetic_system("menu", "morphs", {_p})
2436 stop
2437 if {_arg1} is "use":
2438 if {_arg2} is "morph_wither":
2439 if {_p} has permission "mineplex.legend":
2440 if {mineplex.currentmorph.%{_p}%} is not set:
2441 set {mineplex.currentmorph.%{_p}%} to "None"
2442 if {mineplex.currentmorph.%{_p}%} is not "Wither Morph":
2443 if {mineplex.currentmorph.%{_p}%} is not "None":
2444 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2445 message "&9Gadget> &7You morphed into &eWither Morph" to {_p}
2446 set {mineplex.currentmorph.%{_p}%} to "Wither Morph"
2447 execute console command "odisguise %{_p}% wither"
2448 set {mineplex.dj.%{_p}%} to 0
2449 set {_p}'s flight state to true
2450 cosmetic_system("menu", "morphs", {_p})
2451 stop
2452 if {mineplex.currentmorph.%{_p}%} is "Wither Morph":
2453 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2454 set {mineplex.currentmorph.%{_p}%} to "None"
2455 execute console command "undisguise %{_p}%"
2456 set {mineplex.dj.%{_p}%} to 1
2457 set {_p}'s flight state to false
2458 cosmetic_system("menu", "morphs", {_p})
2459 stop
2460 else:
2461 message "&9Gadget> &7You dont own this Morph" to {_p}
2462 if {_arg1} is "confirm":
2463 if {_arg2} is "morph_cow":
2464 if {mineplex.shards.%{_p}%} is bigger than 5999:
2465 set {mineplex.proc.slot} to 45
2466 wait 2 ticks
2467 open chest with 6 rows named " Confirmation" to {_p}
2468 loop 9 times:
2469 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2470 wait 1 tick
2471 add 1 to {mineplex.proc.slot}
2472 if {mineplex.proc.slot} is 54:
2473 message "&9Cosmetics> &7Purchased &eCow Morph" to {mineplex.chest.buyplayer.%{_p}%}
2474 set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 1
2475 delShards({_p}, 6000)
2476 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2477 set {mineplex.error.slot} to 0
2478 loop 54 times:
2479 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eCow Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
2480 add 1 to {mineplex.error.slot}
2481 wait 2 ticks
2482 stop
2483 if {mineplex.shards.%{_p}%} is not bigger than 9999:
2484 wait 2 ticks
2485 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2486 set {mineplex.error.slot} to 0
2487 loop 54 times:
2488 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2489 add 1 to {mineplex.error.slot}
2490 if {_arg1} is "use":
2491 if {_arg2} is "morph_cow":
2492 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not 1:
2493 message "&9Gadget> &7You dont own this morph." to {_p}
2494 stop
2495 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1:
2496 if {mineplex.currentmorph.%{_p}%} is not set:
2497 set {mineplex.currentmorph.%{_p}%} to "None"
2498 if {mineplex.currentmorph.%{_p}%} is not "Cow Morph":
2499 if {mineplex.currentmorph.%{_p}%} is not "None":
2500 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2501 message "&9Gadget> &7You morphed into &eCow Morph" to {_p}
2502 set {mineplex.currentmorph.%{_p}%} to "Cow Morph"
2503 execute console command "odisguise %{_p}% cow"
2504 cosmetic_system("menu", "morphs", {_p})
2505 stop
2506 if {mineplex.currentmorph.%{_p}%} is "Cow Morph":
2507 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2508 set {mineplex.currentmorph.%{_p}%} to "None"
2509 execute console command "undisguise %{_p}%"
2510 cosmetic_system("menu", "morphs", {_p})
2511 stop
2512 if {_arg1} is "confirm":
2513 if {_arg2} is "morph_slime":
2514 if {mineplex.shards.%{_p}%} is bigger than 19999:
2515 set {mineplex.proc.slot} to 45
2516 wait 2 ticks
2517 open chest with 6 rows named " Confirmation" to {_p}
2518 loop 9 times:
2519 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2520 wait 1 tick
2521 add 1 to {mineplex.proc.slot}
2522 if {mineplex.proc.slot} is 54:
2523 message "&9Cosmetics> &7Purchased &eSlime Morph" to {mineplex.chest.buyplayer.%{_p}%}
2524 set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1
2525 delShards({_p}, 20000)
2526 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2527 set {mineplex.error.slot} to 0
2528 loop 54 times:
2529 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eSlime Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
2530 add 1 to {mineplex.error.slot}
2531 wait 2 ticks
2532 stop
2533 if {mineplex.shards.%{_p}%} is not bigger than 19999:
2534 wait 2 ticks
2535 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2536 set {mineplex.error.slot} to 0
2537 loop 54 times:
2538 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2539 add 1 to {mineplex.error.slot}
2540 if {_arg1} is "use":
2541 if {_arg2} is "morph_slime":
2542 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not 1:
2543 message "&9Gadget> &7You dont own this morph." to {_p}
2544 stop
2545 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
2546 if {mineplex.currentmorph.%{_p}%} is not set:
2547 set {mineplex.currentmorph.%{_p}%} to "None"
2548 if {mineplex.currentmorph.%{_p}%} is not "Slime Morph":
2549 if {mineplex.currentmorph.%{_p}%} is not "None":
2550 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2551 message "&9Gadget> &7You morphed into &eSlime Morph" to {_p}
2552 set {mineplex.currentmorph.%{_p}%} to "Slime Morph"
2553 execute console command "odisguise %{_p}% slime"
2554 cosmetic_system("menu", "morphs", {_p})
2555 stop
2556 if {mineplex.currentmorph.%{_p}%} is "Slime Morph":
2557 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2558 set {mineplex.currentmorph.%{_p}%} to "None"
2559 execute console command "undisguise %{_p}%"
2560 cosmetic_system("menu", "morphs", {_p})
2561 stop
2562 if {_arg1} is "confirm":
2563 if {_arg2} is "morph_villager":
2564 if {mineplex.shards.%{_p}%} is bigger than 11999:
2565 set {mineplex.proc.slot} to 45
2566 wait 2 ticks
2567 open chest with 6 rows named " Confirmation" to {_p}
2568 loop 9 times:
2569 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2570 wait 1 tick
2571 add 1 to {mineplex.proc.slot}
2572 if {mineplex.proc.slot} is 54:
2573 message "&9Cosmetics> &7Purchased &eVillager Morph" to {mineplex.chest.buyplayer.%{_p}%}
2574 set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 1
2575 delShards({_p}, 12000)
2576 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2577 set {mineplex.error.slot} to 0
2578 loop 54 times:
2579 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eVillager morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
2580 add 1 to {mineplex.error.slot}
2581 wait 2 ticks
2582 stop
2583 if {mineplex.shards.%{_p}%} is not bigger than 499:
2584 wait 3 ticks
2585 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2586 wait 2 ticks
2587 set {mineplex.error.slot} to 0
2588 loop 54 times:
2589 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2590 add 1 to {mineplex.error.slot}
2591 if {_arg1} is "use":
2592 if {_arg2} is "morph_villager":
2593 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not 1:
2594 message "&9Gadget> &7You dont own this morph." to {_p}
2595 stop
2596 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1:
2597 if {mineplex.currentmorph.%{_p}%} is not set:
2598 set {mineplex.currentmorph.%{_p}%} to "None"
2599 if {mineplex.currentmorph.%{_p}%} is not "villager Morph":
2600 if {mineplex.currentmorph.%{_p}%} is not "None":
2601 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2602 message "&9Gadget> &7You morphed into &eVillager Morph" to {_p}
2603 set {mineplex.currentmorph.%{_p}%} to "Villager Morph"
2604 execute console command "odisguise %{_p}% villager"
2605 cosmetic_system("menu", "morphs", {_p})
2606 stop
2607 if {mineplex.currentmorph.%{_p}%} is "Villager Morph":
2608 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2609 set {mineplex.currentmorph.%{_p}%} to "None"
2610 execute console command "undisguise %{_p}%"
2611 cosmetic_system("menu", "morphs", {_p})
2612 stop
2613 if {_arg1} is "use":
2614 if {_arg2} is "pearl":
2615 if {mineplex.gadget.selected.%{_p}%} is "Ethereal Pearl":
2616 message "&9Gadget> &7You unequipped &eEthereal Pearl" to {_p}
2617 set {mineplex.gadget.selected.%{_p}%} to "None"
2618 set slot 3 of {_p} to air with name "lolz"
2619 cosmetic_system("menu", "gadgets", {_p})
2620 stop
2621 message "&9Cosmetics> &7You equipped &eEthereal Pearl" to {_p}
2622 set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.pearl}% &5Ethereal Pearls"
2623 set {mineplex.gadget.selected.%{_p}%} to "Ethereal Pearl"
2624 cosmetic_system("menu", "gadgets", {_p})
2625 stop
2626 if {_arg1} is "confirm":
2627 if {_arg2} is "pearl":
2628 if {mineplex.shards.%{_p}%} is bigger than 499:
2629 set {mineplex.proc.slot} to 45
2630 wait 2 ticks
2631 open chest with 6 rows named " Confirmation" to {_p}
2632 loop 9 times:
2633 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2634 wait 1 tick
2635 add 1 to {mineplex.proc.slot}
2636 if {mineplex.proc.slot} is 54:
2637 message "&9Cosmetics> &7Purchased 50x &eEthereal Pearl" to {mineplex.chest.buyplayer.%{_p}%}
2638 add 50 to {mineplex.%{_p}%.cosmetics.gadgets.pearl}
2639 delShards({_p}, 50)
2640 set {mineplex.error.slot} to 0
2641 loop 54 times:
2642 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased 50x &eEthereal Pearl" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2643 add 1 to {mineplex.error.slot}
2644 wait 2 ticks
2645 stop
2646 if {mineplex.shards.%{_p}%} is not bigger than 499:
2647 wait 2 ticks
2648 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2649 set {mineplex.error.slot} to 0
2650 loop 54 times:
2651 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2652 add 1 to {mineplex.error.slot}
2653 if {_arg1} is "use":
2654 if {_arg2} is "firework":
2655 if {mineplex.gadget.selected.%{_p}%} is "Fireworks":
2656 message "&9Gadget> &7You unequipped &eFireworks" to {_p}
2657 set {mineplex.gadget.selected.%{_p}%} to "None"
2658 set slot 3 of {_p} to air with name "lolz"
2659 cosmetic_system("menu", "gadgets", {_p})
2660 stop
2661 message "&9Gadget> &7You equipped &eFireworks" to {_p}
2662 set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.firework}% &eFireworks"
2663 set {mineplex.gadget.selected.%{_p}%} to "Fireworks"
2664 cosmetic_system("menu", "gadgets", {_p})
2665 stop
2666 if {_arg1} is "use":
2667 if {_arg2} is "tnt":
2668 if {mineplex.gadget.selected.%{_p}%} is "TNT":
2669 message "&9Gadget> &7You unequipped &eTNT" to {_p}
2670 set {mineplex.gadget.selected.%{_p}%} to "None"
2671 set slot 3 of {_p} to air with name "lolz"
2672 cosmetic_system("menu", "gadgets", {_p})
2673 stop
2674 message "&9Gadget> &7You equipped &eTNT" to {_p}
2675 set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.tnt}% &eTNT"
2676 set {mineplex.gadget.selected.%{_p}%} to "TNT"
2677 cosmetic_system("menu", "gadgets", {_p})
2678 if {_arg1} is "use":
2679 if {_arg2} is "snowball":
2680 if {mineplex.gadget.selected.%{_p}%} is "Snowball":
2681 message "&9Gadget> &7You unequipped &eSnowball" to {_p}
2682 set {mineplex.gadget.selected.%{_p}%} to "None"
2683 set slot 3 of {_p} to air with name "lolz"
2684 cosmetic_system("menu", "gadgets", {_p})
2685 stop
2686 message "&9Gadget> &7You equipped &eSnowball" to {_p}
2687 set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.snowball}% &eSnowballs"
2688 set {mineplex.gadget.selected.%{_p}%} to "Snowball"
2689 cosmetic_system("menu", "gadgets", {_p})
2690 if {_arg1} is "confirm":
2691 if {_arg2} is "firework":
2692 if {mineplex.shards.%{_p}%} is bigger than 499:
2693 set {mineplex.proc.slot} to 45
2694 wait 2 ticks
2695 open chest with 6 rows named " Confirmation" to {_p}
2696 loop 9 times:
2697 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2698 wait 1 tick
2699 add 1 to {mineplex.proc.slot}
2700 if {mineplex.proc.slot} is 54:
2701 message "&9Cosmetics> &7Purchased 50x &eFireworks" to {_p}
2702 add 50 to {mineplex.%{_p}%.cosmetics.gadgets.firework}
2703 delShards({_p}, 500)
2704 set {mineplex.error.slot} to 0
2705 loop 54 times:
2706 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased 50x &eFirworks" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2707 add 1 to {mineplex.error.slot}
2708 wait 2 ticks
2709 stop
2710 if {mineplex.shards.%{_p}%} is not bigger than 499:
2711 wait 2 ticks
2712 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2713 set {mineplex.error.slot} to 0
2714 loop 54 times:
2715 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2716 add 1 to {mineplex.error.slot}
2717 if {_arg1} is "confirm":
2718 if {_arg2} is "tnt":
2719 if {mineplex.shards.%{_p}%} is bigger than 499:
2720 set {mineplex.proc.slot} to 45
2721 wait 2 ticks
2722 open chest with 6 rows named " Confirmation" to {_p}
2723 loop 9 times:
2724 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2725 wait 1 tick
2726 add 1 to {mineplex.proc.slot}
2727 if {mineplex.proc.slot} is 54:
2728 message "&9Cosmetics> &7Purchased 50x &eTNT" to {_p}
2729 add 50 to {mineplex.%{_p}%.cosmetics.gadgets.tnt}
2730 delShards({_p}, 500)
2731 set {mineplex.error.slot} to 0
2732 loop 54 times:
2733 format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased 50x &eTNT" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2734 add 1 to {mineplex.error.slot}
2735 wait 2 ticks
2736 stop
2737 if {mineplex.shards.%{_p}%} is not bigger than 499:
2738 wait 2 ticks
2739 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2740 set {mineplex.error.slot} to 0
2741 loop 54 times:
2742 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2743 add 1 to {mineplex.error.slot}
2744
2745on right click:
2746 if player's tool is a chest:
2747 if name of player's tool is "&aCosmetic Menu":
2748 cancel event
2749 cosmetic_system("menu", "main", player)
2750
2751on left click:
2752 if player's tool is a chest:
2753 if name of player's tool is "&aCosmetic Menu":
2754 cancel event
2755 cosmetic_system("menu", "main", player)
2756
2757on damage:
2758 victim's name contains "Pet"
2759 cancel event
2760
2761on any move:
2762 if {mineplex.particle.selected.%player%} is "shadow":
2763 loop all players:
2764 show 1 "footstep" particles at location of player for loop-player offset by 0.4, 0.7, 0.4
2765 if {mineplex.particle.selected.%player%} is "flame":
2766 loop all players:
2767 show 1 "flame" particles at location of player for loop-player offset by 0.4, 0.7, 0.4
2768
2769command /giveitem [<player>] [<number>] [<text>]:
2770 permission: mineplex.support
2771 permission message: &9Permissions> &7You do not have permission to do that.
2772 trigger:
2773 if arg 3 is "hat_compCube":
2774 if {mineplex.hat.%arg 1%.owned.compCube} is 1:
2775 message "&9Cosmetics> &e%arg 1% &7already owns &eCompanion Cube"
2776 stop
2777 set {mineplex.hat.%arg 1%.owned.compCube} to 1
2778 add 1 to {mineplex.%arg 1%.cosmetics.hats}
2779 message "&9Cosmetics> &7You gave &e%arg 1% Companion Cube" to player
2780 message "&9Cosmetics> &7You recieved the &eCompanion Cube &7from &e%player%" to arg 1
2781 stop
2782 if arg 3 is "hat_present":
2783 if {mineplex.hat.%arg 1%.owned.present} is 1:
2784 message "&9Cosmetics> &e%arg 1% &7already owns &ePresent"
2785 stop
2786 set {mineplex.hat.%arg 1%.owned.present} to 1
2787 add 1 to {mineplex.%arg 1%.cosmetics.hats}
2788 message "&9Cosmetics> &7You gave &e%arg 1% Present" to player
2789 message "&9Cosmetics> &7You recieved the &ePresent &7from &e%player%" to arg 1
2790 stop
2791 if arg 3 is "particle_shadow":
2792 if {mineplex.particle.%arg 1%.owned.shadow} is 1:
2793 message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk"
2794 stop
2795 set {mineplex.particle.%arg 1%.owned.shadow} to 1
2796 add 1 to {mineplex.%arg 1%.cosmetics.particles}
2797 message "&9Cosmetics> &7You gave &e%arg 1% Shadow Walk" to player
2798 message "&9Cosmetics> &7You recieved the &eShadow Walk &7from &e%player%" to arg 1
2799 stop
2800 if arg 3 is "particle_flame":
2801 if {mineplex.particle.%arg 1%.owned.flame} is 1:
2802 message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk"
2803 stop
2804 set {mineplex.particle.%arg 1%.owned.flame} to 1
2805 add 1 to {mineplex.%arg 1%.cosmetics.particles}
2806 message "&9Cosmetics> &7You gave &e%arg 1% Flame Rings" to player
2807 message "&9Cosmetics> &7You recieved the &eFlame Rings &7from &e%player%" to arg 1
2808 stop
2809 if arg 3 is "take:hat_compCube":
2810 if {mineplex.hat.%arg 1%.owned.compCube} is 0:
2811 message "&9Cosmetics> &e%arg 1% &7doesnt own &eCompanion Cube"
2812 stop
2813 set {mineplex.hat.%arg 1%.owned.compCube} to 0
2814 remove 1 from {mineplex.%arg 1%.cosmetics.hats}
2815 message "&9Cosmetics> &7You took &e%arg 1%'s Companion Cube" to player
2816 message "&9Cosmetics> &e%player% &7took your &eCompanion Cube" to arg 1
2817 stop
2818 if arg 3 is "take:hat_present":
2819 if {mineplex.hat.%arg 1%.owned.present} is 0:
2820 message "&9Cosmetics> &e%arg 1% &7doesnt own &ePresent"
2821 stop
2822 set {mineplex.hat.%arg 1%.owned.present} to 0
2823 remove 1 from {mineplex.%arg 1%.cosmetics.hats}
2824 message "&9Cosmetics> &7You took &e%arg 1%'s Present" to player
2825 message "&9Cosmetics> &e%player% &7took your &ePresent" to arg 1
2826 stop
2827 if arg 3 is "pearl":
2828 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.pearl}
2829 message "&9Item> &7You gave %arg 2% Ethereal Pearls &7to player %arg 1%" to player
2830 message "&9Item> &e%player% &7gave you &e%arg 2% Ethereal Pearls" to arg 1
2831 stop
2832 if arg 3 is "fireworks":
2833 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.firework}
2834 message "&9Item> &7You gave %arg 2% Fireworks &7to player %arg 1%" to player
2835 message "&9Item> &e%player% &7gave you &e%arg 2% Fireworks" to arg 1
2836 stop
2837 if arg 3 is "coal":
2838 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.coal}
2839 message "&9Item> &7You gave %arg 2% Coal &7to player %arg 1%" to player
2840 message "&9Item> &e%player% &7gave you &e%arg 2% Coal" to arg 1
2841 stop
2842 if arg 3 is "tnt":
2843 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.tnt}
2844 message "&9Item> &7You gave %arg 2% TNT &7to player %arg 1%" to player
2845 message "&9Item> &e%player% &7gave you &e%arg 2% TNT" to arg 1
2846 stop
2847 if arg 3 is "snowball":
2848 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.snowball}
2849 message "&9Item> &7You gave %arg 2% Snowballs &7to player %arg 1%" to player
2850 message "&9Item> &e%player% &7gave you &e%arg 2% Snowballs" to arg 1
2851 stop
2852 message "&9Cosmetics> &c&lInvalid Cosmetic."
2853
2854
2855command /gadget:
2856 permission: mineplex.admin
2857 permission message: &9Permissions> &7You do not have permission to do that.
2858 trigger:
2859 if {mineplex.cosmetics} is not set:
2860 set {mineplex.cosmetics} to 1
2861 if {mineplex.cosmetics} is 1:
2862 set {mineplex.cosmetics} to 0
2863 broadcast "&f&lGadgets/Mounts are now &c&lDisabled"
2864 stop
2865 if {mineplex.cosmetics} is 0:
2866 set {mineplex.cosmetics} to 1
2867 broadcast "&f&lGadgets/Mounts are now &a&lEnabled"
2868 stop
2869
2870every tick:
2871 loop all players:
2872 if {mineplex.cosmetics} is not set:
2873 set {mineplex.cosmetics} to 1
2874 if {mineplex.cosmetics} is 0:
2875 set slot 3 of loop-player to air with name "remove"
2876 stop
2877 loop-player's gamemode is not creative:
2878 if {mineplex.cosmetics.%loop-player%} is not set:
2879 set {mineplex.cosmetics.%loop-player%} to 1
2880 if {mineplex.gadget.selected.%loop-player%} is "Ethereal Pearl":
2881 set slot 3 of loop-player to ender pearl with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.pearl}% Ethereal Pearl"
2882 if {mineplex.gadget.selected.%loop-player%} is "Fireworks":
2883 set slot 3 of loop-player to firework rocket with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.firework}% Fireworks"
2884 if {mineplex.gadget.selected.%loop-player%} is "Coal":
2885 set slot 3 of loop-player to coal with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.coal}% Coal"
2886 if {mineplex.gadget.selected.%loop-player%} is "TNT":
2887 set slot 3 of loop-player to tnt with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.tnt}% TNT"
2888 if {mineplex.gadget.selected.%loop-player%} is "Snowball":
2889 set slot 3 of loop-player to snowball with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.snowball}% Snowballs"
2890
2891
2892on shoot:
2893 if projectile is an enderpearl:
2894 if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.pearl}% Ethereal Pearl":
2895 if {mineplex.%shooter%.cosmetics.gadgets.pearl} is 0:
2896 cancel event
2897 cosmetic_system("buy", "pearl", shooter)
2898 stop
2899 if {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} is 1:
2900 set action bar of shooter to "&f&lEthereal Pearl is recharging"
2901 cancel event
2902 stop
2903 remove 1 from {mineplex.%shooter%.cosmetics.gadgets.pearl}
2904 set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 1
2905 message "&9Skill> &7You threw &aEthereal Pearl&7." to shooter
2906 make shooter ride projectile
2907 wait 3 ticks
2908 make shooter ride projectile
2909 wait 3 seconds
2910 set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 0
2911 set action bar of shooter to "&a&lEthereal Pearl Recharged."
2912 if projectile is an snowball:
2913 if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.snowball}% Snowballs":
2914 if {mineplex.%shooter%.cosmetics.gadgets.snowball} is 0:
2915 cancel event
2916 message "&9Gadget> &7You have no Snowballs left!" to shooter
2917 stop
2918 if {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} is 1:
2919 set action bar of shooter to "&f&lSnowball is recharging"
2920 cancel event
2921 stop
2922 remove 1 from {mineplex.%shooter%.cosmetics.gadgets.snowball}
2923 set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 1
2924 message "&9Skill> &7You threw &aSnowball&7." to shooter
2925 wait 10 ticks
2926 set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 0
2927 set action bar of shooter to "&a&lSnowball Recharged."
2928
2929on right click:
2930 if player's tool is tnt:
2931 if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.tnt}% TNT":
2932 if {mineplex.%player%.cosmetics.gadgets.tnt} is less than 1:
2933 cosmetic_system("buy", "tnt", player)
2934 stop
2935 if {mineplex.%player%.cosmetics.gadgets.tntCooldown} is 1:
2936 set action bar of player to "&f&lTNT is recharging"
2937 stop
2938 remove 1 from {mineplex.%player%.cosmetics.gadgets.tnt}
2939 spawn a primed tnt 1 meter above the player
2940 add "{Fuse:60}" to nbt of the spawned entity
2941 push the spawned entity in direction of player at speed 0.9
2942 push the spawned entity upwards at speed 0.2
2943 message "&9Skill> &7You threw &aTNT&7."
2944 set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 1
2945 wait 3 seconds
2946 set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 0
2947 set action bar of player to "&a&lTNT Recharged."
2948
2949on right click:
2950 if player's tool is firework rocket:
2951 if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.firework}% Fireworks":
2952 if {mineplex.%player%.cosmetics.gadgets.firework} is 0:
2953 cancel event
2954 cosmetic_system("buy", "firework", player)
2955 stop
2956 if {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} is 1:
2957 set action bar of player to "&f&lFireworks &f&lis recharging..."
2958 cancel event
2959 stop
2960 remove 1 from {mineplex.%player%.cosmetics.gadgets.firework}
2961 cancel event
2962 set {firework} to a random integer from 1 to 15
2963 if {firework} is 1:
2964 launch creeper firework colored red at player timed 1
2965 if {firework} is 2:
2966 launch burst firework colored green at player timed 1
2967 if {firework} is 3:
2968 launch ball firework colored yellow at player timed 1
2969 if {firework} is 4:
2970 launch ball firework colored blue at player timed 1
2971 if {firework} is 5:
2972 launch burst firework colored red at player timed 1
2973 if {firework} is 6:
2974 launch creeper firework colored light green at player timed 1
2975 if {firework} is 7:
2976 launch burst firework colored light green at player timed 1
2977 if {firework} is 8:
2978 launch ball firework colored orange at player timed 1
2979 if {firework} is 9:
2980 launch burst firework colored orange at player timed 1
2981 if {firework} is 10:
2982 launch creeper firework colored pink at player timed 1
2983 if {firework} is 11:
2984 launch burst firework colored orange at player timed 1
2985 if {firework} is 12:
2986 launch burst firework colored light green at player timed 1
2987 if {firework} is 13:
2988 launch burst firework colored blue at player timed 1
2989 if {firework} is 14:
2990 launch burst firework colored blue at player timed 1
2991 if {firework} is 15:
2992 launch burst firework colored yellow at player timed 1
2993 set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 1
2994 message "&9Skill> &7You used &aFireworks&7."
2995 wait 10 ticks
2996 set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 0
2997 set action bar of player to "&a&lFireworks Recharged."
2998on right click:
2999 if player's tool is coal:
3000 if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.coal}% Coal":
3001 if {mineplex.%player%.cosmetics.gadgets.coal} is 0:
3002 message "&9Coal> &7You should go and get some coal..."
3003 stop
3004 if {mineplex.%player%.cosmetics.gadgets.coalCooldown} is 1:
3005 set action bar of player to "&f&lCoal &f&lis recharging..."
3006 cancel event
3007 stop
3008 message "&9Skill> &7You used &aCoal&7."
3009 set {coalMessage} to a random integer from 1 to 10
3010 if {coalMessage} is 1:
3011 message "&9Coal> &7Maybe you could... eat it?"
3012 if {coalMessage} is 2:
3013 message "&9Coal> &7Now... if you only had a furnace."
3014 if {coalMessage} is 3:
3015 message "&9Coal> &7Did you know a diamond is formed from coal?"
3016 if {coalMessage} is 4:
3017 message "&9Coal> &7Coal is a word that sounds wierd if you say it too much."
3018 if {coalMessage} is 5:
3019 message "&9Coal> &7Did you know coal is used for &knothing&7!"
3020 if {coalMessage} is 6:
3021 message "&9Coal> &7I hope you didn't miss any diamonds."
3022 if {coalMessage} is 7:
3023 message "&9Coal> &7Na na na na, Na na na na, &8BLACK COAL"
3024 if {coalMessage} is 8:
3025 message "&9Coal> &7With 9 of these you could make a Block."
3026 if {coalMessage} is 9:
3027 message "&9Coal> &7Lava is hotter, but coal is quicker."
3028 if {coalMessage} is 10:
3029 message "&9Coal> &7For what do you even need Coal on a Minigame server?"
3030 set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 1
3031 wait 10 ticks
3032 set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 0
3033 set action bar of player to "&a&lCoal Recharged."
3034
3035#Slime mount test
3036on right click on slime:
3037 if {currentmount.%player%} is not set:
3038 delete {currentmount.%player%}
3039 message "&9Mount> &7This is not your mount."
3040 else:
3041 if {currentmount.%player%} is the clicked entity:
3042 make the player ride the clicked entity
3043 else:
3044 message "&9Mount> &7This is not your mount."
3045
3046
3047
3048on explode:
3049 create a safe explosion with force 3
3050 cancel event
3051
3052on damage:
3053 attacker's name contains "Slime"
3054 set damage to 0
3055 cancel event
3056
3057#Morph Disablers (Quit)
3058on quit:
3059 if {mineplex.currentmorph.%player%} is "Creeper Morph":
3060 cosmetic_system("use", "morph_creeper", player)
3061 if {mineplex.currentmorph.%player%} is "Slime Morph":
3062 cosmetic_system("use", "morph_slime", player)
3063 if {mineplex.currentmorph.%player%} is "Cow Morph":
3064 cosmetic_system("use", "morph_cow", player)
3065 if {mineplex.currentmorph.%player%} is "Villager Morph":
3066 cosmetic_system("use", "morph_villager", player)
3067 if {mineplex.currentmorph.%player%} is "Wither Morph":
3068 cosmetic_system("use", "morph_wither", player)
3069
3070#Treasure System
3071
3072function resetPoints(p: offline player, l: number) :: number:
3073 delete {mineplex.chestbusy.%{_l}%}
3074 delete {mineplex.inchest.%{_p}%}
3075 delete {mineplex.chestsopened.%{_p}%}
3076 set block at {mineplex.chestpoint.%{_l}%.sub.1} to air
3077 set block at {mineplex.chestpoint.%{_l}%.sub.2} to air
3078 set block at {mineplex.chestpoint.%{_l}%.sub.3} to air
3079 set block at {mineplex.chestpoint.%{_l}%.sub.4} to air
3080 set block at {mineplex.chestpoint.%{_l}%.sub.5} to air
3081 set block at {mineplex.chestpoint.%{_l}%.sub.6} to air
3082 set block at {mineplex.chestpoint.%{_l}%.sub.7} to air
3083 set block at {mineplex.chestpoint.%{_l}%.sub.8} to air
3084 set block at {mineplex.chestpoint.%{_l}%} to chest
3085
3086function rewardTreasure(p: player , c: number , l: number , s: number) :: number:
3087 set {_mineplex.chestpoint.%{_l}%.sub.%{_s}%} to {mineplex.chestpoint.%{_l}%.sub.%{_s}%}
3088 add 0 to y-coordinate of {_mineplex.chestpoint.%{_l}%.sub.%{_s}%}
3089 if {_c} is 3:
3090 set {_r} to a random integer between 1 and 350
3091 if {_r} is 50:
3092 if {mineplex.rank.%{_p}%} is "":
3093 set {_ra} to "ULTRA"
3094 else if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
3095 set {_ra} to "HERO"
3096 else if {mineplex.rank.%{_p}%} is "&d&lHERO ":
3097 set {_ra} to "LEGEND"
3098 else if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
3099 set {_ra} to "TITAN"
3100 else if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
3101 set {_ra} to "ETERNAL"
3102 else:
3103 set {_ra} to a random integer between 2750 and 3750
3104 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
3105 addShards({_p}, {_ra})
3106 wait 2.25 seconds
3107 execute console command "/rank set %{_p}% %{_ra}%"
3108 broadcast "&9Treasure> &e%{_p}% &7found &cMythical %{_ra}% Rank&7."
3109 send all players title "&eTreasure" with subtitle "&f%{_p}% has found &cMythical Rank Upgrade" for 10 seconds
3110 else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55:
3111 set {_ra} to a random integer between 1500 and 2250
3112 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
3113 addShards({_p}, {_ra})
3114 else if {_r} is 35 or 36 or 37 or 38 or 39 or 40 or 41 or 42 or 43 or 44 or 65 or 64 or 63 or 62 or 61 or 60 or 59 or 58 or 57 or 56 or 55:
3115 set {_ra} to a random integer between 1025 and 1495
3116 broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7."
3117 addShards({_p}, {_ra})
3118 else if {_r} is 21 or 22 or 23 or 24 or 25 or 26 or 27 or 28 or 29 or 30 or 31 or 32 or 33 or 34 or 65 or 66 or 67 or 68:
3119 set {_ra} to a random integer between 525 and 985
3120 send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p}
3121 addShards({_p}, {_ra})
3122 else:
3123 set {_ra} to a random integer between 150 and 499
3124 send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p}
3125 addShards({_p}, {_ra})
3126 else:
3127 set {_r} to a random integer between 1 and 350
3128 if {_r} is 50:
3129 set {_ra} to a random integer between 2750 and 3750
3130 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
3131 addShards({_p}, {_ra})
3132 else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55:
3133 set {_ra} to a random integer between 1500 and 2250
3134 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
3135 addShards({_p}, {_ra})
3136 wait 2.25 seconds
3137 resetPoints({_p}, {_l})
3138 delete {mineplex.inchest.%{_p}%}
3139 else if {_r} is 35 or 36 or 37 or 38 or 39 or 40 or 41 or 42 or 43 or 44 or 65 or 64 or 63 or 62 or 61 or 60 or 59 or 58 or 57 or 56 or 55:
3140 set {_ra} to a random integer between 1025 and 1495
3141 broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7."
3142 addShards({_p}, {_ra})
3143 else if {_r} is 21 or 22 or 23 or 24 or 25 or 26 or 27 or 28 or 29 or 30 or 31 or 32 or 33 or 34 or 65 or 66 or 67 or 68:
3144 set {_ra} to a random integer between 525 and 985
3145 send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p}
3146 addShards({_p}, {_ra})
3147 else:
3148 set {_ra} to a random integer between 150 and 499
3149 send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p}
3150 addShards({_p}, {_ra})
3151
3152on join:
3153 if {oldchests.%player%} is not set:
3154 set {oldchests.%player%} to 0
3155 if {ancientchests.%player%} is not set:
3156 set {ancientchests.%player%} to 0
3157 if {mythicalchests.%player%} is not set:
3158 set {mythicalchests.%player%} to 0
3159
3160function buyChest(p: player, n: number) :: player:
3161 if {_n} is 1:
3162 if {mineplex.shards.%{_p}%} >= 1000:
3163 close {_p}'s inventory
3164 wait 3 ticks
3165 open chest with 6 rows named " Confirmation" to {_p}
3166 wait 5 ticks
3167 set {_slot} to 0
3168 format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3169 loop 44 times:
3170 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3171 add 1 to {_slot}
3172 loop 10 times:
3173 wait 1 tick
3174 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3175 add 1 to {slot}
3176 delShards({_p}, 1000)
3177 add 1 to {oldchests.%{_p}%}
3178 wait 10 ticks
3179 close {_p}'s inventory
3180 else:
3181 close {_p}'s inventory
3182 wait 3 ticks
3183 open chest with 6 rows named " Confirmation" to {_p}
3184 wait 5 ticks
3185 format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3186 set {_slot} to 0
3187 loop 54 times:
3188 format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3189 add 1 to {_slot}
3190 wait 10 ticks
3191 close {_p}'s inventory
3192 if {_n} is 2:
3193 if {mineplex.shards.%{_p}%} >= 5000:
3194 close {_p}'s inventory
3195 wait 3 ticks
3196 open chest with 6 rows named " Confirmation" to {_p}
3197 wait 5 ticks
3198 set {_slot} to 0
3199 format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3200 loop 44 times:
3201 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3202 add 1 to {_slot}
3203 loop 10 times:
3204 wait 1 tick
3205 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3206 add 1 to {slot}
3207 remove 5000 from {mineplex.shards.%{_p}%}
3208 delShards({_p}, 5000)
3209 add 1 to {ancientchests.%{_p}%}
3210 wait 10 ticks
3211 close {_p}'s inventory
3212 else:
3213 close {_p}'s inventory
3214 wait 3 ticks
3215 open chest with 6 rows named " Confirmation" to {_p}
3216 wait 5 ticks
3217 format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3218 set {_slot} to 0
3219 loop 54 times:
3220 format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3221 add 1 to {_slot}
3222 wait 10 ticks
3223 close {_p}'s inventory
3224 if {_n} is 3:
3225 if {mineplex.shards.%{_p}%} >= 10000:
3226 close {_p}'s inventory
3227 wait 3 ticks
3228 open chest with 6 rows named " Confirmation" to {_p}
3229 wait 5 ticks
3230 set {_slot} to 0
3231 format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3232 loop 44 times:
3233 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3234 add 1 to {_slot}
3235 loop 10 times:
3236 wait 1 tick
3237 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3238 add 1 to {slot}
3239 delShards({_p}, 10000)
3240 add 1 to {mythicalchests.%{_p}%}
3241 wait 10 ticks
3242 close {_p}'s inventory
3243 else:
3244 close {_p}'s inventory
3245 wait 3 ticks
3246 open chest with 6 rows named " Confirmation" to {_p}
3247 wait 5 ticks
3248 format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3249 set {_slot} to 0
3250 loop 54 times:
3251 format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3252 add 1 to {_slot}
3253 wait 10 ticks
3254 close {_p}'s inventory
3255
3256function openTreasure(p: player , c: number , l: number) :: number:
3257 if {_c} is 1:
3258 if {oldchests.%{_p}%} < 1:
3259 close {_p}'s inventory
3260 wait 2 ticks
3261 open chest with 6 rows named " Confirmation" to {_p}
3262 wait 1 tick
3263 format slot 4 of {_p} with prismarine shard named "&b&l1000 Shards" to be unstealable
3264 format slot 22 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e0 ||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot." to be unstealable
3265 format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3266 format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3267 format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3268 format slot 33 of {_p} with redstone block named "&cNO" to close
3269 format slot 34 of {_p} with redstone block named "&cNO" to close
3270 format slot 35 of {_p} with redstone block named "&cNO" to close
3271 format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3272 format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3273 format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3274 format slot 42 of {_p} with redstone block named "&cNO" to close
3275 format slot 43 of {_p} with redstone block named "&cNO" to close
3276 format slot 44 of {_p} with redstone block named "&cNO" to close
3277 format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3278 format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3279 format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3280 format slot 51 of {_p} with redstone block named "&cNO" to close
3281 format slot 52 of {_p} with redstone block named "&cNO" to close
3282 format slot 53 of {_p} with redstone block named "&cNO" to close
3283 if {oldchests.%{_p}%} >= 1:
3284 remove 1 from {oldchests.%{_p}%}
3285 set {mineplex.chestbusy.%{_l}%.} to {_p}
3286 send {_p} title "&eOld Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
3287 set {mineplex.inchest.%{_p}%} to {_l}
3288 set block at {mineplex.chestpoint.%{_l}%} to air
3289 teleport {_p} to {mineplex.chestpoint.%{_l}%}
3290 send "&9Treasure> &7Choose 4 chests to open" to {_p}
3291 wait 1.2 seconds
3292 set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
3293 set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
3294 set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
3295 set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
3296 set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
3297 set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
3298 set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
3299 set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
3300 set {_get} to getPlayerdata({_p}, "stats.global.chests")
3301 set {_cur} to {_get} parsed as a number
3302 add 1 to {_cur}
3303 setPlayerdata({_p}, "stats.global.chests", "%{_cur}%")
3304 if {_c} is 2:
3305 if {ancientchests.%{_p}%} < 1:
3306 close {_p}'s inventory
3307 wait 2 ticks
3308 open chest with 6 rows named " Confirmation" to {_p}
3309 wait 1 tick
3310 format slot 4 of {_p} with prismarine shard named "&b&l5000 Shards" to be unstealable
3311 format slot 22 of {_p} with chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e0 ||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds." to be unstealable
3312 format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3313 format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3314 format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3315 format slot 33 of {_p} with redstone block named "&cNO" to close
3316 format slot 34 of {_p} with redstone block named "&cNO" to close
3317 format slot 35 of {_p} with redstone block named "&cNO" to close
3318 format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3319 format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3320 format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3321 format slot 42 of {_p} with redstone block named "&cNO" to close
3322 format slot 43 of {_p} with redstone block named "&cNO" to close
3323 format slot 44 of {_p} with redstone block named "&cNO" to close
3324 format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3325 format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3326 format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3327 format slot 51 of {_p} with redstone block named "&cNO" to close
3328 format slot 52 of {_p} with redstone block named "&cNO" to close
3329 format slot 53 of {_p} with redstone block named "&cNO" to close
3330 if {ancientchests.%{_p}%} >= 1:
3331 remove 1 from {ancientchests.%{_p}%}
3332 set {mineplex.chestbusy.%{_l}%.} to {_p}
3333 send {_p} title "&6Ancient Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
3334 set {mineplex.inchest.%{_p}%} to {_l}
3335 set block at {mineplex.chestpoint.%{_l}%} to air
3336 teleport {_p} to {mineplex.chestpoint.%{_l}%}
3337 send "&9Treasure> &7Choose 4 chests to open" to {_p}
3338 wait 2.5 seconds
3339 set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
3340 set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
3341 set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
3342 set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
3343 set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
3344 set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
3345 set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
3346 set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
3347 if {_c} is 3:
3348 if {mythicalchests.%{_p}%} < 1:
3349 close {_p}'s inventory
3350 wait 2 ticks
3351 open chest with 6 rows named " Confirmation" to {_p}
3352 wait 1 tick
3353 format slot 4 of {_p} with prismarine shard named "&b&l10000 Shards" to be unstealable
3354 format slot 22 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e0 ||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own." to be unstealable
3355 format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3356 format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3357 format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3358 format slot 33 of {_p} with redstone block named "&cNO" to close
3359 format slot 34 of {_p} with redstone block named "&cNO" to close
3360 format slot 35 of {_p} with redstone block named "&cNO" to close
3361 format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3362 format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3363 format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3364 format slot 42 of {_p} with redstone block named "&cNO" to close
3365 format slot 43 of {_p} with redstone block named "&cNO" to close
3366 format slot 44 of {_p} with redstone block named "&cNO" to close
3367 format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3368 format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3369 format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3370 format slot 51 of {_p} with redstone block named "&cNO" to close
3371 format slot 52 of {_p} with redstone block named "&cNO" to close
3372 format slot 53 of {_p} with redstone block named "&cNO" to close
3373 if {mythicalchests.%{_p}%} >= 1:
3374 remove 1 from {mythicalchests.%{_p}%}
3375 set {mineplex.chestbusy.%{_l}%.} to {_p}
3376 send {_p} title "&cMythical Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
3377 set {mineplex.inchest.%{_p}%} to {_l}
3378 set block at {mineplex.chestpoint.%{_l}%} to air
3379 teleport {_p} to {mineplex.chestpoint.%{_l}%}
3380 send "&9Treasure> &7Choose 4 chests to open" to {_p}
3381 wait 2.5 seconds
3382 set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
3383 set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
3384 set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
3385 set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
3386 set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
3387 set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
3388 set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
3389 set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
3390
3391on inventory click:
3392 if inventory name of player's current inventory is " Confirmation":
3393 cancel event
3394 close player's inventory
3395
3396function TreasurePage(p: player , n: number , c: number) :: player:
3397 if {_N} is 2:
3398 if {_C} is 1:
3399 close {_p}'s inventory
3400 wait 4 ticks
3401 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3402 wait 2 ticks
3403 format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3404 format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3405 format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3406 format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3407 format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3408 format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3409 format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close
3410 format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3411 format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3412 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 1)]
3413 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3414 else if {_C} is 2:
3415 close {_p}'s inventory
3416 wait 4 ticks
3417 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3418 wait 2 ticks
3419 format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3420 format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3421 format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3422 format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close
3423 format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3424 format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3425 format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3426 format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3427 format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3428 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 2)]
3429 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3430 else if {_C} is 3:
3431 close {_p}'s inventory
3432 wait 4 ticks
3433 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3434 wait 2 ticks
3435 format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3436 format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3437 format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3438 format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close
3439 format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close
3440 format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3441 format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3442 format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3443 format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3444 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 3)]
3445 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3446 else if {_C} is 4:
3447 close {_p}'s inventory
3448 wait 4 ticks
3449 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3450 wait 2 ticks
3451 format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close
3452 format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close
3453 format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close
3454 format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close
3455 format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3456 format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3457 format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3458 format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3459 format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3460 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 4)]
3461 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3462 if {_N} is 1:
3463 if {_C} is 1:
3464 wait 2 ticks
3465 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3466 wait 2 ticks
3467 format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 1)]
3468 format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 1)]
3469 format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 1)]
3470 format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3471 format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3472 format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3473 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3474 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 1)]
3475 if {_C} is 2:
3476 wait 2 ticks
3477 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3478 wait 2 ticks
3479 format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 2)]
3480 format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 2)]
3481 format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 2)]
3482 format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3483 format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3484 format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3485 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3486 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 2)]
3487 if {_C} is 3:
3488 wait 2 ticks
3489 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3490 wait 2 ticks
3491 format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 3)]
3492 format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 3)]
3493 format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 3)]
3494 format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3495 format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3496 format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3497 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3498 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 3)]
3499 if {_C} is 4:
3500 wait 2 ticks
3501 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3502 wait 2 ticks
3503 format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 4)]
3504 format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 4)]
3505 format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 4)]
3506 format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3507 format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3508 format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
3509 format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
3510 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 4)]
3511
3512command /givetreasure [<string>] [<number>] [<offline player>]:
3513 permission: mineplex.support
3514 permission message: &9Permissions> &7You do not have permission to do that.
3515 trigger:
3516 if arg-1 is set:
3517 if arg-2 is set:
3518 if arg-2 is an integer:
3519 if arg-3 is set:
3520 if arg-1 is "Mythical":
3521 add arg-2 to {mythicalchests.%arg-3%}
3522 message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Mythical Treasure Chests." to sender
3523 message "&9Treasure> &7You recieved &e%arg-2% &7Mythical Treasure Chests." to arg-3
3524 stop
3525 else if arg-1 is "Ancient":
3526 add arg-2 to {ancientchests.%arg-3%}
3527 message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Ancient Treasure Chests." to sender
3528 message "&9Treasure> &7You recieved &e%arg-2% &7Ancient Treasure Chests." to arg-3
3529 stop
3530 else if arg-1 is "old":
3531 add arg-2 to {oldchests.%arg-3%}
3532 message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Old Treasure Chests." to sender
3533 message "&9Treasure> &7You recieved &e%arg-2% &7Old Treasure Chests." to arg-3
3534 stop
3535 else:
3536 send "&9Treasure> &7Unknown Treasure [&e%arg-1%&7]." to sender
3537 stop
3538 else:
3539 send "&9Treasure> &7Please specify a player" to sender
3540 stop
3541 else if arg-2 is not an integer:
3542 send "&9Treasure> &7Unknown Integer [&e%arg-2%&7]." to sender
3543 stop
3544 else:
3545 send "&9Treasure> &7Please specify an amount." to sender
3546 stop
3547 else:
3548 send "&9Treasure> &7Listing Commands:" to sender
3549 send "&4/GiveTreasure <treasure> <amount> <name> &7Gives a player some treasure chests &4Admin" to sender
3550 stop
3551
3552every 5 ticks:
3553 loop all players:
3554 if {mineplex.inchest.%loop-player%} is set:
3555 set {_di} to distance between {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%} and loop-player
3556 if {_di} is greater than 3.11:
3557 teleport loop-player to {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%}
3558
3559every 5 ticks:
3560 loop all players:
3561 if {mineplex.inchest.%loop-player%} is set:
3562 loop players in radius 4 of loop-player:
3563 if loop-player-2 is not loop-player-1:
3564 if {mineplex.pref.ff.%loop-player-2%} is false:
3565 push the loop-player-2 upwards at speed 0.925
3566 push the loop-player-2 backwards at speed 0.825
3567 play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
3568
3569on right click on chest:
3570 if player's tool is a chest:
3571 if name of player's tool is "&aCosmetic Menu":
3572 stop
3573 else:
3574 send "&9MCR> &e##BlameWheezy"
3575 else:
3576 if event-block is {mineplex.chestpoint.1}:
3577 cancel event
3578 TreasurePage(player, 1, 1)
3579 if event-block is {mineplex.chestpoint.2}:
3580 cancel event
3581 TreasurePage(player, 1, 2)
3582 if event-block is {mineplex.chestpoint.3}:
3583 cancel event
3584 TreasurePage(player, 1, 3)
3585 if event-block is {mineplex.chestpoint.4}:
3586 cancel event
3587 TreasurePage(player, 1, 4)
3588
3589on right click:
3590 target block of player is chest or ender chest
3591 if player's tool is a chest:
3592 if name of player's tool is "&aCosmetic Menu":
3593 stop
3594 else:
3595 send "&9MCR> &e##BlameWheezy"
3596 else:
3597 if event-block is {mineplex.chestpoint.1.sub.1} or {mineplex.chestpoint.1.sub.2} or {mineplex.chestpoint.1.sub.3} or {mineplex.chestpoint.1.sub.4} or {mineplex.chestpoint.1.sub.5} or {mineplex.chestpoint.1.sub.6} or {mineplex.chestpoint.1.sub.7} or {mineplex.chestpoint.1.sub.8}:
3598 if {mineplex.inchest.%player%} is set:
3599 if {mineplex.chestsopened.%player%} is not set:
3600 set {mineplex.chestsopened.%player%} to 1
3601 cancel event
3602 make the event-block appear open
3603 rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
3604 loop all players:
3605 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3606 stop
3607 else if {mineplex.chestsopened.%player%} is 3:
3608 cancel event
3609 add 1 to {mineplex.chestsopened.%player%}
3610 make the event-block appear open
3611 rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
3612 loop all players:
3613 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3614 wait 3 seconds
3615 resetPoints(player, 1)
3616 execute player command "/hub"
3617 stop
3618 else if {mineplex.chestsopened.%player%} is 1 or 2:
3619 cancel event
3620 add 1 to {mineplex.chestsopened.%player%}
3621 make the event-block appear open
3622 rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
3623 loop all players:
3624 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3625 stop
3626 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3627 cancel event
3628 else:
3629 cancel event
3630 else if event-block is {mineplex.chestpoint.2.sub.1} or {mineplex.chestpoint.2.sub.2} or {mineplex.chestpoint.2.sub.3} or {mineplex.chestpoint.2.sub.4} or {mineplex.chestpoint.2.sub.5} or {mineplex.chestpoint.2.sub.6} or {mineplex.chestpoint.2.sub.7} or {mineplex.chestpoint.2.sub.8}:
3631 if {mineplex.inchest.%player%} is set:
3632 if {mineplex.chestsopened.%player%} is not set:
3633 set {mineplex.chestsopened.%player%} to 1
3634 cancel event
3635 make the event-block appear open
3636 rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
3637 loop all players:
3638 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3639 stop
3640 else if {mineplex.chestsopened.%player%} is 3:
3641 cancel event
3642 add 1 to {mineplex.chestsopened.%player%}
3643 make the event-block appear open
3644 rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
3645 loop all players:
3646 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3647 wait 3 seconds
3648 resetPoints(player, 2)
3649 execute player command "/hub"
3650 stop
3651 else if {mineplex.chestsopened.%player%} is 1 or 2:
3652 cancel event
3653 add 1 to {mineplex.chestsopened.%player%}
3654 make the event-block appear open
3655 rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
3656 loop all players:
3657 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3658 stop
3659 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3660 cancel event
3661 else:
3662 cancel event
3663 else if event-block is {mineplex.chestpoint.3.sub.1} or {mineplex.chestpoint.3.sub.2} or {mineplex.chestpoint.3.sub.3} or {mineplex.chestpoint.3.sub.4} or {mineplex.chestpoint.3.sub.5} or {mineplex.chestpoint.3.sub.6} or {mineplex.chestpoint.3.sub.7} or {mineplex.chestpoint.3.sub.8}:
3664 if {mineplex.inchest.%player%} is set:
3665 if {mineplex.chestsopened.%player%} is not set:
3666 set {mineplex.chestsopened.%player%} to 1
3667 cancel event
3668 make the event-block appear open
3669 rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
3670 loop all players:
3671 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3672 stop
3673 else if {mineplex.chestsopened.%player%} is 3:
3674 cancel event
3675 add 1 to {mineplex.chestsopened.%player%}
3676 make the event-block appear open
3677 rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
3678 loop all players:
3679 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3680 wait 3 seconds
3681 resetPoints(player, 3)
3682 execute player command "/hub"
3683 stop
3684 else if {mineplex.chestsopened.%player%} is 1 or 2:
3685 cancel event
3686 add 1 to {mineplex.chestsopened.%player%}
3687 make the event-block appear open
3688 rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
3689 loop all players:
3690 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3691 stop
3692 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3693 cancel event
3694 else:
3695 cancel event
3696 else if event-block is {mineplex.chestpoint.4.sub.1} or {mineplex.chestpoint.4.sub.2} or {mineplex.chestpoint.4.sub.3} or {mineplex.chestpoint.4.sub.4} or {mineplex.chestpoint.4.sub.5} or {mineplex.chestpoint.4.sub.6} or {mineplex.chestpoint.4.sub.7} or {mineplex.chestpoint.4.sub.8}:
3697 if {mineplex.inchest.%player%} is set:
3698 if {mineplex.chestsopened.%player%} is not set:
3699 set {mineplex.chestsopened.%player%} to 1
3700 cancel event
3701 make the event-block appear open
3702 rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
3703 loop all players:
3704 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3705 stop
3706 else if {mineplex.chestsopened.%player%} is 3:
3707 cancel event
3708 add 1 to {mineplex.chestsopened.%player%}
3709 make the event-block appear open
3710 rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
3711 loop all players:
3712 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3713 wait 3 seconds
3714 resetPoints(player, 4)
3715 execute player command "/hub"
3716 stop
3717 else if {mineplex.chestsopened.%player%} is 1 or 2:
3718 cancel event
3719 add 1 to {mineplex.chestsopened.%player%}
3720 make the event-block appear open
3721 rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
3722 loop all players:
3723 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3724 stop
3725 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3726 cancel event
3727 else:
3728 cancel event
3729
3730on quit:
3731 set {_p} to player
3732 if {mineplex.inchest.%{_p}%} is set:
3733 resetPoints({_p}, {mineplex.inchest.%{_p}%})
3734 delete {mineplex.inchest.%{_p}%}
3735
3736#Scoreboard
3737function animSB(p: player) :: text:
3738 while {_p} is online:
3739 set {_l} to the length of {mineplex.sb.anim.%{_p}%}
3740 remove 15 from {_l}
3741 set {_char} to 0
3742 loop {_l} times:
3743 if {_p} is online:
3744 wipe {_p}'s sidebar
3745 set name of sidebar of {_p} to "&f&l%subtext of {mineplex.sb.anim.%{_p}%} from characters {_char} to ({_char} + 15)%"
3746 set score "&b&lServer" in sidebar of {_p} to 15
3747 set score "&f%{mineplex.config.world}%" in sidebar of {_p} to 14
3748 set score "&1 " in sidebar of {_p} to 13
3749 set score "&a&lGems" in sidebar of {_p} to 12
3750 set score "&r%{mineplex.gems.%{_p}%}%" in sidebar of {_p} to 11
3751 set score "&2 " in sidebar of {_p} to 10
3752 set score "&e&lShards" in sidebar of {_p} to 9
3753 set score "&f%{mineplex.shards.%{_p}%}%" in sidebar of {_p} to 8
3754 set score "&3 " in sidebar of {_p} to 7
3755 set score "&6&lRank" in sidebar of {_p} to 6
3756 set score "&f%{mineplex.api.displayrank.%{_p}%}%" in sidebar of {_p} to 5
3757 set score "&4 " in sidebar of {_p} to 4
3758 set score "&c&lWebsite" in sidebar of {_p} to 3
3759 set score "&f%{mineplex.config.website}%" in sidebar of {_p} to 2
3760 set score "&f----------------" in sidebar of {_p} to 1
3761 set {mineplex.sbdisplay.name.%{_p}%} to "&f&l%subtext of {mineplex.sb.anim.%{_p}%} from characters {_char} to ({_char} + 15)%"
3762 add 1 to {_char}
3763 wait 3 ticks
3764 else:
3765 stop
3766
3767
3768on join:
3769 if {mineplex.usescoreboard} is false:
3770 stop
3771 set {mineplex.sb.anim.%player%} to " Welcome %player%, to the %{mineplex.config.servername}% Network! "
3772 animSB(player)
3773
3774#every 2 seconds:
3775 #if {mineplex.usescoreboard} is false:
3776 #stop
3777 #else:
3778 #loop all players:
3779 #wipe loop-player's sidebar
3780 #set {_fc} to convert string {mineplex.config.servername} to uppercase
3781 #set name of sidebar of loop-player to ""
3782 #set score "&b&lServer" in sidebar of loop-player to 15
3783 #set score "&f%{mineplex.config.world}%" in sidebar of loop-player to 14
3784 #set score "&1 " in sidebar of loop-player to 13
3785 #set score "&a&lGems" in sidebar of loop-player to 12
3786 #set score "&r%{mineplex.gems.%loop-player%}%" in sidebar of loop-player to 11
3787 #set score "&2 " in sidebar of loop-player to 10
3788 #set score "&e&lShards" in sidebar of loop-player to 9
3789 #set score "&f%{mineplex.shards.%loop-player%}%" in sidebar of loop-player to 8
3790 #set score "&3 " in sidebar of loop-player to 7
3791 #set score "&6&lRank" in sidebar of loop-player to 6
3792 #set score "&f%{mineplex.api.displayrank.%loop-player%}%" in sidebar of loop-player to 5
3793 #set score "&4 " in sidebar of loop-player to 4
3794 #set score "&c&lWebsite" in sidebar of loop-player to 3
3795 #set score "&f%{mineplex.config.website}%" in sidebar of loop-player to 2
3796 #set score "&f----------------" in sidebar of loop-player to 1
3797
3798#Rank Loader
3799
3800function rankLoad(p: player , n: number , t: number) :: string:
3801 if {_n} is 1:
3802 if {mineplex.testrank.%{_p}%} is set:
3803 if {_t} is 0:
3804 set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%}
3805 delete {mineplex.testrank.%{_p}%}
3806 if {mineplex.rank.%{_p}%} is not set:
3807 set {mineplex.rank.%{_p}%} to ""
3808 if {mineplex.rank.%{_p}%} is "":
3809 execute console command "/rank set %{_p}% ALL"
3810 set {_p} tab name to "&e%{_p}%"
3811 set {mineplex.displaya.%{_p}%} to "&fPlayer"
3812 set {mineplex.colora.%{_p}%} to "§f"
3813 return "&fPlayer"
3814 if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
3815 execute console command "/rank set %{_p}% ULTRA"
3816 set {_p} tab name to "&b&lULTRA &e%{_p}%"
3817 set {mineplex.displaya.%{_p}%} to "&bUltra"
3818 set {mineplex.colora.%{_p}%} to "§b"
3819 set {mineplex.hover.%{_p}%} to "&b&lULTRA%nl%&fA first step into the stories of the mist.%nl%&fOnly those brave enough may enter.%nl% %nl%&fThe first purchasable rank at %{mineplex.config.shoplink}%"
3820 return "&bUltra"
3821 if {mineplex.rank.%{_p}%} is "&d&lHERO ":
3822 execute console command "/rank set %{_p}% HERO"
3823 set {_p} tab name to "&d&lHERO &e%{_p}%"
3824 set {mineplex.displaya.%{_p}%} to "&dHero"
3825 set {mineplex.colora.%{_p}%} to "§d"
3826 set {mineplex.hover.%{_p}%} to "&d&lHERO%nl%&fThere are many stories of a%nl%&fvaliant Hero who was brave enough to%nl%&ftame the most fearsome dragon in the land.%nl% %nl%&fThe second purchasable rank at %{mineplex.config.shoplink}%"
3827 return "&dHero"
3828 if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
3829 execute console command "/rank set %{_p}% LEGEND"
3830 set {_p} tab name to "&a&lLEGEND &e%{_p}%"
3831 set {mineplex.displaya.%{_p}%} to "&aLegend"
3832 set {mineplex.colora.%{_p}%} to "§a"
3833 set {mineplex.hover.%{_p}%} to "&a&lLEGEND%nl%&fYears they have told stories of this rank,%nl%&fonly for the legends to be true.%nl% %nl%&fThe third purchasable rank at %{mineplex.config.shoplink}%"
3834 return "&aLegend"
3835 if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
3836 execute console command "/rank set %{_p}% TITAN"
3837 set {_p} tab name to "&c&lTITAN &e%{_p}%"
3838 set {mineplex.displaya.%{_p}%} to "&cTitan"
3839 set {mineplex.colora.%{_p}%} to "§c"
3840 set {mineplex.hover.%{_p}%} to "&c&lTITAN%nl%&fAncient myths spoke of a gigantic being%nl%&fwith immence power...%nl% %nl%&fThe fourth purchasable rank at %{mineplex.config.shoplink}%"
3841 return "&cTitan"
3842 if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ":
3843 execute console command "/rank set %{_p}% TRAINEE"
3844 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3845 if loop-value is {_p}:
3846 set {_p} tab name to "&6&lP.TRAINEE &e%{_p}%"
3847 else:
3848 set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
3849 set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
3850 set {mineplex.displaya.%{_p}%} to "&6Trainee"
3851 set {mineplex.colora.%{_p}%} to "§6"
3852 set {mineplex.hover.%{_p}%} to "&6&lTRAINEE%nl%&fTrainee are moderators-in-training.%nl%&ftheir duties include enforcing the rules and%nl%&fproviding help to anyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
3853 return "&6Trainee"
3854 if {mineplex.rank.%{_p}%} is "&6&lMOD ":
3855 execute console command "/rank set %{_p}% MODERATOR"
3856 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3857 if loop-value is {_p}:
3858 set {_p} tab name to "&6&lP.MOD &e%{_p}%"
3859 else:
3860 set {_p} tab name to "&6&lMOD &e%{_p}%"
3861 set {mineplex.displaya.%{_p}%} to "&6Mod"
3862 set {mineplex.colora.%{_p}%} to "§6"
3863 set {mineplex.hover.%{_p}%} to "&6&lMOD%nl%&fModerators enforce rules and provide help to%nl%&fanyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
3864 return "&6Mod"
3865 if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ":
3866 execute console command "/rank set %{_p}% SNR_MODERATOR"
3867 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3868 if loop-value is {_p}:
3869 set {_p} tab name to "&6&lP.SR.MOD &e%{_p}%"
3870 else:
3871 set {_p} tab name to "&6&lSR.MOD &e%{_p}%"
3872 set {mineplex.displaya.%{_p}%} to "&6Sr.Mod"
3873 set {mineplex.colora.%{_p}%} to "§6"
3874 set {mineplex.hover.%{_p}%} to "&6&lSR.MOD%nl%&fSenior Moderators are members of a special%nl%&fSenior Moderators team where they have to fulfull specific tasks.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
3875 return "&6Sr.Mod"
3876 if {mineplex.rank.%{_p}%} is "&6&lC.MOD ":
3877 execute console command "/rank set %{_p}% CLANS_MOD"
3878 set {_p} tab name to "&6&lC.MOD &e%{_p}%"
3879 set {mineplex.displaya.%{_p}%} to "&6C.Mod"
3880 set {mineplex.colora.%{_p}%} to "§6"
3881 set {mineplex.hover.%{_p}%} to "&6&lC.MOD%nl%&fClans Moderators are members of a special%nl%&fSenior Moderators team where they focus on helping the clans servers.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
3882 return "&6C.Mod"
3883 if {mineplex.rank.%{_p}%} is "&4&lADMIN ":
3884 execute console command "/rank set %{_p}% ADMIN"
3885 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3886 if loop-value is {_p}:
3887 set {_p} tab name to "&6&lP.ADMIN &e%{_p}%"
3888 else:
3889 set {_p} tab name to "&4&lADMIN &e%{_p}%"
3890 set {mineplex.displaya.%{_p}%} to "&4Admin"
3891 set {mineplex.colora.%{_p}%} to "§4"
3892 set {mineplex.hover.%{_p}%} to "&4&lADMIN%nl%&fAn Administrator's role is to manage%nl%&ftheir respective Senoir Moderator team%nl%&fand all moderators within it."
3893 return "&4Admin"
3894 if {mineplex.rank.%{_p}%} is "&9&lAPEX ":
3895 execute console command "/rank set %{_p}% APEX"
3896 set {_p} tab name to "&9&lAPEX &e%{_p}%"
3897 set {mineplex.displaya.%{_p}%} to "&9Apex"
3898 set {mineplex.colora.%{_p}%} to "§4"
3899 set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!"
3900 return "&9Apex"
3901 if {mineplex.rank.%{_p}%} is "&4&lLEADER ":
3902 execute console command "/rank set %{_p}% LEADER"
3903 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3904 if loop-value is {_p}:
3905 set {_p} tab name to "&6&lP.LEADER &e%{_p}%"
3906 else:
3907 set {_p} tab name to "&4&lLEADER &e%{_p}%"
3908 set {mineplex.displaya.%{_p}%} to "&4Leader"
3909 set {mineplex.colora.%{_p}%} to "§4"
3910 set {mineplex.hover.%{_p}%} to "&4&lLEADER%nl%&fLeaders manage the operation of their respective team%nl%&for projects. They usually operate on affairs within%nl%&fthe staff, development, or management team."
3911 return "&4Leader"
3912 if {mineplex.rank.%{_p}%} is "&4&lOWNER ":
3913 execute console command "/rank set %{_p}% OWNER"
3914 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3915 if loop-value is {_p}:
3916 set {_p} tab name to "&6&lP.OWNER &e%{_p}%"
3917 else:
3918 set {_p} tab name to "&4&lOWNER &e%{_p}%"
3919 set {mineplex.displaya.%{_p}%} to "&4Owner"
3920 set {mineplex.colora.%{_p}%} to "§4"
3921 set {mineplex.hover.%{_p}%} to "&4&lOWNER%nl%&fOwners are the founders of Mineplex.%nl%&fEach owner manages a different aspect of the%nl%server and ensures its efficient operation."
3922 return "&4Owner"
3923 if {mineplex.rank.%{_p}%} is "&9&lBUILDER ":
3924 execute console command "/rank set %{_p}% BUILDER"
3925 set {_p} tab name to "&9&lBUIDLER &e%{_p}%"
3926 set {mineplex.displaya.%{_p}%} to "&9Mapper"
3927 set {mineplex.colora.%{_p}%} to "§9"
3928 set {mineplex.hover.%{_p}%} to "&9&lBUILDER%nl%&fBuilders are members of the Mineplex Build Team.%nl%&fThey create many of the maps used across Mineplex."
3929 return "&9Builder"
3930 if {mineplex.rank.%{_p}%} is "&9&lMAPPER ":
3931 execute console command "/rank set %{_p}% MAPPER"
3932 set {_p} tab name to "&9&lMAPPER &e%{_p}%"
3933 set {mineplex.displaya.%{_p}%} to "&9Mapper"
3934 set {mineplex.colora.%{_p}%} to "§9"
3935 set {mineplex.hover.%{_p}%} to "&9&lMAPPER%nl%&fThese senior members work closely with the development and design teams to build new maps for new and old content!"
3936 return "&9Mapper"
3937 if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ":
3938 execute console command "/rank set %{_p}% MAPLEAD"
3939 set {_p} tab name to "&9&lMAPLEAD &e%{_p}%"
3940 set {mineplex.displaya.%{_p}%} to "&9MapLead"
3941 set {mineplex.colora.%{_p}%} to "§9"
3942 set {mineplex.hover.%{_p}%} to "&9&lMAPLEAD%nl%&fMap Leaders are leaders of the Mineplex Build Team.%nl%&fThey oversee the creation of new maps and manage Builders."
3943 return "&9MapLead"
3944 if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ":
3945 execute console command "/rank set %{_p}% JNR_DEV"
3946 set {mineplex.displaya.%{_p}%} to "&6Jr.Dev"
3947 set {mineplex.colora.%{_p}%} to "§c"
3948 set {mineplex.hover.%{_p}%} to "&6&lJR.DEV%nl%&fThese are part time Developers that work behind the%nl%&fscenes to create new games and features,%nl%&fand fix bugs to give the best experience."
3949 return "&6Jr.Dev"
3950 if {mineplex.rank.%{_p}%} is "&4&lDEV ":
3951 execute console command "/rank set %{_p}% DEVELOPER"
3952 set {_p} tab name to "&4&lDEV &e%{_p}%"
3953 set {mineplex.displaya.%{_p}%} to "&4Dev"
3954 set {mineplex.colora.%{_p}%} to "§4"
3955 set {mineplex.hover.%{_p}%} to "&4&lDEV%nl%&fDevelopers work behind the scenes to%nl%&fcreate new games and features, and fix bugs to%nl%&fgive the best experience."
3956 return "&4Dev"
3957 if {mineplex.rank.%{_p}%} is "&5&lTWITCH ":
3958 execute console command "/rank set %{_p}% TWITCH"
3959 set {_p} tab name to "&5&lTWITCH &e%{_p}%"
3960 set {mineplex.displaya.%{_p}%} to "&5Twitch"
3961 set {mineplex.colora.%{_p}%} to "§5"
3962 set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams."
3963 return "&5Twitch"
3964 if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ":
3965 execute console command "/rank set %{_p}% YOUTUBE"
3966 set {_p} tab name to "&c&lYOUTUBE &e%{_p}%"
3967 set {mineplex.displaya.%{_p}%} to "&cYouTube"
3968 set {mineplex.colora.%{_p}%} to "§c"
3969 set {mineplex.hover.%{_p}%} to "&c&lYOUTUBE%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex.%nl%&fThey are the official YouTubers of Mineplex."
3970 return "&cYouTube"
3971 if {mineplex.rank.%{_p}%} is "&f&lEVENT ":
3972 execute console command "/rank set %{_p}% EVENT"
3973 set {_p} tab name to "&f&lEVENT &e%{_p}%"
3974 set {mineplex.displaya.%{_p}%} to "&fEvent"
3975 set {mineplex.colora.%{_p}%} to "§f"
3976 set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???"
3977 return "&fEvent"
3978 if {mineplex.rank.%{_p}%} is "&5&lYT ":
3979 execute console command "/rank set %{_p}% YT"
3980 set {_p} tab name to "&5&lYT &e%{_p}%"
3981 set {mineplex.displaya.%{_p}%} to "&5YT"
3982 set {mineplex.colora.%{_p}%} to "§5"
3983 set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex."
3984 return "&5YT"
3985 if {mineplex.rank.%{_p}%} is "&3&lETERNAL ":
3986 execute console command "/rank set %{_p}% ETERNAL"
3987 set {_p} tab name to "&3&lETERNAL &e%{_p}%"
3988 set {mineplex.displaya.%{_p}%} to "&3Eternal"
3989 set {mineplex.colora.%{_p}%} to "§3"
3990 set {mineplex.hover.%{_p}%} to "&3&lETERNAL%nl%&fFantastic and magical, no one%nl%&fexcept the time lords truly understand%nl%&fthe power of this rank.%nl% %nl%&fThe fifth purchasable rank at %{mineplex.config.shoplink}%"
3991 return "&3Eternal"
3992 if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ":
3993 execute console command "/rank set %{_p}% SUPPORT"
3994 set {mineplex.displaya.%{_p}%} to "&9Support"
3995 set {mineplex.colora.%{_p}%} to "§9"
3996 set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service."
3997 return "&9Support"
3998 if {mineplex.rank.%{_p}%} is "&9&lARTIST ":
3999 execute console command "/rank set %{_p}% ARTIST"
4000 set {mineplex.displaya.%{_p}%} to "&9Artist"
4001 set {mineplex.colora.%{_p}%} to "§9"
4002 set {mineplex.hover.%{_p}%} to "&9&lARTIST%nl%&fThe Artist rank is given to talented artists%nl%who are endorsed to create content for Mineplex."
4003 return "&9Artist"
4004 else if {_n} is 2:
4005 if {mineplex.testrank.%{_p}%} is set:
4006 if {_t} is 0:
4007 set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%}
4008 delete {mineplex.testrank.%{_p}%}
4009 if {mineplex.rank.%{_p}%} is not set:
4010 set {mineplex.rank.%{_p}%} to ""
4011 if {mineplex.rank.%{_p}%} is "":
4012 set {_p} tab name to "&e%{_p}%"
4013 set {mineplex.displaya.%{_p}%} to "&fPlayer"
4014 set {mineplex.colora.%{_p}%} to "§f"
4015 return "&fPlayer"
4016 if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
4017 set {_p} tab name to "&b&lULTRA &e%{_p}%"
4018 set {mineplex.displaya.%{_p}%} to "&bUltra"
4019 set {mineplex.colora.%{_p}%} to "§b"
4020 set {mineplex.hover.%{_p}%} to "&b&lULTRA%nl%&fA first step into the stories of the mist.%nl%&fOnly those brave enough may enter.%nl% %nl%&fThe first purchasable rank at %{mineplex.config.shoplink}%"
4021 return "&bUltra"
4022 if {mineplex.rank.%{_p}%} is "&d&lHERO ":
4023 set {_p} tab name to "&d&lHERO &e%{_p}%"
4024 set {mineplex.displaya.%{_p}%} to "&dHero"
4025 set {mineplex.colora.%{_p}%} to "§d"
4026 set {mineplex.hover.%{_p}%} to "&d&lHERO%nl%&fThere are many stories of a%nl%&fvaliant Hero who was brave enough to%nl%&ftame the most fearsome dragon in the land.%nl% %nl%&fThe second purchasable rank at %{mineplex.config.shoplink}%"
4027 return "&dHero"
4028 if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
4029 set {_p} tab name to "&a&lLEGEND &e%{_p}%"
4030 set {mineplex.displaya.%{_p}%} to "&aLegend"
4031 set {mineplex.colora.%{_p}%} to "§a"
4032 set {mineplex.hover.%{_p}%} to "&a&lLEGEND%nl%&fYears they have told stories of this rank,%nl%&fonly for the legends to be true.%nl% %nl%&fThe third purchasable rank at %{mineplex.config.shoplink}%"
4033 return "&aLegend"
4034 if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
4035 set {_p} tab name to "&c&lTITAN &e%{_p}%"
4036 set {mineplex.displaya.%{_p}%} to "&cTitan"
4037 set {mineplex.colora.%{_p}%} to "§c"
4038 set {mineplex.hover.%{_p}%} to "&c&lTITAN%nl%&fAncient myths spoke of a gigantic being%nl%&fwith immence power...%nl% %nl%&fThe fourth purchasable rank at %{mineplex.config.shoplink}%"
4039 return "&cTitan"
4040 if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ":
4041 set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
4042 set {mineplex.displaya.%{_p}%} to "&6Trainee"
4043 set {mineplex.colora.%{_p}%} to "§6"
4044 set {mineplex.hover.%{_p}%} to "&6&lTRAINEE%nl%&fTrainee are moderators-in-training.%nl%&ftheir duties include enforcing the rules and%nl%&fproviding help to anyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
4045 return "&6Trainee"
4046 if {mineplex.rank.%{_p}%} is "&6&lMOD ":
4047 set {_p} tab name to "&6&lMOD &e%{_p}%"
4048 set {mineplex.displaya.%{_p}%} to "&6Mod"
4049 set {mineplex.colora.%{_p}%} to "§6"
4050 set {mineplex.hover.%{_p}%} to "&6&lMOD%nl%&fModerators enforce rules and provide help to%nl%&fanyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
4051 return "&6Mod"
4052 if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ":
4053 set {_p} tab name to "&6&lSR.MOD &e%{_p}%"
4054 set {mineplex.displaya.%{_p}%} to "&6Sr.Mod"
4055 set {mineplex.colora.%{_p}%} to "§6"
4056 set {mineplex.hover.%{_p}%} to "&6&lSR.MOD%nl%&fSenior Moderators are members of a special%nl%&fSenior Moderators team where they have to fulfull specific tasks.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
4057 return "&6Sr.Mod"
4058 if {mineplex.rank.%{_p}%} is "&6&lC.MOD ":
4059 set {_p} tab name to "&6&lC.MOD &e%{_p}%"
4060 set {mineplex.displaya.%{_p}%} to "&6C.Mod"
4061 set {mineplex.colora.%{_p}%} to "§6"
4062 set {mineplex.hover.%{_p}%} to "&6&lC.MOD%nl%&fClans Moderators are members of a special%nl%&fSenior Moderators team where they focus on helping the clans servers.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
4063 return "&6C.Mod"
4064 if {mineplex.rank.%{_p}%} is "&4&lADMIN ":
4065 set {_p} tab name to "&4&lADMIN &e%{_p}%"
4066 set {mineplex.displaya.%{_p}%} to "&4Admin"
4067 set {mineplex.colora.%{_p}%} to "§4"
4068 set {mineplex.hover.%{_p}%} to "&4&lADMIN%nl%&fAn Administrator's role is to manage%nl%&ftheir respective Senoir Moderator team%nl%&fand all moderators within it."
4069 return "&4Admin"
4070 if {mineplex.rank.%{_p}%} is "&9&lAPEX ":
4071 set {_p} tab name to "&9&lAPEX &e%{_p}%"
4072 set {mineplex.displaya.%{_p}%} to "&9Apex"
4073 set {mineplex.colora.%{_p}%} to "§4"
4074 set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!"
4075 return "&9Apex"
4076 if {mineplex.rank.%{_p}%} is "&4&lLEADER ":
4077 set {_p} tab name to "&4&lLEADER &e%{_p}%"
4078 set {mineplex.displaya.%{_p}%} to "&4Leader"
4079 set {mineplex.colora.%{_p}%} to "§4"
4080 set {mineplex.hover.%{_p}%} to "&4&lLEADER%nl%&fLeaders manage the operation of their respective team%nl%&for projects. They usually operate on affairs within%nl%&fthe staff, development, or management team."
4081 return "&4Leader"
4082 if {mineplex.rank.%{_p}%} is "&4&lOWNER ":
4083 set {_p} tab name to "&4&lOWNER &e%{_p}%"
4084 set {mineplex.displaya.%{_p}%} to "&4Owner"
4085 set {mineplex.colora.%{_p}%} to "§4"
4086 set {mineplex.hover.%{_p}%} to "&4&lOWNER%nl%&fOwners are the founders of Mineplex.%nl%&fEach owner manages a different aspect of the%nl%server and ensures its efficient operation."
4087 return "&4Owner"
4088 if {mineplex.rank.%{_p}%} is "&9&lBUILDER ":
4089 set {_p} tab name to "&9&lBUIDLER &e%{_p}%"
4090 set {mineplex.displaya.%{_p}%} to "&8Builder"
4091 set {mineplex.colora.%{_p}%} to "§9"
4092 set {mineplex.hover.%{_p}%} to "&9&lBUILDER%nl%&fThese creative staff members help build maps for your favorite games!"
4093 return "&9Builder"
4094 if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ":
4095 set {_p} tab name to "&9&lMAPLEAD &e%{_p}%"
4096 set {mineplex.displaya.%{_p}%} to "&9MapLead"
4097 set {mineplex.colora.%{_p}%} to "§9"
4098 set {mineplex.hover.%{_p}%} to "&9&lMAPLEAD%nl%&fMap Leaders are leaders of the Mineplex Build Team.%nl%&fThey oversee the creation of new maps and manage Builders."
4099 return "&9MapLead"
4100 if {mineplex.rank.%{_p}%} is "&9&lMAPPER ":
4101 set {_p} tab name to "&9&lMAPPER &e%{_p}%"
4102 set {mineplex.displaya.%{_p}%} to "&9Mapper"
4103 set {mineplex.colora.%{_p}%} to "§9"
4104 set {mineplex.hover.%{_p}%} to "&9&lMAPPER%nl%&fThese senior members work closely with the development and design teams to build new maps for new and old content!"
4105 return "&9Mapper"
4106 if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ":
4107 set {mineplex.displaya.%{_p}%} to "&6Jr.Dev"
4108 set {mineplex.colora.%{_p}%} to "§c"
4109 set {mineplex.hover.%{_p}%} to "&6&lJR.DEV%nl%&fThese are part time Developers that work behind the%nl%&fscenes to create new games and features,%nl%&fand fix bugs to give the best experience."
4110 return "&6Jr.Dev"
4111 if {mineplex.rank.%{_p}%} is "&4&lDEV ":
4112 set {_p} tab name to "&4&lDEV &e%{_p}%"
4113 set {mineplex.displaya.%{_p}%} to "&4Dev"
4114 set {mineplex.colora.%{_p}%} to "§4"
4115 set {mineplex.hover.%{_p}%} to "&4&lDEV%nl%&fDevelopers work behind the scenes to%nl%&fcreate new games and features, and fix bugs to%nl%&fgive the best experience."
4116 return "&4Dev"
4117 if {mineplex.rank.%{_p}%} is "&5&lTWITCH ":
4118 set {_p} tab name to "&5&lTWITCH &e%{_p}%"
4119 set {mineplex.displaya.%{_p}%} to "&5Twitch"
4120 set {mineplex.colora.%{_p}%} to "§5"
4121 set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams."
4122 return "&5Twitch"
4123 if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ":
4124 set {_p} tab name to "&c&lYOUTUBE &e%{_p}%"
4125 set {mineplex.displaya.%{_p}%} to "&cYouTube"
4126 set {mineplex.colora.%{_p}%} to "§c"
4127 set {mineplex.hover.%{_p}%} to "&c&lYOUTUBE%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex.%nl%&fThey are the official YouTubers of Mineplex."
4128 return "&cYouTube"
4129 if {mineplex.rank.%{_p}%} is "&f&lEVENT ":
4130 set {_p} tab name to "&f&lEVENT &e%{_p}%"
4131 set {mineplex.displaya.%{_p}%} to "&fEvent"
4132 set {mineplex.colora.%{_p}%} to "§f"
4133 set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???"
4134 return "&fEvent"
4135 if {mineplex.rank.%{_p}%} is "&5&lYT ":
4136 set {_p} tab name to "&5&lYT &e%{_p}%"
4137 set {mineplex.displaya.%{_p}%} to "&5YT"
4138 set {mineplex.colora.%{_p}%} to "§5"
4139 set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex."
4140 return "&5YT"
4141 if {mineplex.rank.%{_p}%} is "&3&lETERNAL ":
4142 set {_p} tab name to "&3&lETERNAL &e%{_p}%"
4143 set {mineplex.displaya.%{_p}%} to "&3Eternal"
4144 set {mineplex.colora.%{_p}%} to "§3"
4145 set {mineplex.hover.%{_p}%} to "&3&lETERNAL%nl%&fFantastic and magical, no one%nl%&fexcept the time lords truly understand%nl%&fthe power of this rank.%nl% %nl%&fThe fifth purchasable rank at %{mineplex.config.shoplink}%"
4146 return "&3Eternal"
4147 if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ":
4148 set {mineplex.displaya.%{_p}%} to "&9Support"
4149 set {mineplex.colora.%{_p}%} to "§9"
4150 set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service."
4151 return "&9Support"
4152 if {mineplex.rank.%{_p}%} is "&9&lARTIST ":
4153 set {mineplex.displaya.%{_p}%} to "&9Artist"
4154 set {mineplex.colora.%{_p}%} to "§9"
4155 set {mineplex.hover.%{_p}%} to "&9&lARTIST%nl%&fThe Artist rank is given to talented artists%nl%who are endorsed to create content for Mineplex."
4156 return "&9Artist"
4157
4158on death of player:
4159 if attacker is a player:
4160 if projectile is set:
4161 set the death message to "&9Death> &e%victim% &7killed by &e%attacker% &7with &eArchery&7."
4162 if attacker is not a player:
4163 if attacker is set:
4164 set {_dm} to 1st char in each word of "%attacker%" to caps
4165 set the death message to "&9Death> &e%victim% &7killed by &e%{_dm}%&7."
4166
4167on join:
4168 wait 2 ticks
4169 rankLoad(player, 1, 0)
4170 loop all players:
4171 updateRankAPI(loop-player)
4172
4173on flight toggle:
4174 if {mineplex.config.doublejump} is "true":
4175 if {doublejump.%uuid of player%} is set:
4176 if player's gamemode is not creative:
4177 cancel event
4178 delete {doublejump.%uuid of player%}
4179 wait 1 tick
4180 set player's flight state to false
4181 push player upward at speed 0.3
4182 push player forward at speed 0.9
4183 play raw sound "mob.ghast.fireball" at player with pitch 2 volume 0.99
4184 else:
4185 stop
4186 else:
4187 stop
4188 else:
4189 stop
4190
4191on jump:
4192 if player's gamemode is not creative:
4193 if {doublejump.%uuid of player%} is not set:
4194 if block below player is not air or water:
4195 set player's flight state to true
4196 set {doublejump.%uuid of player%} to true
4197 else:
4198 stop
4199 else:
4200 stop
4201 else:
4202 stop
4203
4204on quit:
4205 set {mineplex.rank.uuid.%uuid of player%} to {mineplex.rank.%player%}
4206
4207#Chat System
4208
4209on chat:
4210 set {_get} to getPlayerdata(player, "muted")
4211 if {_get} is "yes":
4212 if {muted::%player%::type} is "perm":
4213 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
4214 cancel event
4215 stop
4216 if {muted::%player%::type} is "temp":
4217 set {_waited} to difference between now and {muted::%player%::when}
4218 if {_waited} is less than {muted::%player%::time}:
4219 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
4220 cancel event
4221 stop
4222 if message contains "hack" or "hax":
4223 cancel event
4224 send "&9Chat> &7Accusing players of cheating in-game is against the rules. If you think someone is cheating, please gather evidence and report it at &a%{mineplex.config.website}%"
4225 stop
4226 if {mineplex.vanish.%player%} is false:
4227 if {mineplex.chatslow} is set:
4228 if player has permission "mineplex.mod":
4229 set {_check} to mcs((player), (message))
4230 if {_check} is less than 0:
4231 cancel event
4232 delete {_check}
4233 else:
4234 if difference between {lastChat::%player%} and now < {mineplex.chatslow}:
4235 cancel event
4236 send "&9Chat> &7Chat slow enabled. Please wait."
4237 else:
4238 set {lastChat::%player%} to now
4239 set {_check} to mcs((player), (message))
4240 if {_check} is less than 0:
4241 cancel event
4242 delete {_check}
4243 else if {mineplex.chatsilence} is set:
4244 if player has permission "mineplex.trainee":
4245 set {_check} to mcs((player), (message))
4246 if {_check} is less than 0:
4247 cancel event
4248 delete {_check}
4249 else:
4250 cancel event
4251 send "&9Chat> &7The chat is silenced."
4252 else:
4253 if {party.%player%.chat} is true:
4254 if length of message is greater than 1:
4255 if first character of message is "@":
4256 cancel event
4257 set message to subtext of message from characters 2 to (length of message)
4258 loop {party.%{party.%player%}%::*}:
4259 message "&5&lParty &f&l%player% &d%message%" to loop-value
4260 else:
4261 set {_check} to mcs((player), (message))
4262 if {_check} is less than 0:
4263 cancel event
4264 delete {_check}
4265 else:
4266 set {_check} to mcs((player), (message))
4267 if {_check} is less than 0:
4268 cancel event
4269 delete {_check}
4270 else:
4271 set {_check} to mcs((player), (message))
4272 if {_check} is less than 0:
4273 cancel event
4274 delete {_check}
4275 else if {mineplex.vanish.%player%} is true:
4276 send "&eYou can not chat while incognito."
4277 cancel event
4278 else:
4279 set {mineplex.vanish.%player%} to false
4280 set {_check} to mcs((player), (message))
4281 if {_check} is less than 0:
4282 cancel event
4283 delete {_check}
4284
4285#Join, Quit, and Load Handlers
4286
4287on join:
4288 if player has permission "mineplex.admin":
4289 $ thread
4290 set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number
4291 set {_c} to "{@MCRVER}" parsed as a number
4292 if {_c} is greater than {_ver}:
4293 send "&9MCR> &7You must be using some fancy indev version!"
4294 send "&9MCR> &7or you're retarded and changed the version in the config!"
4295 stop
4296 else if {_c} is less than {_ver}:
4297 send "&9MCR> &7Version &e%{_ver}% &7is ready for download"
4298 else:
4299 send "&9MCR> &7Your version of MCR is currently up to date!"
4300 stop
4301 send "&9MCR> &7Changelog:"
4302 $ thread
4303 set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v"
4304 loop {_var1::*}:
4305 send "%loop-value%"
4306
4307 loop {_var::*}:
4308 send "&9MCR> &7Version &e%loop-value% &7is ready for download"
4309 send "&9MCR> &7End of Changelog!"
4310 if {mineplex.gadget.enabled} is not set:
4311 set {mineplex.gadget.enabled} to true
4312 if {mineplex.report.id} is not set:
4313 set {mineplex.report.id} to 1
4314 if {mineplex.dj} is not set:
4315 set {mineplex.dj} to true
4316 if {mineplex.tntlauncher} is not set:
4317 set {mineplex.tntlauncher} to true
4318 if {poll.id.last} is not set:
4319 set {poll.id.last} to 0
4320 if {mineplex.ff.list::%player%} is set:
4321 if player does not have permission "mineplex.trainee":
4322 delete {mineplex.ff.list::%player%}
4323 delete {mineplex.pref.ff.%player%}
4324 if {mineplex.totalaccounts.%ip address of player%::*} does not contain "%player%":
4325 add "%player%" to {mineplex.totalaccounts.%ip address of player%::*}
4326
4327on load:
4328 #set {_var::*} to contents from url "https://raw.githubusercontent.com/WheezyGold7931/Mineplex-Core/master/version.txt" Raw in GitHub does not update fast enough rip lel
4329 set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number
4330 set {_c} to "{@MCRVER}" parsed as a number
4331 if {_c} is more than {_ver}:
4332 broadcast "&9MCR> &7You must be using some fancy indev version!"
4333 broadcast "&9MCR> &7or you're retarded and changed the version in the config!"
4334 stop
4335 else if {_c} is less than {_ver}:
4336 broadcast "&9MCR> &7Version &e%{_ver}% &7is ready for download"
4337 else:
4338 broadcast "&9MCR> &7Your version of MCR is currently up to date!"
4339 broadcast "&9MCR> &7Client Version: {@MCRVER}"
4340 broadcast "&9MCR> &7Server Version: %{_ver}%"
4341 stop
4342 broadcast "&9MCR> &7Changelog:"
4343 $ thread
4344 set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v"
4345 loop {_var1::*}:
4346 broadcast "%loop-value%"
4347
4348 loop {_var::*}:
4349 broadcast "&9MCR> &7Version &e%loop-value% &7is ready for download"
4350 broadcast "&9MCR> &7End of Changelog!"
4351 if {mineplex.gadget.enabled} is not set:
4352 set {mineplex.gadget.enabled} to true
4353 if {mineplex.report.id} is not set:
4354 set {mineplex.report.id} to 1
4355 if {mineplex.dj} is not set:
4356 set {mineplex.dj} to true
4357 if {mineplex.tntlauncher} is not set:
4358 set {mineplex.tntlauncher} to true
4359 if {poll.id.last} is not set:
4360 set {poll.id.last} to 0
4361
4362function runNews(p: player) :: boolean:
4363 set {_sn} to convert string {mineplex.config.servername} to uppercase
4364 send title from "&6&l%{_sn}%" and "%{mineplex.news.line1}%" to {_p} for 5, 70, 0
4365 wait 3 seconds
4366 send title from "&6&l%{_sn}%" and "%{mineplex.news.line2}%" to {_p} for 1, 70, 0
4367 wait 3 seconds
4368 send title from "&6&l%{_sn}%" and "%{mineplex.news.line3}%" to {_p} for 1, 70, 0
4369 wait 3 seconds
4370 send title from "&6&l%{_sn}%" and "%{mineplex.news.line4}%" to {_p} for 1, 60, 5
4371
4372on join:
4373 set join message to "&8Join> &7%player%"
4374 updateRankAPI(player)
4375 delete {mineplex.disguise.%player%}
4376 execute console command "/ud %player%"
4377 delete {mineplex.lastm.%player%}
4378 delete {mineplex.lasta.%player%}
4379 set tab header to "&f&l%{mineplex.config.servername}% Network &a%{mineplex.config.world}%" and footer to "&fVisit &a%{mineplex.config.website}% &ffor News, Forums and Shop" for player
4380 if {mineplex.news.allow} is true:
4381 runNews(player)
4382 if {mineplex.vanish.%player%} is not set:
4383 set {mineplex.vanish.%player%} to false
4384 if {mineplex.overridechat} is not set:
4385 set {mineplex.overridechat} to true
4386 if {mineplex.vanish.%player%} is true:
4387 send ""
4388 send ""
4389 send "&6&lYou are currently incognito"
4390 send "&eThis means you are invisible to all except for those who are"
4391 send "&4&lAdmin&f+"
4392 send ""
4393 send ""
4394 if {mineplex.pref.hpv.%player%} is false:
4395 hide all players from player
4396 if {mineplex.pref.hpv.%player%} is not set:
4397 set {mineplex.pref.hpv.%player%} to true
4398 if {mineplex.pref.ff.%player%} is not set:
4399 set {mineplex.pref.ff.%player%} to false
4400 if {mineplex.ff.%player%} is not set:
4401 set {mineplex.ff.%player%} to false
4402 if {mineplex.pref.pm.%player%} is not set:
4403 set {mineplex.pref.pm.%player%} to true
4404 if {mineplex.pref.pc.%player%} is not set:
4405 set {mineplex.pref.pc.%player%} to true
4406 if {mineplex.pref.gwen.%player%} is not set:
4407 set {mineplex.pref.gwen.%player%} to true
4408 if {mineplex.pref.report.%player%} is not set:
4409 set {mineplex.pref.report.%player%} to true
4410 if {mineplex.shards.%player%} is not set:
4411 set {mineplex.shards.%player%} to 0
4412 if {mineplex.gems.%player%} is not set:
4413 set {mineplex.gems.%player%} to 0
4414 if {mineplex.particle.active.%player%} is not set:
4415 set {mineplex.particle.active.%player%} to false
4416 if {mineplex.arrorw.active} is not set:
4417 set {mineplex.arrow.active} to false
4418 if {mineplex.adminmode.%player%} is true:
4419 set {mineplex.adminmode.%player%} to false
4420 loop all players:
4421 if {mineplex.vanish.%loop-player%} is true:
4422 add loop-player to {%player%.vanishlist::*}
4423 loop all players:
4424 if loop-player does not have permission "mineplex.admin":
4425 hide {%player%.vanishlist::*} from all players
4426 delete {%player%.vanishlist::*}
4427 delete {mineplex.tp.back.%player%}
4428 if {mineplex.config.autoop} is "true":
4429 if player has permission "mineplex.admin":
4430 op the player
4431 else:
4432 deop the player
4433
4434function newsinit(i: integer) :: number:
4435 if {mineplex.mode} is "sql":
4436 set {_get} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
4437 if {_get} is not set:
4438 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('1', '§b§lMineplex Core Remake')"
4439 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('2', '§a§lThe best remake for Mineplex Commands')"
4440 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('3', '§3§lRate this on Spigot!')"
4441 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('4', '§c§lCheck me out on SkUnity!')"
4442 set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
4443 set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'"
4444 set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'"
4445 set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'"
4446 set {mineplex.news.allow} to true
4447 else:
4448 set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
4449 set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'"
4450 set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'"
4451 set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'"
4452 else:
4453 if {mineplex.news.line1} is not set:
4454 set {mineplex.news.line1} to "§b§lMineplex Core Remake"
4455 set {mineplex.news.line2} to "§a§lThe best remake for Mineplex Commands"
4456 set {mineplex.news.line3} to "§3§lRate this on Spigot!"
4457 set {mineplex.news.line4} to "§c§lCheck me out on SkUnity!"
4458 set {mineplex.news.allow} to true
4459
4460#NewsINIT
4461on load:
4462 newsinit(1)
4463
4464on quit:
4465 set quit message to "&8Quit> &7%player%"
4466 delete {mineplex.tp.back.%player%}
4467
4468every second:
4469 loop all players:
4470 add 1 to {mineplex.time.%loop-player%}
4471
4472#Forcefield
4473
4474every 2 ticks:
4475 loop all players:
4476 if {mineplex.ff.list::%loop-player%} is set:
4477 loop players in radius 4 of loop-player:
4478 if {mineplex.pref.ff.%loop-player-2%} is false:
4479 if loop-player-2 is not loop-player-1:
4480 play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
4481 push the loop-player-2 upwards at speed 0.3
4482 push the loop-player-2 backwards at speed 0.45
4483 play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
4484
4485#2 Factor
4486
4487command /2fareset <player>:
4488 permission: op
4489 trigger:
4490 delete {mineplex.newauth.%uuid of arg-1%}
4491 set {mineplex.authlock.%arg-1%} to false
4492 delete {mineplex.newauthlast.%uuid of arg-1%}
4493
4494on join:
4495 wait 5 ticks
4496 if player has permission "mineplex.2fa":
4497 if {mineplex.newauth.%uuid of player%} is set:
4498 set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now
4499 set {_tc} to "1 day" parsed as a timespan
4500 if {_t} is less than {_tc}:
4501 send "&92FA> &7Authorized!"
4502 else:
4503 set {mineplex.authlock.%player%} to true
4504 apply slowness 999 to player for 999 seconds
4505 apply blindness 999 to player for 999 seconds
4506 send "&92FA> &7Please enter your two-factor auth code"
4507 send "&92FA> &c/2fa (code)"
4508 else:
4509 stop
4510
4511on command:
4512 if {mineplex.authlock.%player%} is true:
4513 if executor is player:
4514 if command is not "2fa":
4515 cancel event
4516 send "&92FA> &7Please enter your two-factor auth code"
4517 send "&92FA> &c/2fa (code)"
4518
4519on chat:
4520 if {mineplex.authlock.%player%} is true:
4521 cancel event
4522 send "&92FA> &7Please enter your two-factor auth code"
4523 send "&92FA> &c/2fa (code)"
4524
4525on quit:
4526 delete {autowarn.%player%}
4527
4528#Mineplex Commands
4529command /2fa [<string>] [<string>]:
4530 permission: mineplex.2fa
4531 permission message: &9Permissions> &7You do not have permission to do that.
4532 trigger:
4533 if {mineplex.newauth.%uuid of player%} is not set:
4534 if {authwarn.%player%} is not set:
4535 send "&92FA> &7Hey There! This sets a code that you will have to remember for the rest of your life!"
4536 send "&92FA> &7Do &e/2fa &7if you are 100%% sure!"
4537 set {authwarn.%player%} to true
4538 stop
4539 else:
4540 send "&92FA> &7Generating secret..."
4541 set {_clientSecret} to a new two-factor base-32 secret code
4542 send "&92FA> &7Saving secret..."
4543 set {mineplex.newauth.%uuid of player%} to {_clientSecret}
4544 send "&92FA> &7Secret key saved."
4545 send "&92FA> &7You must enter this code into your Two-Factor App:%nl%&92FA> &e%{_clientSecret}%"
4546 send "&92FA> &7Then redo /2fa with your code"
4547 set {mineplex.authlock.%player%} to false
4548 set {_t} to arg 1 parsed as an integer
4549 if {_t} is a number:
4550 send "&92FA> &7Authorized for 24 hours."
4551 send "&92FA> &7Saving secret..."
4552 wait 5 ticks
4553 set {mineplex.newauth.%uuid of player%} to skutil hashed arg 1 using "MD5"
4554 set {mineplex.authlock.%player%} to false
4555 send "&92FA> &7Secret key saved."
4556 else:
4557 send "&92FA> &7Invalid authentication code (not a number)."
4558 else:
4559 set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now
4560 set {_tc} to "1 day" parsed as a timespan
4561 if {_t} is less than {_tc}:
4562 send "&92FA> &7Authorized for 24 hours."
4563 else:
4564 set {_c} to the current two-factor code of secret code {mineplex.newauth.%uuid of player%}
4565 set {_t} to arg 1 parsed as an integer
4566 if {_t} is a number:
4567 if {_c} is arg-1:
4568 send "&92FA> &7Authorized for 24 hours."
4569 send "&92FA> &7Saving secret..."
4570 wait 5 ticks
4571 remove slowness from the player
4572 remove blindness from the player
4573 set {mineplex.newauthlast.%uuid of player%} to now
4574 set {mineplex.authlock.%player%} to false
4575 send "&92FA> &7Secret key saved."
4576 else:
4577 send "&92FA> &7Invalid authentication code"
4578 else:
4579 send "&92FA> &7Invalid authentication code (not a number)."
4580
4581command /tp [<text>] [<text>] [<text>] [<text>] [<text>]:
4582 aliases: /teleport
4583 permission: mineplex.mod
4584 permission message: &9Permissions> &7You do not have permission to do that.
4585 trigger:
4586 if arg-1 is not set:
4587 send "&9Teleport> &7Commands List:"
4588 send "&6/tp <target> &7Teleport to Player &6Mod"
4589 send "&6/tp b(ack) &7Undo Teleports &6Mod"
4590 send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin"
4591 send "&4/tp <player> <target> &7Teleport Player to Player &4Admin"
4592 send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin"
4593 send "&4/tp all &7Teleport All to Self &4Owner"
4594 else:
4595 if arg-2 is not set:
4596 if arg-1 is set:
4597 if arg-1 is not "all":
4598 if arg-1 is not "here" or "h" or "back" or "b":
4599 if arg-1 parsed as player is online:
4600 set {mineplex.tp.back.%player%} to location of player
4601 teleport player to arg-1 parsed as player's location
4602 set {_t} to arg-1 parsed as player
4603 send "&9Teleport> &7Teleported to &e%{_t}%&7."
4604 stop
4605 else:
4606 send "&9Teleport> &7Locating &e%arg-1%&7..."
4607 wait 5 seconds
4608 send "&9Teleport> &7Could not locate &e%arg-1%&7."
4609 stop
4610 if arg-1 is "all":
4611 if player has permission "mineplex.owner":
4612 teleport all players to player
4613 send "&9Teleport> &7You teleported &e%amount of players% Players &7to yourself."
4614 broadcast "&9Teleport> &7You teleported to &e%player%&7."
4615 stop
4616 else:
4617 send "&9Permissions> &7You do not have permission to do that."
4618 stop
4619 if arg 4 is set:
4620 if arg-1 parsed as player is online:
4621 set {_p} to arg-1 parsed as a player
4622 set {_x} to arg-2 parsed as a number
4623 set {_y} to arg-3 parsed as a number
4624 set {_z} to arg-4 parsed as a number
4625 if {_x} is not set:
4626 send "&9Teleport> &7Invalid X-Coordinate [&e%arg-2%&7]."
4627 stop
4628 if {_y} is not set:
4629 send "&9Teleport> &7Invalid Y-Coordinate [&e%arg-3%&7]."
4630 stop
4631 if {_z} is not set:
4632 send "&9Teleport> &7Invalid Z-Coordinate [&e%arg-4%&7]."
4633 stop
4634 teleport {_p} to the location at {_x}, {_y}, {_z}
4635 send "&9Teleport> &7Teleported &e%{_p}% &7%{_x}%, %{_y}%, %{_z}%."
4636 else:
4637 send "&9Teleport> &7Locating &e%arg-1%&7..."
4638 wait 5 seconds
4639 send "&9Teleport> &7Could not locate &e%arg-1%&7."
4640
4641 if arg-1 is "here" or "h":
4642 if player has permission "mineplex.admin":
4643 if arg-3 is not set:
4644 if arg-2 is set:
4645 if arg-2 parsed as player is online:
4646 teleport arg-2 parsed as player to player's location
4647 send "&9Teleport> &7%player% teleported you to self." to arg-2 parsed as player
4648 set {_t} to arg-2 parsed as player
4649 send "&9Teleport> &7Teleported &e%arg-2% &7to self."
4650 stop
4651 else:
4652 send "&9Teleport> &7Locating &e%arg-2%&7..."
4653 wait 5 seconds
4654 send "&9Teleport> &7Could not locate &e%arg-2%&7."
4655 stop
4656 else:
4657 send "&9Permissions> &7You do not have permission to do that."
4658 stop
4659 if arg-2 is not set:
4660 send "&9Teleport> &7Commands List:"
4661 send "&6/tp <target> &7Teleport to Player &6Mod"
4662 send "&6/tp b(ack) &7Undo Teleports &6Mod"
4663 send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin"
4664 send "&4/tp <player> <target> &7Teleport Player to Player &4Admin"
4665 send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin"
4666 send "&4/tp all &7Teleport All to Self &4Owner"
4667 if arg-1 is "back" or "b":
4668 if {mineplex.tp.back.%player%} is set:
4669 set {_new} to {mineplex.tp.back.%player%}
4670 set {mineplex.tp.back.%player%} to location of player
4671 teleport player to {_new}
4672 send "&9Teleport> &7You have been teleported to your previous location."
4673 else:
4674 send "&9Teleport> &7There is no place to teleport you back to."
4675 stop
4676 if arg-3 is not set:
4677 if arg-2 is set:
4678 if player has permission "mineplex.admin":
4679 if arg-2 parsed as player is online:
4680 if arg-1 parsed as player is online:
4681 set {mineplex.tp.back.%player%} to location of player
4682 teleport arg-1 parsed as player to arg-2 parsed as player
4683 set {_t1} to arg-1 parsed as player
4684 set {_t} to arg-2 parsed as player
4685 send "&9Teleport> &e%{_t1}% &7was teleported to you." to arg-2 parsed as player
4686 send "&9Teleport> &7You were teleported to &e%{_t}%&7." to arg-1 parsed as player
4687 stop
4688 else:
4689 send "&9Teleport> &7Locating &e%arg-1%&7..."
4690 wait 5 seconds
4691 send "&9Teleport> &7Could not locate &e%arg-1%&7."
4692 stop
4693 else:
4694 send "&9Teleport> &7Locating &e%arg-2%&7..."
4695 wait 5 seconds
4696 send "&9Teleport> &7Could not locate &e%arg-2%&7."
4697 stop
4698 else:
4699 send "&9Permissions> &7You do not have permission to do that."
4700 stop
4701
4702command /time [<offline player>] [<string>]:
4703 permission: mineplex.mod
4704 permission message: &9Permissions> &7You do not have permission to do that.
4705 trigger:
4706 if arg 1 is not set:
4707 send "&9Time> &7Usage: /time <playerName>"
4708 else:
4709 if {mineplex.time.%arg-1%} is not set:
4710 set {mineplex.time.%arg-1%} to 0
4711 send "&9Time> &e%arg-1% &7has spent &e%{mineplex.time.%arg-1%}%.0 Seconds &7in game"
4712 else:
4713 set {_tm} to {mineplex.time.%arg-1%}
4714 if {_tm} is less than 60:
4715 send "&9Time> &e%arg-1% &7has spent &e%{_tm}%.0 Seconds &7in game"
4716 stop
4717 else if {_tm} is less than 3600:
4718 set {_final} to {_tm} / 60
4719 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Minutes &7in game"
4720 stop
4721 else if {_tm} is less than 86400:
4722 set {_final} to {_tm} / 3600
4723 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Hours &7in game"
4724 stop
4725 else if {_tm} is less than 604800:
4726 set {_final} to {_tm} / 86400
4727 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Days &7in game"
4728 stop
4729 else:
4730 set {_final} to {_tm} / 604800
4731 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Weeks &7in game"
4732
4733command /disguise [<string>] [<string>]:
4734 permission: mineplex.youtube
4735 permission message: &9Permissions> &7You do not have permission to do that.
4736 trigger:
4737 if arg 1 is not set:
4738 if {mineplex.disguise.%player%} is set:
4739 send "&9Disguise> &7You are no longer disguised!"
4740 execute console command "/ud %player%"
4741 delete {mineplex.disguise.%player%}
4742 set player tab name to "%{mineplex.rank.%player%}%&e%player%"
4743 updateRankAPI(player)
4744 else:
4745 send "&9Disguise> &7You are not disguised. You can disguise with /disguise <username>"
4746 else:
4747 if {mineplex.disguise.%player%} is set:
4748 send "&9Disguise> &7You are already disguised. Please undisguise by using /disguise"
4749 else:
4750 set {_n} to the length of arg 1
4751 if {_n} is greater than 16:
4752 send "&9Disguise> &7The chosen name of &e%arg-1% &7is &e%{_n} - 16% &7characters too long!"
4753 stop
4754 if arg-1 contains "~" or "`" or "!" or "@" or "##" or "$" or "%%" or "^" or "&" or "*" or "(" or ")" or "-" or "=" or "+" or "[" or "]" or "{" or "}" or ":" or ";" or "," or "<" or ">" or "." or "?" or "/" or "\":
4755 send "&9Disguise> &7That disguise name is not permitted!"
4756 stop
4757 set {_p1} to arg-1 parsed as offline player
4758 if {_p1} is online:
4759 send "&9Disguise> &7This name already in use!"
4760 stop
4761 set {_ban} to getPlayerdata({_p1}, "banned")
4762 set {_mute} to getPlayerdata({_p1}, "muted")
4763 if {_ban} or {_muted} is "yes":
4764 send "&9Disguise> &7You may not disguise as people who are muted or banned."
4765 stop
4766 set {_rank} to getPlayerdata({_p1}, "rank")
4767 if {_rank} is set: #Not in the database
4768 if {_rank} is not "" or "All" or "Ultra" or "Hero" or "Legend" or "Titan" or "Eternal":
4769 send "&9Disguise> &7You may not disguise as users who are staff, youtubers, or twitchers."
4770 stop
4771 send "&9Disguise> &7Disguise Active: &f%arg-1%"
4772 set {_localp} to arg 1 parsed as a player
4773 rankLoad({_localp} , 2, 1)
4774 if {mineplex.level.%arg-1%} is not set:
4775 set {mineplex.level.%arg-1%} to "&70"
4776 if {mineplex.rank.%arg-1%} is not set:
4777 set {mineplex.rank.%arg-1%} to ""
4778 execute console command "/odisguise %player% player %arg-1%"
4779 set {mineplex.disguise.%player%} to arg-1 parsed as offline player
4780 set {_player} to arg 1
4781 if {mineplex.rank.%{_player}%} is not set:
4782 set {mineplex.rank.%{_player}%} to ""
4783 set player tab name to "%{mineplex.rank.%{_player}%}%&e%arg-1%"
4784 updateRankAPI(player)
4785
4786command /api [<string>] [<string>] [<string>]:
4787 trigger:
4788 if arg 1 is not set:
4789 send "&9API> &7Mineplex Core API"
4790 send "&9API> &7/api (api name)"
4791 send "&9API> &7Current API's; &adisplayrank&7, &adisplayname"
4792 send "&9API> &7Use /api (api name) (player) to view a different players's api output"
4793 else:
4794 if arg 2 is set:
4795 set {_p} to arg-2
4796 else:
4797 set {_p} to "%player%"
4798 if arg 1 is "displayrank":
4799 if {mineplex.api.displayrank.%{_p}%} is not set:
4800 set {mineplex.api.displayrank.%{_p}%} to "null"
4801 send "&9API> &7Raw API Output; &f%{mineplex.api.displayrank.%{_p}%}%"
4802 else if arg 1 is "displayname":
4803 if {mineplex.api.displayname.%{_p}%} is not set:
4804 set {mineplex.api.displayname.%{_p}%} to "null"
4805 send "&9API> &7Raw API Output; &f%{mineplex.api.displayname.%{_p}%}%"
4806 else:
4807 send "&9API> &7Invalid API!"
4808
4809command /give [<string>] [<string>] [<string>] [<string>] [<string>]:
4810 aliases: /g, /item, /i
4811 permission: mineplex.admin
4812 permission message: &9Permissions> &7This requires Permission Rank [&9ADMIN&7].
4813 trigger:
4814 if arg 1 is not set:
4815 send "&9Give: &7Listing Commands:"
4816 send "&4/give (item) Admin"
4817 send "&4/give (player) (item) (amount) Admin"
4818 send "&4/give (player) (item) (amount) (Enchantment:level) Admin"
4819 send "&4/give all (item) (amount) Admin"
4820 send "&4/give all (item) (amount) (Enchantment:level) Admin"
4821 else if arg 5 is set:
4822 send "&9Give: &7Listing Commands:"
4823 send "&4/give (item) Admin"
4824 send "&4/give (player) (item) (amount) Admin"
4825 send "&4/give (player) (item) (amount) (Enchantment:level) Admin"
4826 send "&4/give all (item) (amount) Admin"
4827 send "&4/give all (item) (amount) (Enchantment:level) Admin"
4828 else:
4829 if arg 2 is not set:
4830 set {_i1} to arg-1
4831 replace all "_" with " " in {_i1}
4832 set {_i} to "%{_i1}%" parsed as an item
4833 if {_i} is an item:
4834 send "&9Give> &7You gave &e1 %{_i}% &7to &e%player%&7."
4835 give player {_i}
4836 else:
4837 send "&9Item Search> &e0 &7matches for [&e%arg-1%&7]."
4838 send "&9Item(s) Search> &7Invalid [&e%arg-1%&7]."
4839 if arg 2 is set:
4840 if arg 3 is set:
4841 if arg 1 is "all":
4842 set {_i1} to arg-2
4843 replace all "_" with " " in {_i1}
4844 set {_i} to "%{_i1}%" parsed as an item
4845 set {_a} to arg-3 parsed as a number
4846 if {_i} is an item:
4847 if {_a} is a number:
4848 if arg 4 is set:
4849 set {_e} to arg-4 parsed as text
4850 set {_oe} to arg-4 parsed as text
4851 replace all "_" with " " in {_e}
4852 replace all ":" with " " in {_e}
4853 if "%{_e}%" parsed as an enchantment type is an enchantment type:
4854 set {_e} to "%{_e}%" parsed as an enchantment type
4855 enchant {_i} with "%{_e}%" parsed as a enchantment type
4856 else:
4857 send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]."
4858 send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &eALL&7."
4859 send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to all players
4860 loop all players:
4861 loop {_a} times:
4862 give loop-player {_i}
4863 else:
4864 send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]."
4865 send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7."
4866 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players
4867 loop all players:
4868 give loop-player {_i}
4869 else:
4870 send "&9Item Search> &e0 &7matches for [&e%{_i1}%&7]."
4871 send "&9Item(s) Search> &7Invalid [&e%{_i}%&7]."
4872 else:
4873 set {_i1} to arg-2
4874 replace all "_" with " " in {_i1}
4875 set {_i} to "%{_i1}%" parsed as an item
4876 set {_a} to arg-3 parsed as a number
4877 set {_p} to arg-1 parsed as a player
4878 if {_i} is an item:
4879 if {_p} is online:
4880 if {_a} is a number:
4881 if arg 4 is set:
4882 set {_e} to arg-4 parsed as text
4883 set {_oe} to arg-4 parsed as text
4884 replace all "_" with " " in {_e}
4885 replace all ":" with " " in {_e}
4886 if "%{_e}%" parsed as an enchantment type is an enchantment type:
4887 set {_e} to "%{_e}%" parsed as an enchantment type
4888 enchant {_i} with "%{_e}%" parsed as a enchantment type
4889 else:
4890 send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]."
4891 send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &e%{_p}%&7."
4892 send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to {_p}
4893 loop {_a} times:
4894 give {_p} {_i}
4895 else:
4896 send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]."
4897 send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7."
4898 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p}
4899 give {_p} {_i}
4900 else:
4901 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
4902 send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]."
4903 stop
4904 else:
4905 send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
4906 send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
4907 else:
4908 if arg 1 is "all":
4909 set {_i1} to arg-2
4910 replace all "_" with " " in {_i1}
4911 set {_i} to "%{_i1}%" parsed as an item
4912 if {_i} is an item:
4913 send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7."
4914 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players
4915 loop all players:
4916 give loop-player {_i}
4917 else:
4918 send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
4919 send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
4920 else:
4921 set {_i1} to arg-2
4922 replace all "_" with " " in {_i1}
4923 set {_i} to "%{_i1}%" parsed as an item
4924 set {_p} to arg-1 parsed as a player
4925 if {_i} is an item:
4926 if {_p} is online:
4927 send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7."
4928 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p}
4929 give {_p} {_i}
4930 else:
4931 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
4932 send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]."
4933 stop
4934 else:
4935 send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
4936 send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
4937
4938#/givestat player stat amount
4939command /givestat [<offline player>] [<string>] [<string>] [<string>]:
4940 permission: mineplex.support
4941 permission message: &9Permissions> &7You do not have permission to do that.
4942 trigger:
4943 if arg 1 is not set:
4944 send "&9Stats> &e/givestat (player) (stat) (amount)"
4945 else if arg 1 is set:
4946 if arg 2 is set:
4947 if arg 3 parsed as a number is set:
4948 if arg 2 is "Global.ExpEarned":
4949 set {_lvl} to arg 3 parsed as a number
4950 if {_lvl} is less than 0:
4951 send "&9Stats> &7Unknown value for &eGlobal.ExpEarned&7!"
4952 stop
4953 else if {_lvl} is less than 20:
4954 set {_temp} to "&7%{_lvl}%"
4955 set {mineplex.level.%arg-1%} to "%{_temp}%"
4956 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4957 setPlayerdata(arg-1, "level", "%{_lvl}%")
4958 stop
4959 else if {_lvl} is less than 40:
4960 set {_temp} to "&9%{_lvl}%"
4961 set {mineplex.level.%arg-1%} to "%{_temp}%"
4962 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4963 setPlayerdata(arg-1, "level", "%{_lvl}%")
4964 stop
4965 else if {_lvl} is less than 60:
4966 set {_temp} to "&2%{_lvl}%"
4967 set {mineplex.level.%arg-1%} to "%{_temp}%"
4968 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4969 setPlayerdata(arg-1, "level", "%{_lvl}%")
4970 stop
4971 else if {_lvl} is less than 80:
4972 set {_temp} to "&6%{_lvl}%"
4973 set {mineplex.level.%arg-1%} to "%{_temp}%"
4974 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4975 setPlayerdata(arg-1, "level", "%{_lvl}%")
4976 stop
4977 else if {_lvl} is less than or equal to 100:
4978 set {_temp} to "&c%{_lvl}%"
4979 set {mineplex.level.%arg-1%} to "%{_temp}%"
4980 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4981 setPlayerdata(arg-1, "level", "%{_lvl}%")
4982 stop
4983 else if arg 2 is "Global.GemsEarned":
4984 set {_num} to arg 3 parsed as a number
4985 set {_get} to getPlayerdata(arg-1, "stats.global.gems")
4986 set {_cur} to {_get} parsed as a number
4987 add {_num} to {_cur}
4988 setPlayerdata(arg-1, "stats.global.gems", "%{_cur}%")
4989 send "&9Stats> &7Applied &e%{_num}% Global.GemsEarned &7to &e%arg-1%&7."
4990 else if arg 2 is "Global.GamesPlayed":
4991 set {_num} to arg 3 parsed as a number
4992 set {_get} to getPlayerdata(arg-1, "stats.global.games")
4993 set {_cur} to {_get} parsed as a number
4994 add {_num} to {_cur}
4995 setPlayerdata(arg-1, "stats.global.games", "%{_cur}%")
4996 send "&9Stats> &7Applied &e%{_num}% Global.GamesPlayed &7to &e%arg-1%&7."
4997 else if arg 2 is "Global.DailyRewards":
4998 set {_num} to arg 3 parsed as a number
4999 set {_get} to getPlayerdata(arg-1, "stats.global.dailyr")
5000 set {_cur} to {_get} parsed as a number
5001 add {_num} to {_cur}
5002 setPlayerdata(arg-1, "stats.global.dailyr", "%{_cur}%")
5003 send "&9Stats> &7Applied &e%{_num}% Global.DailyRewards &7to &e%arg-1%&7."
5004 else if arg 2 is "Global.TimesVoted":
5005 set {_num} to arg 3 parsed as a number
5006 set {_get} to getPlayerdata(arg-1, "stats.global.voted")
5007 set {_cur} to {_get} parsed as a number
5008 add {_num} to {_cur}
5009 setPlayerdata(arg-1, "stats.global.voted", "%{_cur}%")
5010 send "&9Stats> &7Applied &e%{_num}% Global.TimesVoted &7to &e%arg-1%&7."
5011 else if arg 2 is "Global.ChestsOpened":
5012 set {_num} to arg 3 parsed as a number
5013 set {_get} to getPlayerdata(arg-1, "stats.global.chests")
5014 set {_cur} to {_get} parsed as a number
5015 add {_num} to {_cur}
5016 setPlayerdata(arg-1, "stats.global.chests", "%{_cur}%")
5017 send "&9Stats> &7Applied &e%{_num}% Global.ChestsOpened &7to &e%arg-1%&7."
5018 else:
5019 send "&9Stats> &e/givestat (player) (stat) (amount)"
5020 else:
5021 send "&9Stats> &e/givestat (player) (stat) (amount)"
5022 else:
5023 send "&9Stats> &e/givestat (player) (stat) (amount)"
5024
5025command /stats [<offline player>] [<string>]:
5026 trigger:
5027 if arg 1 is not set:
5028 set {_p} to player
5029 set {_good} to true
5030 else:
5031 if arg 1 is online:
5032 set {_p} to arg 1
5033 set {_good} to true
5034 else:
5035 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
5036 if {_good} is true:
5037 open chest with 5 rows named "%{_p}%'s Stats" to player
5038 wait 1 tick
5039 set {_tm} to {mineplex.time.%{_p}%}
5040 if {_tm} is less than 60:
5041 set {_global.time} to "%{_final}%.0 Seconds"
5042 else if {_tm} is less than 3600:
5043 set {_final} to {_tm} / 60
5044 set {_global.time} to "%{_final}% Minutes"
5045 else if {_tm} is less than 86400:
5046 set {_final} to {_tm} / 3600
5047 set {_global.time} to "%{_final}% Hours"
5048 else if {_tm} is less than 604800:
5049 set {_final} to {_tm} / 86400
5050 set {_global.time} to "%{_final}% Days"
5051 else:
5052 set {_final} to {_tm} / 604800
5053 set {_global.time} to "%{_final}% Weeks"
5054 set {_global.gems} to getPlayerdata({_p}, "stats.global.gems")
5055 set {_global.games} to getPlayerdata({_p}, "stats.global.games")
5056 set {_global.dailyr} to getPlayerdata({_p}, "stats.global.dailyr")
5057 set {_global.voted} to getPlayerdata({_p}, "stats.global.voted")
5058 set {_global.chests} to getPlayerdata({_p}, "stats.global.chests")
5059 format slot 2 of player with emerald named "&a&lGlobal" with lore "||&eGems Earned: &f%{_global.gems}%|| ||&eGames Played: &f%{_global.games}%||&eTime In Game: &f%{_global.time}%|| ||&eDaily Rewards: &f%{_global.dailyr}%||&eTimes Voted: &f%{_global.voted}%|| ||&eChests Opened: &f%{_global.chests}%" to be unstealable
5060
5061command /mcr:
5062 trigger:
5063 send "&9Plugin> &7Mineplex Core"
5064 send "&9Plugin> &7Running MCR: &e{@MCRVER}"
5065 send "&9Plugin> &7Hotfix/Release Cycle: &e{@MCRHOTFIX}"
5066 send "&9Plugin> &7by &aWheezyGold7931&7, &eOttelino&7, &eTheSkripterDK&7, &eTorksi&7, &7and &eItzRenderman"
5067 send "&9Plugin> &7GitHub Contributors: NaiculS, termanator1128, IsGeorgeCurious, Techno3600, TreyRuffy, and WilliePlaysMC."
5068 send "&9Plugin> &7Special thanks to SoftBreeze, Rezz, Boobah, TonyMaster21, LimeGlass, and Citrin_"
5069 send ""
5070 send "&9Patreon> &7Huge Thanks to my Patreons:"
5071 send "&9Patreon> &eNone, anymore"
5072 send "&9Patreon> &7If you want to be listed there than support me on Patreon!:"
5073 send "&9Patreon> &bhttps://www.patreon.com/WheezyGold7931"
5074
5075command /a [<text>]:
5076 aliases: /admin
5077 trigger:
5078 if arg 1 is not set:
5079 send "&9Admin> &7Corect Usage: /a (message)"
5080 stop
5081 if {mineplex.disguise.%player%} is set:
5082 send "&9Admin> &7Disguised users cannot use /a while disguised!"
5083 stop
5084 else:
5085 set {_p} to player
5086 set {_get} to getPlayerdata(player, "muted")
5087 if {_get} is "yes":
5088 if {muted::%player%::type} is "perm":
5089 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
5090 stop
5091 if {muted::%player%::type} is "temp":
5092 set {_waited} to difference between {muted::%player%::when} and now
5093 if {_waited} is less than {muted::%player%::time}:
5094 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
5095 stop
5096 if {mineplex.rank.%{_p}%} is "":
5097 set {_display} to "Player %{_p}%"
5098 else:
5099 set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
5100 if player has permission "mineplex.trainee":
5101 loop all players:
5102 if loop-player has permission "mineplex.trainee":
5103 send "%{_display}% &d%arg-1%" to loop-player
5104 play "NOTE_PLING" to loop-player at volume 0.5
5105 else:
5106 send "%{_display}% &d%arg-1%"
5107 play "NOTE_PLING" to player at volume 0.5
5108 loop all players:
5109 if loop-player has permission "mineplex.trainee":
5110 send "%{_display}% &d%arg-1%" to loop-player
5111 play "NOTE_PLING" to loop-player at volume 0.5
5112
5113command /ma [<player>] [<text>]:
5114 permission: mineplex.trainee
5115 permission message: &9Permissions> &7You do not have permission to do that.
5116 trigger:
5117 if {mineplex.disguise.%player%} is set:
5118 send "&9Admin> &7Disguised users cannot use /a while disguised!"
5119 stop
5120 else:
5121 set {_p} to player
5122 if {mineplex.rank.%{_p}%} is "":
5123 set {_display} to "&fPlayer %{_p}%"
5124 else:
5125 set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
5126 if {mineplex.rank.%arg-1%} is "":
5127 set {_display2} to "&fPlayer %arg-1%"
5128 else:
5129 set {_display2} to "%{mineplex.displaya.%arg-1%}% %arg-1%"
5130 if player has permission "mineplex.trainee":
5131 if argument 1 and argument 2 is set:
5132 send "&d-> %{_display2}% &d%arg 2%"
5133 send "&d<- %{_display}% &d%arg 2%" to arg-1
5134 set {mineplex.lasta.%player%} to arg-1
5135 play "NOTE_PLING" to player at volume 0.5
5136 play "NOTE_PLING" to arg-1 at volume 0.5
5137 loop all players:
5138 if loop-player has permission "mineplex.trainee":
5139 if loop-player is not player or arg-1:
5140 send "%{_display}% &d-> %{_display2}% &d%arg 2%" to loop-player
5141 else:
5142 send "&9Message> &cErr...something went wrong?"
5143 else:
5144 send "&9Permissions> &7You do not have permission to do that."
5145
5146command /ra [<text>]:
5147 permission: mineplex.trainee
5148 permission message: &9Permissions> &7You do not have permission to do that.
5149 trigger:
5150 if {mineplex.disguise.%player%} is set:
5151 set {_p} to {mineplex.disguise.%player%}
5152 else:
5153 set {_p} to player
5154 if {mineplex.rank.%{_p}%} is "":
5155 set {_display} to "&fPlayer %{_p}%"
5156 else:
5157 set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
5158 if {mineplex.rank.%{mineplex.lasta.%player%}%} is "":
5159 set {_display2} to "&fPlayer %{mineplex.lasta.%player%}%"
5160 else:
5161 set {_display2} to "%{mineplex.displaya.%{mineplex.lasta.%player%}%}% %{mineplex.lasta.%player%}%"
5162 if {mineplex.lasta.%player%} is not set:
5163 send "&9Message> &7You have not messaged anyone recently."
5164 stop
5165 else:
5166 if argument 1 is set:
5167 send "&d-> %{_display2}% &d%arg 1%"
5168 send "&d<- %{_display}% &d%arg-1%" to {mineplex.lasta.%player%}
5169 play "NOTE_PLING" to player at volume 0.5
5170 play "NOTE_PLING" to {mineplex.lasta.%player%} at volume 0.5
5171 loop all players:
5172 if loop-player has permission "mineplex.trainee":
5173 if loop-player is not player or {mineplex.lasta.%player%}:
5174 send "%{_display}% &d-> %{_display2}% &d%arg 1%" to loop-player
5175 else:
5176 send "&9Message> &cErr...something went wrong?"
5177
5178command /vanish:
5179 aliases: /incognito
5180 permission: mineplex.trainee
5181 permission message: &9Permissions> &7You do not have permission to do that.
5182 trigger:
5183 if {mineplex.vanish.%player%} is true:
5184 loop all players:
5185 loop-value doesn't have permission "mineplex.admin"
5186 add loop-value to {_vanishto::*}
5187
5188 reveal player from all players
5189 set {mineplex.vanish.%player%} to false
5190 send "&9Moderation> &7Disabled moderator mode."
5191 send "&9Incognito> &7You are no longer incognito. Your status will only change when you run &e/vanish &7again."
5192 else:
5193 loop all players:
5194 loop-value doesn't have permission "mineplex.admin"
5195 add loop-value to {_vanishto::*}
5196
5197 hide player from {_vanishto::*}
5198 set {mineplex.vanish.%player%} to true
5199 send "&9Moderation> &7Enabled moderator mode."
5200 send "&9Incognito> &7You are now incognito. Your status will only change when you run &e/vanish &7again."
5201
5202function friendButtons(p: player) :: number:
5203 set {_t} to "Steve" parsed as an offline player
5204 set slot 0 of {_p}'s current inventory to {_t}'s skull named "&fFriends" with lore ""
5205 set slot 2 of {_p}'s current inventory to rose named "&fFriend Requests" with lore ""
5206 set slot 4 of {_p}'s current inventory to tnt named "&fDelete Friends" with lore ""
5207 set slot 6 of {_p}'s current inventory to book and quill named "&fSend Friend Request" with lore ""
5208 set slot 8 of {_p}'s current inventory to sign item named "&7Toggle friends to display in chat" with lore ""
5209
5210function friendClean(p: player) :: number:
5211 set {_s} to 18
5212 loop 27 times:
5213 set slot {_s} of {_p}'s current inventory to air
5214 add 1 to {_s}
5215 if {_s} = 44:
5216 exit loop
5217 friendButtons({_p})
5218
5219function friendMain(p: player) :: number:
5220 open chest with 6 rows named "Friends" to {_p}
5221 friendClean({_p})
5222 set {_s} to 18
5223 loop {friends.list.%{_p}%::*}:
5224 set {_t} to "%loop-value%" parsed as offline player
5225 if {_t} is online:
5226 set {_a} to "&2Online"
5227 set {_w} to "&e%{_t}'s world%"
5228 set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7&lServer: %{_w}%|| ||&7Left click to teleport to their server"
5229 else:
5230 set {_a} to "&cOffline"
5231 set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7Last seen N/A Days ago"
5232 add 1 to {_s}
5233 if {_s} = 44:
5234 exit loop
5235
5236function friendDel(p: player) :: number:
5237 open chest with 6 rows named "Delete Friends" to {_p}
5238 friendClean({_p})
5239 set {_s} to 18
5240 loop {friends.list.%{_p}%::*}:
5241 set {_t} to "%loop-value%" parsed as offline player
5242 if {_t} is online:
5243 set {_a} to "&2Online"
5244 set {_w} to "&e%{_t}'s world%"
5245 set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7&lServer: %{_w}%|| ||&7Left click to teleport to their server"
5246 else:
5247 set {_a} to "&cOffline"
5248 set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7Last seen N/A Days ago"
5249 add 1 to {_s}
5250 if {_s} = 44:
5251 exit loop
5252
5253function friendReq(p: player) :: number:
5254 open chest with 6 rows named "Friend Requests" to {_p}
5255 friendClean({_p})
5256 set {_s} to 18
5257 loop {friends.request.%{_p}%::*}:
5258 set {_t} to "%loop-value%" parsed as offline player
5259 set slot {_s} of {_p}'s current inventory to paper named "&7Friend request from &f&l%{_t}%" with lore "||&7Left click to accept friend request"
5260 add 1 to {_s}
5261 if {_s} = 44:
5262 exit loop
5263
5264command /friend [<string>] [<string>]:
5265 aliases: /f
5266 trigger:
5267 if arg 1 is not set:
5268 friendMain(player)
5269 else:
5270 if arg 1 is "%player%":
5271 send "&9Friends> &7You cannot friend yourself!"
5272 stop
5273 stop
5274 loop {friends.list.%arg-1%::*}:
5275 if loop-value is "%player%":
5276 set {_f} to true
5277 loop {friends.request.%arg-1%::*}:
5278 if loop-value is "%player%":
5279 set {_a} to true
5280 if {_a} is true:
5281 send "&9Friends> &a%arg-1% &7has yet to respond to your friend request."
5282 else if {_f} is true:
5283 send "&9Friends> &7You are already friends with &a%arg-1%"
5284 else:
5285 add "%player%" to {friends.request.%arg-1%::*}
5286 send "&9Friends> &7Added &a%arg-1% &7to your friends list!"
5287
5288on inventory click:
5289 if inventory name of player's current inventory is "Friends":
5290 if clicked slot is 2:
5291 friendReq(player)
5292 if clicked slot is 4:
5293 friendDel(player)
5294 cancel event
5295 if inventory name of player's current inventory is "Friend Requests":
5296 if clicked slot is 0:
5297 friendMain(player)
5298 if clicked slot is 4:
5299 friendDel(player)
5300 else:
5301 set {_n} to name of clicked item
5302 if {_n} contains "&7Friend request from ":
5303 replace all "&7Friend request from " with "" in {_n}
5304 set {_f} to uncolored {_n}
5305 remove {_f} from {friends.request.%player%::*}
5306 add {_f} to {friends.list.%player%::*}
5307 add "%player%" to {friends.list.%{_f}%::*}
5308 send "&9Friends> &aYou &7and &a%{_f}% &7are now friends!"
5309 friendReq(player)
5310 cancel event
5311 if inventory name of player's current inventory is "Delete Friends":
5312 if clicked slot is 0:
5313 friendMain(player)
5314 if clicked slot is 2:
5315 friendReq(player)
5316 else:
5317 if "%clicked item%" is "player head":
5318 if clicked slot is not 0:
5319 set {_n} to name of clicked item
5320 set {_f} to uncolored {_n}
5321 replace all " " with "" in {_f}
5322 remove {_f} from {friends.list.%player%::*}
5323 remove {_f} from {friends.list.%{_l}%::*}
5324 send "&9Friends> &7Deleted &a%{_f}% &7from your friends list!"
5325 friendDel(player)
5326 cancel event
5327
5328command /chatslow [<integer>]:
5329 aliases: /cs
5330 permission: mineplex.srmod
5331 permission message: &9Permissions> &7You do not have permission to do that.
5332 trigger:
5333 if {mineplex.disguise.%player%} is set:
5334 set {_p} to {mineplex.disguise.%player%}
5335 else:
5336 set {_p} to player
5337 if argument 1 is set:
5338 if {mineplex.chatsilence} is set:
5339 send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat."
5340 stop
5341 else:
5342 if {mineplex.chatslow} is not set:
5343 set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan
5344 send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players
5345 else:
5346 set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan
5347 send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players
5348 send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players
5349 else:
5350 if {mineplex.chatsilence} is set:
5351 send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat."
5352 stop
5353 else:
5354 if {mineplex.chatslow} is set:
5355 delete {mineplex.chatslow}
5356 send "&9Chat> &6%{_p}% &7has disabled chat slow." to all players
5357 else:
5358 send "&9Message> &cYou didn't enter a time limit! Defaulting to 10 seconds."
5359 set {mineplex.chatslow} to "10 seconds" parsed as timespan
5360 send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players
5361 send "&9Chat> &6%{_p}% &7has set the chat delay to &610 &7seconds." to all players
5362command /silence:
5363 permission: mineplex.admin
5364 permission message: &9Permissions> &7You do not have permission to do that.
5365 trigger:
5366 if {mineplex.chatslow} is set:
5367 delete {mineplex.chatslow}
5368 send "&9Chat> &6%player% &7has disabled chat slow." to all players
5369 set {mineplex.chatsilence} to true
5370 send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players
5371 stop
5372 if {mineplex.chatsilence} is set:
5373 delete {mineplex.chatsilence}
5374 send "&9Chat> &7The chat is no longer silenced." to all players
5375 else:
5376 set {mineplex.chatsilence} to true
5377 send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players
5378
5379command /locate [<string>]:
5380 aliases: /find, /where
5381 permission: mineplex.trainee
5382 permission message: &9Permissions> &7You do not have permission to do that.
5383 trigger:
5384 if argument 1 is set:
5385 set {_tmp} to arg 1 parsed as an offline player
5386 if {_tmp} is online:
5387 set {_mineplex.locate.temp} to "%{_tmp}'s world%"
5388 send "&9Locate> &7Located [&e%arg-1%&7] at &9%{_mineplex.locate.temp}%"
5389 else:
5390 send "&9Locate> &7Failed to locate [&e%arg-1%&7]."
5391 else:
5392 send "&9Locate> &7Player argument missing."
5393
5394command /rank [<string>] [<offline player>] [<string>]:
5395 permission: mineplex.support
5396 permission message: &9Permissions> &7You do not have permission to do that.
5397 trigger:
5398 if argument 1 is not set:
5399 send "&9Client Manager> &7Listing Commands:"
5400 send "&4/rank set <player> <rank>: &fSets the target user's rank"
5401 send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank"
5402 stop
5403 if argument 1 is not "set" or "test":
5404 send "&9Client Manager> &7Listing Commands:"
5405 send "&4/rank set <player> <rank>: &fSets the target user's rank"
5406 send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank"
5407 stop
5408 if argument 1 is "set":
5409 if argument 2 or argument 3 is not set:
5410 send "&9Client Manager> &7Listing Rank Update Commands:"
5411 send "&f/rank set (player) (rank): &eupdates chosen player's rank to the chosen rank"
5412 send ""
5413 send "&9Rank Update> &7Listing Rank List:"
5414 send "&9Ranks> &7ALL, ULTRA, HERO, LEGEND, TITAN, ETERNAL, TRAINEE, MODERATOR, SNR_MODERATOR, CLANS_MOD, JNR_DEV, SUPPORT, ADMIN, LEADER, DEVELOPER, OWNER, ARTIST, MAPLEAD, BUILDER, MAPPER, EVENT, TWITCH, YOUTUBE, YT."
5415 #send "&9Ranks> &7ULTRA"
5416 #send "&9Ranks> &7HERO"
5417 #send "&9Ranks> &7LEGEND"
5418 #send "&9Ranks> &7TITAN"
5419 #send "&9Ranks> &7ETERNAL"
5420 #send "&9Ranks> &7TRAINEE"
5421 #send "&9Ranks> &7MODERATOR"
5422 #send "&9Ranks> &7SNR_MODERATOR"
5423 #send "&9Ranks> &7CLANS_MOD"
5424 #send "&9Ranks> &7JNR_DEV"
5425 #send "&9Ranks> &7SUPPORT"
5426 #send "&9Ranks> &7ADMIN"
5427 #send "&9Ranks> &7LEADER"
5428 #send "&9Ranks> &7DEVELOPER"
5429 #send "&9Ranks> &7OWNER"
5430 #send "&9Ranks> &7ARTIST"
5431 #send "&9Ranks> &7MAPLEAD"
5432 #send "&9Ranks> &7BUILDER"
5433 #send "&9Ranks> &7MAPPER"
5434 #send "&9Ranks> &7EVENT"
5435 #send "&9Ranks> &7TWITCH"
5436 #send "&9Ranks> &7YOUTUBE"
5437 #send "&9Ranks> &7YT"
5438 stop
5439 set {_uuid} to uuid of arg-2
5440 set {_allcap} to convert arg-3 to all caps
5441 if argument 3 is "ALL":
5442 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5443 if {_c} is true:
5444 set {mineplex.rank.%arg-2%} to ""
5445 execute console command "/__mp__dp__ %arg-2%"
5446 send "&9Client Manager> &7%arg-2%'s rank has been updated to None!"
5447 send "&9Client Manager> &7Your rank has been updated to None!" to arg 2
5448 set arg-2 tab name to "&e%arg-2%"
5449 updateRankAPI(arg-2)
5450 setPlayerdata(arg-2, "rank", "All")
5451 else:
5452 send "&9Client Manager> &c&lInvalid rank!"
5453 else if argument 3 is "ULTRA":
5454 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5455 if {_c} is true:
5456 set {mineplex.rank.%arg-2%} to "&b&lULTRA "
5457 execute console command "/__mp__dp__ %arg-2%"
5458 send "&9Client Manager> &7%arg-2%'s rank has been updated to Ultra!"
5459 send "&9Client Manager> &7Your rank has been updated to Ultra!" to arg 2
5460 set arg-2 tab name to "&b&lULTRA &e%arg-2%"
5461 updateRankAPI(arg-2)
5462 setPlayerdata(arg-2, "rank", "Ultra")
5463 else:
5464 send "&9Client Manager> &c&lInvalid rank!"
5465 else if argument 3 is "HERO":
5466 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5467 if {_c} is true:
5468 set {mineplex.rank.%arg-2%} to "&d&lHERO "
5469 execute console command "/__mp__dp__ %arg-2%"
5470 send "&9Client Manager> &7%arg-2%'s rank has been updated to Hero!"
5471 send "&9Client Manager> &7Your rank has been updated to Hero!" to arg 2
5472 set arg-2 tab name to "&d&lHERO &e%arg-2%"
5473 updateRankAPI(arg-2)
5474 setPlayerdata(arg-2, "rank", "Hero")
5475 else:
5476 send "&9Client Manager> &c&lInvalid rank!"
5477 else if argument 3 is "LEGEND":
5478 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5479 if {_c} is true:
5480 set {mineplex.rank.%arg-2%} to "&a&lLEGEND "
5481 execute console command "/__mp__dp__ %arg-2%"
5482 add "mineplex.legend" to arg-2's permissions
5483 send "&9Client Manager> &7%arg-2%'s rank has been updated to Legend!"
5484 send "&9Client Manager> &7Your rank has been updated to Legend!" to arg 2
5485 set arg-2 tab name to "&a&lLEGEND &e%arg-2%"
5486 updateRankAPI(arg-2)
5487 setPlayerdata(arg-2, "rank", "Legend")
5488 else:
5489 send "&9Client Manager> &c&lInvalid rank!"
5490 else if argument 3 is "TITAN":
5491 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5492 if {_c} is true:
5493 set {mineplex.rank.%arg-2%} to "&c&lTITAN "
5494 execute console command "/__mp__dp__ %arg-2%"
5495 add "mineplex.legend" to arg-2's permissions
5496 add "mineplex.titan" to arg-2's permissions
5497 send "&9Client Manager> &7%arg-2%'s rank has been updated to Titan!"
5498 send "&9Client Manager> &7Your rank has been updated to Titan!" to arg 2
5499 set arg-2 tab name to "&c&lTITAN &e%arg-2%"
5500 updateRankAPI(arg-2)
5501 setPlayerdata(arg-2, "rank", "Titan")
5502 else:
5503 send "&9Client Manager> &c&lInvalid rank!"
5504 else if argument 3 is "ETERNAL":
5505 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5506 if {_c} is true:
5507 set {mineplex.rank.%arg-2%} to "&3&lETERNAL "
5508 execute console command "/__mp__dp__ %arg-2%"
5509 add "mineplex.legend" to arg-2's permissions
5510 add "mineplex.titan" to arg-2's permissions
5511 send "&9Client Manager> &7%arg-2%'s rank has been updated to Eternal!"
5512 send "&9Client Manager> &7Your rank has been updated to Eternal!" to arg 2
5513 set arg-2 tab name to "&3&lETERNAL &e%arg-2%"
5514 updateRankAPI(arg-2)
5515 setPlayerdata(arg-2, "rank", "Eternal")
5516 else:
5517 send "&9Client Manager> &c&lInvalid rank!"
5518 else if argument 3 is "TRAINEE":
5519 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5520 if {_c} is true:
5521 set {mineplex.rank.%arg-2%} to "&6&lTRAINEE "
5522 execute console command "/__mp__dp__ %arg-2%"
5523 add "mineplex.trainee" to arg-2's permissions
5524 add "mineplex.legend" to arg-2's permissions
5525 add "mineplex.titan" to arg-2's permissions
5526 add "mineplex.2fa" to arg-2's permissions
5527 send "&9Client Manager> &7%arg-2%'s rank has been updated to Trainee!"
5528 send "&9Client Manager> &7Your rank has been updated to Trainee!" to arg 2
5529 set arg-2 tab name to "&6&lTRAINEE &e%arg-2%"
5530 updateRankAPI(arg-2)
5531 setPlayerdata(arg-2, "rank", "Trainee")
5532 else:
5533 send "&9Client Manager> &c&lInvalid rank!"
5534 else if argument 3 is "MODERATOR":
5535 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5536 if {_c} is true:
5537 set {mineplex.rank.%arg-2%} to "&6&lMOD "
5538 execute console command "/__mp__dp__ %arg-2%"
5539 add "mineplex.trainee" to arg-2's permissions
5540 add "mineplex.mod" to arg-2's permissions
5541 add "mineplex.legend" to arg-2's permissions
5542 add "mineplex.2fa" to arg-2's permissions
5543 add "mineplex.titan" to arg-2's permissions
5544 send "&9Client Manager> &7%arg-2%'s rank has been updated to Mod!"
5545 send "&9Client Manager> &7Your rank has been updated to Mod!" to arg 2
5546 set arg-2 tab name to "&6&lMOD &e%arg-2%"
5547 updateRankAPI(arg-2)
5548 setPlayerdata(arg-2, "rank", "Mod")
5549 else:
5550 send "&9Client Manager> &c&lInvalid rank!"
5551 else if argument 3 is "SNR_MODERATOR":
5552 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5553 if {_c} is true:
5554 set {mineplex.rank.%arg-2%} to "&6&lSR.MOD "
5555 execute console command "/__mp__dp__ %arg-2%"
5556 add "mineplex.trainee" to arg-2's permissions
5557 add "mineplex.mod" to arg-2's permissions
5558 add "mineplex.srmod" to arg-2's permissions
5559 add "mineplex.legend" to arg-2's permissions
5560 add "mineplex.2fa" to arg-2's permissions
5561 add "mineplex.titan" to arg-2's permissions
5562 send "&9Client Manager> &7%arg-2%'s rank has been updated to Sr.Mod!"
5563 send "&9Client Manager> &7Your rank has been updated to Sr.Mod!" to arg 2
5564 set arg-2 tab name to "&6&lSR.MOD &e%arg-2%"
5565 updateRankAPI(arg-2)
5566 set "rank" to "SrMod" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
5567 setPlayerdata(arg-2, "rank", "SrMod")
5568 else:
5569 send "&9Client Manager> &c&lInvalid rank!"
5570 else if argument 3 is "CLANS_MOD":
5571 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5572 if {_c} is true:
5573 set {mineplex.rank.%arg-2%} to "&6&lC.MOD "
5574 execute console command "/__mp__dp__ %arg-2%"
5575 add "mineplex.trainee" to arg-2's permissions
5576 add "mineplex.mod" to arg-2's permissions
5577 add "mineplex.srmod" to arg-2's permissions
5578 add "mineplex.legend" to arg-2's permissions
5579 add "mineplex.2fa" to arg-2's permissions
5580 add "mineplex.titan" to arg-2's permissions
5581 send "&9Client Manager> &7%arg-2%'s rank has been updated to C.Mod!"
5582 send "&9Client Manager> &7Your rank has been updated to C.Mod!" to arg 2
5583 set arg-2 tab name to "&6&lC.MOD &e%arg-2%"
5584 updateRankAPI(arg-2)
5585 setPlayerdata(arg-2, "rank", "CMod")
5586 else:
5587 send "&9Client Manager> &c&lInvalid rank!"
5588 else if argument 3 is "ADMIN":
5589 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5590 if {_c} is true:
5591 set {mineplex.rank.%arg-2%} to "&4&lADMIN "
5592 execute console command "/__mp__dp__ %arg-2%"
5593 add "mineplex.trainee" to arg-2's permissions
5594 add "mineplex.legend" to arg-2's permissions
5595 add "mineplex.mod" to arg-2's permissions
5596 add "mineplex.jrdev" to arg-2's permissions
5597 add "mineplex.youtube" to arg-2's permissions
5598 add "mineplex.builder" to arg-2's permissions
5599 add "mineplex.srmod" to arg-2's permissions
5600 add "mineplex.support" to arg-2's permissions
5601 add "mineplex.admin" to arg-2's permissions
5602 add "mineplex.titan" to arg-2's permissions
5603 add "mineplex.2fa" to arg-2's permissions
5604 send "&9Client Manager> &7%arg-2%'s rank has been updated to Admin!"
5605 send "&9Client Manager> &7Your rank has been updated to Admin!" to arg 2
5606 set arg-2 tab name to "&4&lADMIN &e%arg-2%"
5607 updateRankAPI(arg-2)
5608 setPlayerdata(arg-2, "rank", "Admin")
5609 else:
5610 send "&9Client Manager> &c&lInvalid rank!"
5611 else if argument 3 is "APEX":
5612 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5613 if {_c} is true:
5614 set {mineplex.rank.%arg-2%} to "&9&lAPEX "
5615 execute console command "/__mp__dp__ %arg-2%"
5616 add "mineplex.trainee" to arg-2's permissions
5617 add "mineplex.legend" to arg-2's permissions
5618 add "mineplex.mod" to arg-2's permissions
5619 add "mineplex.jrdev" to arg-2's permissions
5620 add "mineplex.support" to arg-2's permissions
5621 add "mineplex.youtube" to arg-2's permissions
5622 add "mineplex.builder" to arg-2's permissions
5623 add "mineplex.srmod" to arg-2's permissions
5624 add "mineplex.admin" to arg-2's permissions
5625 add "mineplex.titan" to arg-2's permissions
5626 add "mineplex.2fa" to arg-2's permissions
5627 send "&9Client Manager> &7%arg-2%'s rank has been updated to Apex Minecraft Hosting!"
5628 send "&9Client Manager> &7Your rank has been updated to Apex Minecraft Hosting!" to arg 2
5629 set arg-2 tab name to "&9&lAPEX &e%arg-2%"
5630 updateRankAPI(arg-2)
5631 setPlayerdata(arg-2, "rank", "Apex")
5632 else:
5633 send "&9Client Manager> &c&lInvalid rank!"
5634 else if argument 3 is "LEADER":
5635 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5636 if {_c} is true:
5637 set {mineplex.rank.%arg-2%} to "&4&lLEADER "
5638 execute console command "/__mp__dp__ %arg-2%"
5639 add "mineplex.trainee" to arg-2's permissions
5640 add "mineplex.mod" to arg-2's permissions
5641 add "mineplex.jrdev" to arg-2's permissions
5642 add "mineplex.builder" to arg-2's permissions
5643 add "mineplex.srmod" to arg-2's permissions
5644 add "mineplex.admin" to arg-2's permissions
5645 add "mineplex.support" to arg-2's permissions
5646 add "mineplex.youtube" to arg-2's permissions
5647 add "mineplex.legend" to arg-2's permissions
5648 add "mineplex.2fa" to arg-2's permissions
5649 add "mineplex.leader" to arg-2's permissions
5650 add "mineplex.titan" to arg-2's permissions
5651 send "&9Client Manager> &7%arg-2%'s rank has been updated to Leader!"
5652 send "&9Client Manager> &7Your rank has been updated to Leader!" to arg 2
5653 set arg-2 tab name to "&4&lLEADER &e%arg-2%"
5654 updateRankAPI(arg-2)
5655 setPlayerdata(arg-2, "rank", "Leader")
5656 else:
5657 send "&9Client Manager> &c&lInvalid rank!"
5658 else if argument 3 is "OWNER":
5659 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5660 if {_c} is true:
5661 set {mineplex.rank.%arg-2%} to "&4&lOWNER "
5662 execute console command "/__mp__dp__ %arg-2%"
5663 add "mineplex.trainee" to arg-2's permissions
5664 add "mineplex.mod" to arg-2's permissions
5665 add "mineplex.srmod" to arg-2's permissions
5666 add "mineplex.admin" to arg-2's permissions
5667 add "mineplex.jrdev" to arg-2's permissions
5668 add "mineplex.dev" to arg-2's permissions
5669 add "mineplex.youtube" to arg-2's permissions
5670 add "mineplex.builder" to arg-2's permissions
5671 add "mineplex.leader" to arg-2's permissions
5672 add "mineplex.jrdev" to arg-2's permissions
5673 add "mineplex.2fa" to arg-2's permissions
5674 add "mineplex.support" to arg-2's permissions
5675 add "mineplex.owner" to arg-2's permissions
5676 add "mineplex.legend" to arg-2's permissions
5677 add "mineplex.titan" to arg-2's permissions
5678 send "&9Client Manager> &7%arg-2%'s rank has been updated to Owner!"
5679 send "&9Client Manager> &7Your rank has been updated to Owner!" to arg 2
5680 set arg-2 tab name to "&4&lOWNER &e%arg-2%"
5681 updateRankAPI(arg-2)
5682 setPlayerdata(arg-2, "rank", "Owner")
5683 else:
5684 send "&9Client Manager> &c&lInvalid rank!"
5685 else if argument 3 is "BUILDER":
5686 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5687 if {_c} is true:
5688 set {mineplex.rank.%arg-2%} to "&9&lBUILDER "
5689 execute console command "/__mp__dp__ %arg-2%"
5690 add "mineplex.titan" to arg-2's permissions
5691 add "mineplex.legend" to arg-2's permissions
5692 add "mineplex.2fa" to arg-2's permissions
5693 send "&9Client Manager> &7%arg-2%'s rank has been updated to Builder!"
5694 send "&9Client Manager> &7Your rank has been updated to Builder!" to arg 2
5695 set arg-2 tab name to "&9&lBUIDLER &e%arg-2%"
5696 updateRankAPI(arg-2)
5697 setPlayerdata(arg-2, "rank", "Builder")
5698 else:
5699 send "&9Client Manager> &c&lInvalid rank!"
5700 else if argument 3 is "MAPPER":
5701 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5702 if {_c} is true:
5703 set {mineplex.rank.%arg-2%} to "&9&lMAPPER "
5704 execute console command "/__mp__dp__ %arg-2%"
5705 add "mineplex.builder" to arg-2's permissions
5706 add "mineplex.titan" to arg-2's permissions
5707 add "mineplex.legend" to arg-2's permissions
5708 add "mineplex.2fa" to arg-2's permissions
5709 send "&9Client Manager> &7%arg-2%'s rank has been updated to Mapper!"
5710 send "&9Client Manager> &7Your rank has been updated to Mapper!" to arg 2
5711 set arg-2 tab name to "&9&lMAPPER &e%arg-2%"
5712 updateRankAPI(arg-2)
5713 setPlayerdata(arg-2, "rank", "Mapper")
5714 else:
5715 send "&9Client Manager> &c&lInvalid rank!"
5716 else if argument 3 is "SUPPORT":
5717 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5718 if {_c} is true:
5719 set {mineplex.rank.%arg-2%} to "&9&lSUPPORT "
5720 execute console command "/__mp__dp__ %arg-2%"
5721 add "mineplex.trainee" to arg-2's permissions
5722 add "mineplex.legend" to arg-2's permissions
5723 add "mineplex.jrdev" to arg-2's permissions
5724 add "mineplex.2fa" to arg-2's permissions
5725 add "mineplex.mod" to arg-2's permissions
5726 add "mineplex.youtube" to arg-2's permissions
5727 add "mineplex.builder" to arg-2's permissions
5728 add "mineplex.srmod" to arg-2's permissions
5729 add "mineplex.support" to arg-2's permissions
5730 add "mineplex.titan" to arg-2's permissions
5731 send "&9Client Manager> &7%arg-2%'s rank has been updated to Support!"
5732 send "&9Client Manager> &7Your rank has been updated to Support!" to arg 2
5733 set arg-2 tab name to "&9&lSUPPORT &e%arg-2%"
5734 updateRankAPI(arg-2)
5735 setPlayerdata(arg-2, "rank", "Support")
5736 else:
5737 send "&9Client Manager> &c&lInvalid rank!"
5738 else if argument 3 is "ARTIST":
5739 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5740 if {_c} is true:
5741 set {mineplex.rank.%arg-2%} to "&9&lARTIST "
5742 execute console command "/__mp__dp__ %arg-2%"
5743 add "mineplex.legend" to arg-2's permissions
5744 add "mineplex.titan" to arg-2's permissions
5745 send "&9Client Manager> &7%arg-2%'s rank has been updated to Artist!"
5746 send "&9Client Manager> &7Your rank has been updated to Artist!" to arg 2
5747 set arg-2 tab name to "&9&lARTIST &e%arg-2%"
5748 updateRankAPI(arg-2)
5749 setPlayerdata(arg-2, "rank", "Artist")
5750 else:
5751 send "&9Client Manager> &c&lInvalid rank!"
5752 else if argument 3 is "MAPLEAD":
5753 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5754 if {_c} is true:
5755 set {mineplex.rank.%arg-2%} to "&9&lMAPLEAD "
5756 execute console command "/__mp__dp__ %arg-2%"
5757 add "mineplex.builder" to arg-2's permissions
5758 add "mineplex.2fa" to arg-2's permissions
5759 add "mineplex.titan" to arg-2's permissions
5760 add "mineplex.legend" to arg-2's permissions
5761 send "&9Client Manager> &7%arg-2%'s rank has been updated to MapLead!"
5762 send "&9Client Manager> &7Your rank has been updated to MapLead!" to arg 2
5763 set arg-2 tab name to "&9&lMAPLEAD &e%arg-2%"
5764 updateRankAPI(arg-2)
5765 setPlayerdata(arg-2, "rank", "Maplead")
5766 else:
5767 send "&9Client Manager> &c&lInvalid rank!"
5768 else if argument 3 is "JNR_DEV":
5769 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5770 if {_c} is true:
5771 set {mineplex.rank.%arg-2%} to "&6&lJR.DEV "
5772 execute console command "/__mp__dp__ %arg-2%"
5773 add "mineplex.trainee" to arg-2's permissions
5774 add "mineplex.mod" to arg-2's permissions
5775 add "mineplex.srmod" to arg-2's permissions
5776 add "mineplex.2fa" to arg-2's permissions
5777 add "mineplex.builder" to arg-2's permissions
5778 add "mineplex.jrdev" to arg-2's permissions
5779 add "mineplex.legend" to arg-2's permissions
5780 add "mineplex.titan" to arg-2's permissions
5781 send "&9Client Manager> &7%arg-2%'s rank has been updated to Jr.Dev!"
5782 send "&9Client Manager> &7Your rank has been updated to Jr.Dev!" to arg 2
5783 set arg-2 tab name to "&6&lJR.DEV &e%arg-2%"
5784 updateRankAPI(arg-2)
5785 setPlayerdata(arg-2, "rank", "JrDev")
5786 else:
5787 send "&9Client Manager> &c&lInvalid rank!"
5788 else if argument 3 is "DEVELOPER":
5789 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5790 if {_c} is true:
5791 set {mineplex.rank.%arg-2%} to "&4&lDEV "
5792 execute console command "/__mp__dp__ %arg-2%"
5793 add "mineplex.trainee" to arg-2's permissions
5794 add "mineplex.mod" to arg-2's permissions
5795 add "mineplex.srmod" to arg-2's permissions
5796 add "mineplex.jrdev" to arg-2's permissions
5797 add "mineplex.2fa" to arg-2's permissions
5798 add "mineplex.admin" to arg-2's permissions
5799 add "mineplex.leader" to arg-2's permissions
5800 add "mineplex.support" to arg-2's permissions
5801 add "mineplex.owner" to arg-2's permissions
5802 add "mineplex.builder" to arg-2's permissions
5803 add "mineplex.dev" to arg-2's permissions
5804 add "mineplex.youtube" to arg-2's permissions
5805 add "mineplex.admin" to arg-2's permissions
5806 add "mineplex.legend" to arg-2's permissions
5807 add "mineplex.titan" to arg-2's permissions
5808 send "&9Client Manager> &7%arg-2%'s rank has been updated to Dev!"
5809 send "&9Client Manager> &7Your rank has been updated to Dev!" to arg 2
5810 set arg-2 tab name to "&4&lDEV &e%arg-2%"
5811 updateRankAPI(arg-2)
5812 setPlayerdata(arg-2, "rank", "Dev")
5813 else:
5814 send "&9Client Manager> &c&lInvalid rank!"
5815 else if argument 3 is "TWITCH":
5816 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5817 if {_c} is true:
5818 set {mineplex.rank.%arg-2%} to "&5&lTWITCH "
5819 execute console command "/__mp__dp__ %arg-2%"
5820 add "mineplex.twitch" to arg-2's permissions
5821 add "mineplex.legend" to arg-2's permissions
5822 add "mineplex.titan" to arg-2's permissions
5823 add "mineplex.youtube" to arg-2's permissions
5824 send "&9Client Manager> &7%arg-2%'s rank has been updated to Twitch!"
5825 send "&9Client Manager> &7Your rank has been updated to Twitch!" to arg 2
5826 set arg-2 tab name to "&5&lTWITCH &e%arg-2%"
5827 updateRankAPI(arg-2)
5828 setPlayerdata(arg-2, "rank", "Twitch")
5829 else:
5830 send "&9Client Manager> &c&lInvalid rank!"
5831 else if argument 3 is "YOUTUBE":
5832 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5833 if {_c} is true:
5834 set {mineplex.rank.%arg-2%} to "&c&lYOUTUBE "
5835 execute console command "/__mp__dp__ %arg-2%"
5836 add "mineplex.youtube" to arg-2's permissions
5837 add "mineplex.legend" to arg-2's permissions
5838 add "mineplex.titan" to arg-2's permissions
5839 send "&9Client Manager> &7%arg-2%'s rank has been updated to YouTube!"
5840 send "&9Client Manager> &7Your rank has been updated to YouTube!" to arg 2
5841 set arg-2 tab name to "&c&lYOUTUBE &e%arg-2%"
5842 updateRankAPI(arg-2)
5843 setPlayerdata(arg-2, "rank", "Youtube")
5844 else:
5845 send "&9Client Manager> &c&lInvalid rank!"
5846 else if argument 3 is "EVENT":
5847 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5848 if {_c} is true:
5849 set {mineplex.rank.%arg-2%} to "&f&lEVENT "
5850 execute console command "/__mp__dp__ %arg-2%"
5851 add "mineplex.youtube" to arg-2's permissions
5852 add "mineplex.legend" to arg-2's permissions
5853 add "mineplex.titan" to arg-2's permissions
5854 send "&9Client Manager> &7%arg-2%'s rank has been updated to Event!"
5855 send "&9Client Manager> &7Your rank has been updated to Event!" to arg 2
5856 set arg-2 tab name to "&f&lEVENT &e%arg-2%"
5857 updateRankAPI(arg-2)
5858 setPlayerdata(arg-2, "rank", "Event")
5859 else:
5860 send "&9Client Manager> &c&lInvalid rank!"
5861 else if argument 3 is "YT":
5862 set {_c} to caseSensitive(arg-3, "%{_allcap}%")
5863 if {_c} is true:
5864 set {mineplex.rank.%arg-2%} to "&5&lYT "
5865 execute console command "/__mp__dp__ %arg-2%"
5866 add "mineplex.youtube" to arg-2's permissions
5867 add "mineplex.legend" to arg-2's permissions
5868 add "mineplex.titan" to arg-2's permissions
5869 send "&9Client Manager> &7%arg-2%'s rank has been updated to YT!"
5870 send "&9Client Manager> &7Your rank has been updated to YT!" to arg 2
5871 set arg-2 tab name to "&5&lYT &e%arg-2%"
5872 updateRankAPI(arg-2)
5873 setPlayerdata(arg-2, "rank", "Yt")
5874 else:
5875 send "&9Client Manager> &c&lInvalid rank!"
5876 else:
5877 send "&9Client Manager> &c&lInvalid rank!"
5878 rankLoad(arg-2, 2, 0)
5879 else if argument 1 is "test":
5880 if arg-2 or arg-3 is not set:
5881 send "&4/rank test <player> <rank>: Temporarily sets the target user's rank"
5882 else:
5883 if arg 2 is online:
5884 if {mineplex.testrank.%arg-2%} is not set:
5885 if arg 3 is "ULTRA":
5886 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5887 set {mineplex.rank.%arg-2%} to "&b&lULTRA "
5888 execute console command "/__mp__dp__ %arg-2%"
5889 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5890 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5891 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5892 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5893 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5894 set arg-2 tab name to "&b&lULTRA &e%arg-2%"
5895 updateRankAPI(arg-2)
5896 wait 5 ticks
5897 rankLoad(arg-2, 2, 1)
5898 else if arg 3 is "HERO":
5899 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5900 set {mineplex.rank.%arg-2%} to "&d&lHERO "
5901 execute console command "/__mp__dp__ %arg-2%"
5902 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5903 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5904 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5905 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5906 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5907 set arg-2 tab name to "&d&lHERO &e%arg-2%"
5908 updateRankAPI(arg-2)
5909 wait 5 ticks
5910 rankLoad(arg-2, 2, 1)
5911 else if arg 3 is "LEGEND":
5912 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5913 set {mineplex.rank.%arg-2%} to "&a&lLEGEND "
5914 execute console command "/__mp__dp__ %arg-2%"
5915 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5916 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5917 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5918 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5919 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5920 set arg-2 tab name to "&a&lLEGEND &e%arg-2%"
5921 updateRankAPI(arg-2)
5922 wait 5 ticks
5923 rankLoad(arg-2, 2, 1)
5924 else if arg 3 is "TITAN":
5925 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5926 set {mineplex.rank.%arg-2%} to "&c&lTITAN "
5927 execute console command "/__mp__dp__ %arg-1%"
5928 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5929 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5930 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5931 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5932 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5933 set arg-2 tab name to "&c&lTITAN &e%arg-2%"
5934 updateRankAPI(arg-2)
5935 wait 5 ticks
5936 rankLoad(arg-2, 2, 1)
5937 else if arg 3 is "ETERNAL":
5938 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5939 set {mineplex.rank.%arg-2%} to "&3&lETERNAL "
5940 execute console command "/__mp__dp__ %arg-2%"
5941 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5942 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5943 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5944 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5945 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5946 set arg-2 tab name to "&3&lETERNAL &e%arg-2%"
5947 updateRankAPI(arg-2)
5948 wait 5 ticks
5949 rankLoad(arg-2, 2, 1)
5950 else:
5951 send "&9Client Manager> &c&lInvalid rank!"
5952 else:
5953 send "&9Client Manager> &c&lThis player already has a test rank!"
5954 else:
5955 send "&9Online Player Search> &e0 &7matches for [&e%arg-2%&7]."
5956
5957
5958
5959
5960command /powerplay [<offline player>]:
5961 permission: mineplex.jrdev
5962 permission message: &9Permissions> &7You do not have permission to do that.
5963 trigger:
5964 if arg 1 is set:
5965 if {mineplex.ppc.%arg-1%} is not set:
5966 set {mineplex.ppc.%arg-1%} to true
5967 send "&9PPC> &7%arg-1% Power Play: &aTrue"
5968 else:
5969 delete {mineplex.ppc.%arg-1%}
5970 send "&9PPC> &7%arg-1% Power Play: &cFalse"
5971 else:
5972 send "&9PPC> &7/powerplay (player)"
5973
5974command /shard [<offline player>] [<string>] [<string>]:
5975 permission: mineplex.admin
5976 permission message: &9Permissions> &7You do not have permission to do that.
5977 trigger:
5978 if arg 1 is not set:
5979 send "&9Shard> &7Missing Args: &e/shard <player> <amount>"
5980 else:
5981 if arg 2 is not set:
5982 send "&9Shard> &7Missing Args: &e/shard <player> <amount>"
5983 else:
5984 if arg 1 is not online:
5985 send "&9Shard> &7Could not find player &e%arg-1%"
5986 else:
5987 set {_num} to arg 2 parsed as an integer
5988 if {_num} is an integer:
5989 add {_num} to {mineplex.shards.%arg-1%}
5990 send "&9Shard> &7You gave &e%arg-2% Shards &7to &e%arg-1%&7."
5991 send "&9Shard> &e%player% &7gave you &e%arg-2% Shards&7." to arg-1
5992 addShards(arg-1, {_num})
5993 else:
5994 send "&9Shard> &7Invalid Shards Amount"
5995
5996command /gem [<offline player>] [<string>] [<string>]:
5997 permission: mineplex.admin
5998 permission message: &9Permissions> &7You do not have permission to do that.
5999 trigger:
6000 if arg 1 is not set:
6001 send "&9Gem> &7Missing Args: &e/gem <player> <amount>"
6002 else:
6003 if arg 2 is not set:
6004 send "&9Gem> &7Missing Args: &e/gem <player> <amount>"
6005 else:
6006 if arg 1 is not online:
6007 send "&9Gem> &7Could not find player &e%arg-1%"
6008 else:
6009 set {_num} to arg 2 parsed as an integer
6010 if {_num} is an integer:
6011 addGems(arg-1, {_num})
6012 send "&9Gem> &7You gave &e%arg-2% Gems &7to &e%arg-1%&7."
6013 send "&9Gem> &e%player% &7gave you &e%arg-2% Gems&7." to arg-1
6014 else:
6015 send "&9Gem> &7Invalid Gems Amount"
6016
6017command /getadmin:
6018 permission: mineplex.jrdev
6019 permission message: &9Permissions> &7You do not have permission to do that.
6020 trigger:
6021 if {mineplex.rank.%player%} is "&6&lJR.DEV ":
6022 if {mineplex.disguise.%player%} is set:
6023 set {_p} to {mineplex.disguise.%player%}
6024 else:
6025 set {_p} to player
6026 if {mineplex.adminmode.%player%} is true:
6027 remove "mineplex.admin" from player's permissions
6028 remove "mineplex.support" from player's permissions
6029 remove "mineplex.builder" from player's permissions
6030 remove "mineplex.youtube" from player's permissions
6031 set {mineplex.adminmode.%player%} to false
6032 send "&9Admin Mode> &7%{_p}% Admin Mode: &cFalse"
6033 else:
6034 set {mineplex.adminmode.%player%} to true
6035 add "mineplex.admin" to player's permissions
6036 add "mineplex.builder" to player's permissions
6037 add "mineplex.support" to player's permissions
6038 add "mineplex.youtube" to player's permissions
6039 send "&9Admin Mode> &7%{_p}% Admin Mode: &aTrue"
6040 else:
6041 send "&9Admin Mode> &7/getadmin is only for JR.DEV!"
6042
6043command /__mp__dp__ <player>:
6044 executable by: console
6045 trigger:
6046 remove "mineplex.trainee" from arg-1's permissions
6047 remove "mineplex.legend" from arg-1's permissions
6048 remove "mineplex.titan" from arg-1's permissions
6049 remove "mineplex.mod" from arg-1's permissions
6050 remove "mineplex.srmod" from arg-1's permissions
6051 remove "mineplex.admin" from arg-1's permissions
6052 remove "mineplex.leader" from arg-1's permissions
6053 remove "mineplex.owner" from arg-1's permissions
6054 remove "mineplex.jrdev" from arg-1's permissions
6055 remove "mineplex.2fa" from arg-1's permissions
6056 remove "mineplex.dev" from arg-1's permissions
6057 remove "mineplex.twitch" from arg-1's permissions
6058 remove "mineplex.youtube" from arg-1's permissions
6059 remove "mineplex.builder" from arg-1's permissions
6060
6061function rawreport(arg1: player , arg2: player , arg3: text , arg4: text , arg5: text) :: string:
6062 if {_arg3} is "Hacking":
6063 set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
6064 set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
6065 set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
6066 set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
6067 set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
6068 set {mineplex.report.open.%{mineplex.report.id}%} to true
6069 send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
6070 else if {_arg3} is "Chat-Abuse":
6071 set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
6072 set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
6073 set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
6074 set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
6075 set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
6076 set {mineplex.report.open.%{mineplex.report.id}%} to true
6077 send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
6078 else if {_arg3} is "Gameplay":
6079 set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
6080 set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
6081 set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
6082 set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
6083 set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
6084 set {mineplex.report.open.%{mineplex.report.id}%} to true
6085 send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
6086 else:
6087 stop
6088 loop all players:
6089 if loop-player has permission "mineplex.trainee":
6090 if {mineplex.pref.report.%loop-player%} is true:
6091 send "&9[Report ##%{mineplex.report.id}%] &7%{_arg2}% has reported %{_arg1}% for a &e%{_arg3}% &7offence with reason &e%{_arg5}%&7!" to loop-player
6092 add 1 to {mineplex.report.id}
6093
6094command /report [<offline player>] [<text>]:
6095 permission: mineplex.titan
6096 permission message: &9Report> &cThe report feature is currently in a trial phase for Titan players
6097 trigger:
6098 if arg-2 is set:
6099 if arg-1 is player:
6100 send "&9Report> &cYou cannot report yourself."
6101 stop
6102 open chest with 3 rows named "Report %arg-1%" to player
6103 format slot 11 of player with red dye named "&c&lHacking" with lore "&7X-ray, Forcefield, Speed, Fly etc" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Hacking", "%player's world%", arg-2)]
6104 format slot 13 of player with yellow dye named "&e&lChat Abuse" with lore "&7Verbal Abuse, Spam, Harassment, Trolling, etc" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Chat-Abuse", "%player's world%", arg-2)]
6105 format slot 15 of player with green dye named "&a&lGameplay" with lore "&7Map and Bug Exploits" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Gameplay", "%player's world%", arg-2)]
6106 else:
6107 send "&9Report> &cInvalid Usage: &e/report <player> <reason>"
6108
6109command /reporthandle [<string>] [<string>]:
6110 aliases: /rh
6111 permission: mineplex.mod
6112 permission message: &9Permissions> &7You do not have permission to do that.
6113 trigger:
6114 if arg 1 is not set:
6115 send "&9Report> &7Corect Usage: &e/reporthandle <report id>"
6116 else:
6117 set {_id} to arg-1 parsed as a number
6118 if {_id} is a number:
6119 if {mineplex.report.open.%{_id}%} is true:
6120 if {mineplex.report.hand.%{_id}%} is not set:
6121 set {mineplex.report.hand.%{_id}%} to player
6122 set {_sus} to {mineplex.report.player.%{_id}%} parsed as an offline player
6123 set {_ip} to ip address of {_sus}
6124 loop {mineplex.totalaccounts.%{_ip}%::*}:
6125 add 1 to {_accounts}
6126 if {_accounts} is not set:
6127 set {_accounts} to 1
6128 send ""
6129 send "&9Report ##%{_id}%> &bReport Overview"
6130 send "&9Report ##%{_id}%> &bSuspect - &6%{mineplex.report.player.%{_id}%}%"
6131 send "&9Report ##%{_id}%> &bType - &6%{mineplex.report.type.%{_id}%}%"
6132 send "&9Report ##%{_id}%> &bTeam - &6None"
6133 send "&9Report ##%{_id}%>"
6134 send "&9Report ##%{_id}%> &6SoonTM &btotal reports"
6135 send "&9Report ##%{_id}%>"
6136 send "&9Report ##%{_id}%> &7(1) &6%{mineplex.report.reporter.%{_id}%}% ##1 &7- ""&b%{mineplex.report.reason.%{_id}%}%&7"""
6137 send "&9Report ##%{_id}%>"
6138 send "&9Report ##%{_id}%> &bView chat log"
6139 mcrjson("%player%", "&9Report ##%{_id}%> ||&bClose this report||ttp:&bClick to close this report||cmd:/reportclose %{_id}% undetermined")
6140 loop all players:
6141 if loop-player has permission "mineplex.trainee":
6142 if {mineplex.pref.report.%loop-player%} is true:
6143 send "&9[Report %{_id}%] &e%player% &7is handling this report." to loop-player
6144 else:
6145 send "&9Report> &7This report is already being handling!"
6146 else:
6147 send "&9Report> &7This report has already been closed or does not exsit!"
6148 else:
6149 send "&9Report> &cYour arguments are inappropriate for this command!"
6150 send "&9Report> &e/reporthandle (id)"
6151
6152command /reportclose [<string>] [<string>] [<string>]:
6153 aliases: /rc
6154 permission: mineplex.mod
6155 permission message: &9Permissions> &7You do not have permission to do that.
6156 trigger:
6157 if arg 1 is not set:
6158 send "&9Report> &7Corect Usage: &e/reportclose (report id)"
6159 send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
6160 stop
6161 if arg 2 is not set:
6162 send "&9Report> &7Corect Usage: &e/reportclose (report id)"
6163 send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
6164 stop
6165 else:
6166 set {_id} to arg-1 parsed as a number
6167 if {mineplex.report.hand.%{_id}%} is not player:
6168 send "&9Report> &cYou can only close your own report!"
6169 stop
6170 if {_id} is a number:
6171 if {mineplex.report.open.%{_id}%} is true:
6172 if arg 2 is "UNDETERMINED":
6173 set {_r} to "&f&lCould not determine"
6174 set {mineplex.report.open.%{_id}%} to false
6175 loop all players:
6176 if loop-player has permission "mineplex.trainee":
6177 if {mineplex.pref.report.%loop-player%} is true:
6178 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
6179 else if arg 2 is "MUTED":
6180 set {_r} to "&e&lMuted"
6181 set {mineplex.report.open.%{_id}%} to false
6182 loop all players:
6183 if loop-player has permission "mineplex.trainee":
6184 if {mineplex.pref.report.%loop-player%} is true:
6185 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
6186 else if arg 2 is "BANNED":
6187 set {_r} to "&c&lBanned"
6188 set {mineplex.report.open.%{_id}%} to false
6189 loop all players:
6190 if loop-player has permission "mineplex.trainee":
6191 if {mineplex.pref.report.%loop-player%} is true:
6192 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
6193 else if arg 2 is "ABUSE":
6194 set {_r} to "&4&lAbuse of report system"
6195 set {mineplex.report.open.%{_id}%} to false
6196 loop all players:
6197 if loop-player has permission "mineplex.trainee":
6198 if {mineplex.pref.report.%loop-player%} is true:
6199 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
6200 else:
6201 send "&9Report> &cInvalid report reason!"
6202 else:
6203 send "&9Report> &7This report has already been closed or does not exsit!"
6204 else:
6205 send "&9Report> &cYour arguments are inappropriate for this command!"
6206 send "&9Report> &e/reportclose (report id) (reason)"
6207 send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
6208
6209command /s [<text>]:
6210 permission: mineplex.mod
6211 permission message: &9Permissions> &7You do not have permission to do that.
6212 trigger:
6213 if {mineplex.disguise.%player%} is set:
6214 set {_p} to {mineplex.disguise.%player%}
6215 else:
6216 set {_p} to player
6217 if argument 1 is set:
6218 broadcast "&f&l%{_p}% &b%arg-1%"
6219 else:
6220 send "&9Broadcast> &7Corect Usage: /s <message>."
6221
6222command /gm [<player>]:
6223 permission: mineplex.builder
6224 permission message: &9Permissions> &7You do not have permission to do that.
6225 trigger:
6226 if {mineplex.disguise.%player%} is set:
6227 set {_p} to {mineplex.disguise.%player%}
6228 else:
6229 set {_p} to player
6230 if argument 1 is not set:
6231 if player's gamemode is survival:
6232 set the player's gamemode to creative
6233 send "&9Game Mode> &7%{_p}% Creative Mode: &aTrue"
6234 else:
6235 set the player's gamemode to survival
6236 send "&9Game Mode> &7%{_p}% Creative Mode: &cFalse"
6237 else:
6238 if player has permission "mineplex.admin":
6239 if arg-1's gamemode is survival:
6240 set the arg-1's gamemode to creative
6241 send "&9Game Mode> &7%arg-1% Creative Mode: &aTrue"
6242 else:
6243 set the arg-1's gamemode to survival
6244 send "&9Game Mode> &7%arg-1% Creative Mode: &cFalse"
6245 else:
6246 send "&9Permissions> &7You do not have permission to do that."
6247
6248command /ignore [<offline player>] [<string>]:
6249 trigger:
6250 if arg 1 is not set:
6251 if {mineplex.ignorelist.%player%::*} is not set:
6252 send "&b&m=====================[&f&lIgnoring&b&m]======================"
6253 send ""
6254 send "&fWelcome to your Ignore List!"
6255 send ""
6256 send "&fTo ignore people, type &a/ignore <Player Name>"
6257 send ""
6258 send "&fType &a/ignore &fat any time to view the ignored!"
6259 send ""
6260 send "&b&m====================================================="
6261 else:
6262 send "&b&m=====================[&f&lIgnoring&b&m]======================"
6263 loop {mineplex.ignorelist.%player%::*}:
6264 mcrjson("%player%", "&7Ignoring %loop-value% &f - ||&c&lUnignore||ttp:&fStop ignoring %loop-value%||cmd:/unignore %loop-value%||")
6265 send "&b&m====================================================="
6266 else:
6267 loop {mineplex.ignorelist.%player%::*}:
6268 if loop-value is "%arg-1%":
6269 set {_pre} to true
6270 if {_pre} is true:
6271 send "&9Ignore> &a%arg-1% &7has already been ignored."
6272 else:
6273 add "%arg-1%" to {mineplex.ignorelist.%player%::*}
6274 send "&9Ignore> &7Now ignoring &a%arg-1%"
6275
6276command /unignore [<offline player>] [<string>]:
6277 trigger:
6278 if arg 1 is set:
6279 send "&9Ignore> &7No longer ignoring &a%arg-1%"
6280 remove "%arg-1%" from {mineplex.ignorelist.%player%::*}
6281
6282command /message [<player>] [<text>]:
6283 aliases: /tell, /m, /w, /msg, /whisper
6284 trigger:
6285 if {mineplex.disguise.%player%} is set:
6286 set {_p} to {mineplex.disguise.%player%}
6287 else:
6288 set {_p} to player
6289 set {_get} to getPlayerdata(player, "muted")
6290 if {_get} is "yes":
6291 if {muted::%player%::type} is "perm":
6292 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
6293 stop
6294 if {muted::%player%::type} is "temp":
6295 set {_waited} to difference between {muted::%player%::when} and now
6296 if {_waited} is less than {muted::%player%::time}:
6297 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
6298 stop
6299 if argument 1 is set:
6300 if argument 2 is set:
6301 if {mineplex.pref.pm.%arg-1%} is false:
6302 send "&d%arg-1% has private messaging disabled."
6303 stop
6304 loop {mineplex.ignorelist.%player%::*}:
6305 if loop-value is "%arg-1%":
6306 send "&9Ignore> &7You are ignoring that player"
6307 stop
6308 loop {mineplex.ignorelist.%arg-1%::*}:
6309 if loop-value is "%player%":
6310 send "&9Ignore> &7That player is ignoring you"
6311 stop
6312 send "&6&l%{_p}% > %arg-1% &e&l%arg-2%"
6313 send "&6&l%{_p}% > %arg-1% &e&l%arg-2%" to arg-1
6314 play "NOTE_PLING" to player at volume 0.5
6315 play "NOTE_PLING" to arg-1 at volume 0.5
6316 set {mineplex.lastm.%player%} to "%arg-1%" parsed as player
6317 if {mineplex.rank.%arg-1%} is "&4&lDEV ":
6318 send "&d%arg-1% is often AFK or minimized, due to plugin development."
6319 send "&dPlease be patient if they do not reply instantly."
6320 else:
6321 send "&9Message> &cErr...something went wrong?"
6322 else:
6323 send "&9Message> &cErr...something went wrong?"
6324
6325command /ping:
6326 trigger:
6327 send "&9Chat> &7PONG!"
6328
6329on command:
6330 command is "minecraft:me":
6331 send "&9Chat> &7Nope, not allowed!"
6332 cancel event
6333
6334command /me [<string>]:
6335 aliases: /minecraft:me
6336 trigger:
6337 if arg 1 is not set:
6338 send "&cUsage: /me <action...>"
6339 else:
6340 send "&9Chat> &7Nope, not allowed!"
6341
6342command /newsconfirm <number>:
6343 permission: mineplex.admin
6344 permission message: &9Permissions> &7You do not have permission to do that.
6345 trigger:
6346 mcrjson("%player%", "&9Hub Manager>|| &a[CONFIRM]||ttp:Are you absolutely sure???||cmd:/news delete %arg-1%|| &6News Entry %arg-1% &7deletion?")
6347
6348command /news [<string>] [<string>] [<string>]:
6349 permission: mineplex.admin
6350 permission message: &9Permissions> &7You do not have permission to do that.
6351 trigger:
6352 if arg 1 is not set:
6353 send "&9News Manager> &7Available news arguments for this command:"
6354 send "&6/news list &7Lists (numbered) stored news messages from database. &4Admin"
6355 send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &4Admin"
6356 send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &4Admin"
6357 send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &4Admin"
6358 send "&4*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &4Admin"
6359 else:
6360 if arg 1 is "list":
6361 send "&9Hub Manager> &7Current server news messages:"
6362 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 1 : %{mineplex.news.line1}%||cmd:/newsconfirm 1|| &6News 1 &7: &f%{mineplex.news.line1}%")
6363 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 2 : %{mineplex.news.line2}%||cmd:/newsconfirm 2|| &6News 2 &7: &f%{mineplex.news.line2}%")
6364 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 3 : %{mineplex.news.line3}%||cmd:/newsconfirm 3|| &6News 3 &7: &f%{mineplex.news.line3}%")
6365 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 4 : %{mineplex.news.line4}%||cmd:/newsconfirm 4|| &6News 4 &7: &f%{mineplex.news.line4}%")
6366 else if arg 1 is "add":
6367 if arg 2 is set:
6368 set {_news} to arg-2
6369 if arg 3 is set:
6370 set {_news} to "%arg-2% %arg-3%"
6371 replace all "&" with "§" in {_news}
6372 if {mineplex.news.line1}'s length is 0:
6373 if {mineplex.mode} is "sql":
6374 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'"
6375 set {mineplex.news.line1} to {_news}
6376 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6377 else if {mineplex.news.line2}'s length is 0:
6378 if {mineplex.mode} is "sql":
6379 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'"
6380 set {mineplex.news.line2} to {_news}
6381 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6382 else if {mineplex.news.line3}'s length is 0:
6383 if {mineplex.mode} is "sql":
6384 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'"
6385 set {mineplex.news.line3} to {_news}
6386 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6387 else if {mineplex.news.line4}'s length is 0:
6388 if {mineplex.mode} is "sql":
6389 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'"
6390 set {mineplex.news.line4} to {_news}
6391 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6392 else:
6393 send "&9Hub Manager> &c&lNo free news slots!"
6394 else:
6395 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6396 else if arg 1 is "delete":
6397 if arg 2 is set:
6398 if arg 2 is "1":
6399 set {mineplex.news.line1} to ""
6400 if {mineplex.mode} is "sql":
6401 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '1'"
6402 send "&9Hub Manager> &7The news entry at position &61 &7has been deleted!"
6403 else if arg 2 is "2":
6404 if {mineplex.mode} is "sql":
6405 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '2'"
6406 set {mineplex.news.line2} to ""
6407 send "&9Hub Manager> &7The news entry at position &62 &7has been deleted!"
6408 else if arg 2 is "3":
6409 if {mineplex.mode} is "sql":
6410 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '3'"
6411 set {mineplex.news.line3} to ""
6412 send "&9Hub Manager> &7The news entry at position &63 &7has been deleted!"
6413 else if arg 2 is "4":
6414 if {mineplex.mode} is "sql":
6415 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '4'"
6416 set {mineplex.news.line4} to ""
6417 send "&9Hub Manager> &7The news entry at position &64 &7has been deleted!"
6418 else:
6419 send "&9Hub Manager> &cThe specified new position is invalid!"
6420 else:
6421 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6422 else if arg 1 is "set":
6423 if arg 2 is set:
6424 if arg 3 is set:
6425 set {_news} to arg 3
6426 replace all "&" with "§" in {_news}
6427 if arg 2 is "1":
6428 if {mineplex.mode} is "sql":
6429 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'"
6430 set {mineplex.news.line1} to {_news}
6431 send "&9Hub Manager> &7The news entry at position &61 &7has been updated to: %{_news}%"
6432 else if arg 2 is "2":
6433 if {mineplex.mode} is "sql":
6434 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'"
6435 set {mineplex.news.line2} to {_news}
6436 send "&9Hub Manager> &7The news entry at position &62 &7has been updated to: %{_news}%"
6437 else if arg 2 is "3":
6438 if {mineplex.mode} is "sql":
6439 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'"
6440 set {mineplex.news.line3} to {_news}
6441 send "&9Hub Manager> &7The news entry at position &63 &7has been updated to: %{_news}%"
6442 else if arg 2 is "4":
6443 if {mineplex.mode} is "sql":
6444 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'"
6445 set {mineplex.news.line4} to {_news}
6446 send "&9Hub Manager> &7The news entry at position &64 &7has been updated to: %{_news}%"
6447 else:
6448 send "&9Hub Manager> &cThe specified new position is invalid!"
6449 else:
6450 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6451 else:
6452 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6453 else:
6454 send "&9News Manager> &7Available news arguments for this command:"
6455 send "&6/news list &7Lists (numbered) stored news messages from database. &cAdmin"
6456 send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &cAdmin"
6457 send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &cAdmin"
6458 send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &cAdmin"
6459 send "&c*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &cAdmin"
6460
6461command /r [<text>]:
6462 aliases: /reply
6463 trigger:
6464 if {mineplex.disguise.%player%} is set:
6465 set {_p} to {mineplex.disguise.%player%}
6466 else:
6467 set {_p} to player
6468 if {mineplex.lastm.%player%} is set:
6469 if argument 1 is set:
6470 if {mineplex.lastm.%player%} is online:
6471 send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%"
6472 send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%" to {mineplex.lastm.%player%}
6473 else:
6474 send "&9Message> &e%{mineplex.lastm.%player%}% &7is no longer online!"
6475 else:
6476 send "&9Message> &cErr...something went wrong?"
6477 else:
6478 send "&9Message> &7You have not messaged anyone recently."
6479
6480command /party [<string>] [<player>]:
6481 aliases: /z
6482 trigger:
6483 if argument 1 is not set:
6484 send "&9Party> &7Listing Party Commands:"
6485 send "&f/party <Player>: &eJoin/Create/Invite Player"
6486 send "&f/party leave: &eLeave your current party"
6487 send "&f/party kick <Player>: &eKick player from your Party"
6488 send "&f/party info: &eDisplays info on the current Party."
6489 else:
6490 if argument 1 is "kick":
6491 if {party.%player%} is not set:
6492 message "&9Party> &7You don't have a party"
6493 else:
6494 if {party.%player%} is not player:
6495 message "&9Party> &7You have to be a party leader to do this"
6496 stop
6497 if player arg is not set:
6498 message "&9Party> &7Player needed. /party kick <player>"
6499 else:
6500 if {party.%player%::*} doesn't contain player arg:
6501 message "&9Party> &7The player needs to be in your party"
6502 stop
6503 message "&9Party> &7You kicked %player arg% from the party"
6504 message "&9Party> &7You've been kicked by %player% from his party" to player arg
6505 loop {party.%player%::*}:
6506 if loop-value = player arg:
6507 delete {party.%player%::%loop-index%}
6508 delete {party.%player arg%}
6509 delete {party.%player arg%.chat}
6510 else if arg 1 is "leave":
6511 if {party.%player%} is not set:
6512 message "&9Party> &7You don't have a party"
6513 else:
6514 if {party.%player%} is player:
6515 message "&9Party> &7You can't leave if you are the leader. Do /party disband"
6516 stop
6517 message "&9Party> &7You left your party"
6518 message "&9Party> &7%player% left your party" to {party.%player%}
6519 set {party.%player%.chat} to false
6520 loop {party.%{party.%player%}%::*}:
6521 if loop-value = player:
6522 delete {party.%{party.%player%}%::%loop-index%}
6523 delete {party.%player%}
6524 delete {party.%player%.chat}
6525 else if arg 1 is "disband":
6526 if {party.%player%} is not set:
6527 message "&9Party> &cYou don't have a party"
6528 else:
6529 if {party.%player%} is not player:
6530 message "&9Party> &7You have to be a party leader to do this"
6531 stop
6532 message "&9Party> &7You disband your party"
6533 loop {party.%player%::*}:
6534 loop-value is not player:
6535 message "&9Party> &7Your party has been disbanded" to loop-value
6536 delete {party.%loop-value%.chat}
6537 delete {party.%loop-value%}
6538 delete {party.%player%}
6539 delete {party.%player%.chat}
6540 delete {party.%player%::*}
6541 else if arg 1 is "info":
6542 if {party.%player%} is not set:
6543 message "&9Party> &7You don't have a party"
6544 else:
6545 message "&9Party> &7Party Details:"
6546 message "Party Leader: &7%{party.%player%}%"
6547 set {_partyMember} to ""
6548 loop {party.%{party.%player%}%::*}:
6549 set {_partyMember} to "%{_partyMember}% %loop-value%"
6550 message "Your Party: &7%{_partyMember}%"
6551 else:
6552 set {_mineplex.last.party} to arg-1 parsed as player
6553 if {_mineplex.last.party} is online:
6554 if {party.%player%} is set:
6555 add {_mineplex.last.party} to {party.%player%::*}
6556 set {party.%player%.chat} to true
6557 set {party.%arg-1%.chat} to true
6558 set {party.%{_mineplex.last.party}%} to player
6559 message "&9Party> &7You invited %{_mineplex.last.party}% to the party."
6560 else:
6561 set {party.%player%} to player
6562 message "&9Party> &7Created a party."
6563 add player to {party.%player%::*}
6564 make player execute command "/party %arg-1%"
6565 else:
6566 send "&9Party> &7That player is not online."
6567
6568command /announce [<text>]:
6569 permission: mineplex.admin
6570 permission message: &9Permissions> &7You do not have permission to do that.
6571 trigger:
6572 if argument 1 is set:
6573 send all players title "&eAnnouncement" with subtitle "&f%arg-1%" for 10 seconds
6574 broadcast "&9Announcement> &b%arg-1%"
6575 else:
6576 send "&9Message> &cErr...something went wrong?"
6577
6578command /global [<text>]:
6579 permission: mineplex.jrdev
6580 permission message: &9Permissions> &7You do not have permission to do that.
6581 trigger:
6582 if arg 1 is not set:
6583 send "&9Message> &cErr...something went wrong?"
6584 else:
6585 broadcast "&9Announcement> &b%arg-1%"
6586
6587every 3 seconds:
6588 set {mineplex.lag.avg.1} to tps
6589 wait 1 second
6590 set {mineplex.lag.avg.2} to tps
6591 wait 1 second
6592 set {mineplex.lag.avg.3} to tps
6593
6594command /lag:
6595 trigger:
6596 if player has permission "mineplex.jrdev":
6597 set {_avg} to {mineplex.lag.avg.1} + {mineplex.lag.avg.2} + {mineplex.lag.avg.3}
6598 set {_avg} to {_avg} / 3
6599 set {_tps} to tps
6600 set {_f} to free ram
6601 set {_m} to max ram
6602 send "&9LagMeter> &7Live-------&e%{_tps}%"
6603 send "&9LagMeter> &7Avg--------&e%{_avg}%"
6604 send "&9LagMeter> &eMEM (RAM)"
6605 send "&9LagMeter> &7Free-------&e%{_f}%MB"
6606 send "&9LagMeter> &7Max--------&e%{_m}%MB"
6607 else:
6608 send "&9Chat> &7PONG!"
6609
6610#Punish Systems/Commands
6611
6612function punishWarn(s: player , p: offline player , r: text) :: player:
6613 send "&9Punish> &7%{_s}% issued a friendly warning to you." to {_p}
6614 send "&9Punish> &7&lReason: &7%{_r}%" to {_p}
6615 add 1 to {mineplex.punish.past.warn.%{_p}%}
6616 loop all players:
6617 if loop-player has permission "mineplex.trainee":
6618 send "&9Punish> &7%{_s}% issued a friendly warning to %{_p}%." to loop-player
6619
6620function punishReportBan(s: player , p: offline player , r: text) :: player:
6621 set {banned::%{_p}%} to true
6622 set {banned::%{_p}%::type} to "report"
6623 set {banned::%{_p}%::reason} to {_r}
6624 set {banned::%{_p}%::staff} to {_s}
6625 set {banned::%{_p}%::now} to now
6626 setPlayerdata({_p}, "banned", "yes")
6627 kick {_p} due to "&c&lYou are banned for Permanent by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6628 add 1 to {mineplex.punish.past.reportban.%{_p}%}
6629 loop all players:
6630 if loop-player has permission "mineplex.trainee":
6631 send "&9Punish> &7%{_s}% report banned %{_p}% for Permanent." to loop-player
6632
6633function punishBan(s: player , p: offline player , r: text) :: player:
6634 set {banned::%{_p}%} to true
6635 set {banned::%{_p}%::type} to "perm"
6636 set {banned::%{_p}%::reason} to {_r}
6637 set {banned::%{_p}%::staff} to {_s}
6638 set {banned::%{_p}%::now} to now
6639 setPlayerdata({_p}, "banned", "yes")
6640 kick {_p} due to "&c&lYou are banned for Permanent by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6641 add 1 to {mineplex.punish.past.permban.%{_p}%}
6642 loop all players:
6643 if loop-player has permission "mineplex.trainee":
6644 send "&9Punish> &7%{_s}% banned %{_p}% for Permanent." to loop-player
6645
6646function punishDTempBan(s: player , p: offline player, r: text, d: number) :: player:
6647 set {_duration} to "%{_d}% days" parsed as timespan
6648 set {banned::%{_p}%} to true
6649 set {banned::%{_p}%::type} to "temp"
6650 set {banned::%{_p}%::time} to {_duration}
6651 set {banned::%{_p}%::reason} to {_r}
6652 set {banned::%{_p}%::staff} to {_s}
6653 set {banned::%{_p}%::when} to now
6654 add 1 to {mineplex.punish.past.tempban.%{_p}%}
6655 setPlayerdata({_p}, "banned", "yes")
6656 kick {_p} due to "&c&lYou are banned for %{banned::%{_p}%::time}% by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6657 loop all players:
6658 if loop-player has permission "mineplex.trainee":
6659 send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player
6660
6661function punishHTempBan(s: player , p: offline player, r: text, d: number) :: player:
6662 set {_duration} to "%{_d}% hours" parsed as timespan
6663 set {banned::%{_p}%} to true
6664 set {banned::%{_p}%::type} to "temp"
6665 set {banned::%{_p}%::time} to {_duration}
6666 set {banned::%{_p}%::reason} to {_r}
6667 set {banned::%{_p}%::staff} to {_s}
6668 set {banned::%{_p}%::when} to now
6669 setPlayerdata({_p}, "banned", "yes")
6670 kick {_p} due to "&c&lYou are banned for %{banned::%{_p}%::time}% by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6671 add 1 to {mineplex.punish.past.tempban.%{_p}%}
6672 loop all players:
6673 if loop-player has permission "mineplex.trainee":
6674 send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player
6675
6676function punishMute(s: player, p: offline player, r: text) :: player:
6677 set {muted::%{_p}%} to true
6678 set {muted::%{_p}%::type} to "perm"
6679 set {muted::%{_p}%::reason} to {_r}
6680 set {muted::%{_p}%::by} to {_s}
6681 add 1 to {mineplex.punish.past.permmute.%{_p}%}
6682 setPlayerdata({_p}, "muted", "yes")
6683 send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
6684 send "&9Punish> &7%{muted::%{_p}%::by}% muted %{_p}% for Permanent." to {_p}
6685 loop all players:
6686 if loop-player has permission "mineplex.trainee":
6687 send "&9Punish> &7%{_s}% muted %{_p}% for Permanent." to loop-player
6688
6689function punishHTempMute(s: player, p: offline player, r: text, d: number) :: player:
6690 set {_duration} to "%{_d}% hours" parsed as timespan
6691 set {muted::%{_p}%} to true
6692 set {muted::%{_p}%::type} to "temp"
6693 set {muted::%{_p}%::reason} to {_r}
6694 set {muted::%{_p}%::time} to {_duration}
6695 set {muted::%{_p}%::by} to {_s}
6696 set {muted::%{_p}%::when} to now
6697 add 1 to {mineplex.punish.past.permmute.%{_p}%}
6698 setPlayerdata({_p}, "muted", "yes")
6699 send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p}
6700 send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
6701 loop all players:
6702 if loop-player has permission "mineplex.trainee":
6703 send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player
6704
6705function punishDTempMute(s: player, p: offline player, r: text, d: number) :: player:
6706 set {_duration} to "%{_d}% days" parsed as timespan
6707 set {muted::%{_p}%} to true
6708 set {muted::%{_p}%::type} to "temp"
6709 set {muted::%{_p}%::reason} to {_r}
6710 set {muted::%{_p}%::time} to {_duration}
6711 set {muted::%{_p}%::by} to {_s}
6712 set {muted::%{_p}%::when} to now
6713 add 1 to {mineplex.punish.past.permmute.%{_p}%}
6714 setPlayerdata({_p}, "muted", "yes")
6715 send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p}
6716 send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
6717 loop all players:
6718 if loop-player has permission "mineplex.trainee":
6719 send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player
6720
6721function punishUnban(s: string, p: string) :: player:
6722 delete {banned::%{_p}%}
6723 delete {banned::%{_p}%::*}
6724 setPlayerdata({_p}, "banned", "no")
6725
6726function punishUnmute(s: player, p: string) :: player:
6727 delete {muted::%{_p}%}
6728 delete {muted::%{_p}%::*}
6729 setPlayerdata({_p}, "muted", "no")
6730 loop all players:
6731 if loop-player has permission "mineplex.trainee":
6732 send "&9Punish> &7%{_s}% unmuted %{_p}%" to loop-player
6733
6734on connect:
6735 set {_get} to getPlayerdata(player, "banned")
6736 if {_get} is "yes":
6737 if player has permission "mineplex.admin":
6738 if {mineplex.config.unbanadmin} is "true":
6739 punishUnban("Expired", "%player%")
6740 stop
6741 if {banned::%player%::type} is "perm":
6742 kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6743 stop
6744 if {banned::%player%::type} is "report":
6745 kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6746 stop
6747 if {banned::%player%::type} is "temp":
6748 set {_waited} to difference between {banned::%player%::when} and now
6749 if {_waited} is less than {banned::%player%::time}:
6750 kick player due to "&c&lYou are banned for %{banned::%player%::time}%%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6751 else:
6752 punishUnban("Expired", "%player%")
6753
6754on inventory click:
6755 if inventory name of player's current inventory is " Punish":
6756 cancel event
6757 clicked slot >= 45
6758 set {_clickedslot.%player%} to (clicked slot - 44)
6759 if {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} is set:
6760 if "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}%" contains "&eRemoved by: ":
6761 send "" to console
6762 else:
6763 set {_reasonchanger.%player%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}% ||||&eRemoved by: &f%player%||&eRemove Reason: &f%{punishgui.%player%::2}%"
6764 set {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} to "%{_reasonchanger.%player%}%"
6765 close player's inventory
6766 delete {p.%{punishgui.%player%::1}%::history::*}
6767 set {_slot} to 0
6768 loop {reversed.p.%{punishgui.%player%::1}%::history::*}:
6769 add 1 to {_slot}
6770 set {_reversedslot} to 1
6771 loop {reversed.p.%{punishgui.%player%::1}%::history::*}:
6772 set {p.%{punishgui.%player%::1}%::history::%{_reversedslot}%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_slot}%}%"
6773 remove 1 from {_slot}
6774 add 1 to {_reversedslot}
6775 if "%{_reasonchanger.%player%}%" contains "ChatOffense":
6776 punishUnmute(player, {punishgui.%player%::1})
6777 if "%{_reasonchanger.%player%}%" contains "Hacking" or "Exploiting" or "Other":
6778 punishUnban("memes", {punishgui.%player%::1})
6779 if "%{_reasonchanger.%player%}%" contains "Warning":
6780 stop
6781
6782command /p [<offline player>] [<text>]:
6783 aliases: /punish
6784 permission: mineplex.trainee
6785 permission message: &9Permissions> &7You do not have permission to do that.
6786 trigger:
6787 if arg-2 is not set:
6788 send "&9Punish> &7Commands List:"
6789 send "&6/punish &7<player> <reason> &6Mod"
6790 if arg-2 is set:
6791 if {p.%arg-1%::Chat1} is not set:
6792 set {p.%arg-1%::Client3} to "__mp__tempban__ %arg-1% %player% 30"
6793 set {p.%arg-1%::ClientL3} to "&fBan Duration: &e30.0 Days"
6794 set {p.%arg-1%::Client2} to "__mp__tempban__ %arg-1% %player% 30"
6795 set {p.%arg-1%::ClientL2} to "&fBan Duration: &e30.0 Days"
6796 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e1.0 Days"
6797 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 1"
6798 set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% 4 %player%"
6799 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e4.0 Hours"
6800 set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 2 %player%"
6801 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.0 Hours"
6802 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 1 %player%"
6803 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e1.0 Days"
6804 set {p.%arg-1%::Chat3} to "__mp__tempmute__ %arg-1% 30 %player%"
6805 set {p.%arg-1%::ChatL3} to "&fMute Duration: &e30.0 Days"
6806 if {p.%arg-1%::pOffences.Chat1} is 1:
6807 set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 4 %player%"
6808 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e4.0 Hours"
6809 if {p.%arg-1%::pOffences.Chat1} is 2:
6810 set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 10 %player%"
6811 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e10.0 Hours"
6812 if {p.%arg-1%::pOffences.Chat1} is 3:
6813 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%"
6814 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.0 Days"
6815 if {p.%arg-1%::pOffences.Chat1} is 4:
6816 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%"
6817 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.4 Days"
6818 if {p.%arg-1%::pOffences.Chat1} is 5:
6819 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 3 %player%"
6820 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.8 Days"
6821 if {p.%arg-1%::pOffences.Chat1} is 6:
6822 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 7 %player%"
6823 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e7.0 Days"
6824 if {p.%arg-1%::pOffences.Chat1} is 7:
6825 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 14 %player%"
6826 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e14.0 Days"
6827 if {p.%arg-1%::pOffences.Chat1} is 8:
6828 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 30 %player%"
6829 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e30.0 Days"
6830 if {p.%arg-1%::pOffences.Chat1} is 9:
6831 set {p.%arg-1%::Chat1} to "__mp__mute__ %arg-1% %player%"
6832 set {p.%arg-1%::ChatL1} to "&fMute Duration: &ePermanent"
6833 if {p.%arg-1%::pOffences.Chat2} is 1:
6834 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 2 %player%"
6835 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e2.0 Days"
6836 if {p.%arg-1%::pOffences.Chat2} is 2:
6837 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 4 %player%"
6838 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e4.0 Days"
6839 if {p.%arg-1%::pOffences.Chat2} is 3:
6840 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 7 %player%"
6841 set {p.%arg-1%::ChatL2} to "__mp__tempmute__ %arg-1% 7 %player%"
6842 if {p.%arg-1%::pOffences.Chat2} is 4:
6843 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 14 %player%"
6844 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e14.0 Days"
6845 if {p.%arg-1%::pOffences.Chat2} is 5:
6846 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 30 %player%"
6847 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e30.0 Days"
6848 if {p.%arg-1%::pOffences.Chat2} is 6:
6849 set {p.%arg-1%::Chat2} to "__mp__mute__ %arg-1% %player%"
6850 set {p.%arg-1%::ChatL2} to "&fMute Duration: &ePermanent"
6851 if {p.%arg-1%::pOffences.Chat3} is 1:
6852 set {p.%arg-1%::Chat3} to "__mp__mute__ %arg-1% %player%"
6853 set {p.%arg-1%::ChatL3} to "&fMute Duration: &ePermanent"
6854 if {p.%arg-1%::pOffences.General} is 1:
6855 set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 8"
6856 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e8.0 Hours"
6857 if {p.%arg-1%::pOffences.General} is 2:
6858 set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 16"
6859 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e16.0 Hours"
6860 if {p.%arg-1%::pOffences.General} is 3:
6861 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 1"
6862 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e1.4 Days"
6863 if {p.%arg-1%::pOffences.General} is 4:
6864 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 3"
6865 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e3.0 Days"
6866 if {p.%arg-1%::pOffences.General} is 5:
6867 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 7"
6868 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e7.0 Days"
6869 if {p.%arg-1%::pOffences.General} is 6:
6870 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 14"
6871 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e14.0 Days"
6872 if {p.%arg-1%::pOffences.General} is 7:
6873 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 30"
6874 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e30.0 Days"
6875 if {p.%arg-1%::pOffences.General} is 8:
6876 set {p.%arg-1%::General} to "__mp__ban__ %arg-1% %player%"
6877 set {p.%arg-1%::GeneralL} to "&fBan Duration: &ePermanent"
6878
6879 if {p.%arg-1%::pOffences.Client1} is 1:
6880 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 2"
6881 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e2.0 Days"
6882 if {p.%arg-1%::pOffences.Client1} is 2:
6883 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 4"
6884 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e4.0 Days"
6885 if {p.%arg-1%::pOffences.Client1} is 3:
6886 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 7"
6887 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e7.0 Days"
6888 if {p.%arg-1%::pOffences.Client1} is 4:
6889 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 16"
6890 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e16.0 Days"
6891 if {p.%arg-1%::pOffences.Client1} is 5:
6892 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 30"
6893 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e30.0 Days"
6894 if {p.%arg-1%::pOffences.Client1} is 6:
6895 set {p.%arg-1%::Client1} to "__mp__ban__ %arg-1% %player%"
6896 set {p.%arg-1%::ClientL1} to "&fBan Duration: &ePermanent"
6897 if {p.%arg-1%::pOffences.Client2} is 1:
6898 set {p.%arg-1%::Client2} to "__mp__ban__ %arg-1% %player%"
6899 set {p.%arg-1%::ClientL2} to "&fBan Duration: &ePermanent"
6900 if {p.%arg-1%::pOffences.Client3} is 1:
6901 set {p.%arg-1%::Client3} to "__mp__ban__ %arg-1% %player%"
6902 set {p.%arg-1%::ClientL3} to "&fBan Duration: &ePermanent"
6903 if {p.%arg-1%::pOffences.Chat1} is not set:
6904 set {p.%arg-1%::pOffences.Chat1} to 0
6905 set {p.%arg-1%::pOffences.Chat2} to 0
6906 set {p.%arg-1%::pOffences.Chat3} to 0
6907 set {p.%arg-1%::pOffences.General} to 0
6908 set {p.%arg-1%::pOffences.Client1} to 0
6909 set {p.%arg-1%::pOffences.Client2} to 0
6910 set {p.%arg-1%::pOffences.Client3} to 0
6911 if player has permission "mineplex.trainee" or "mineplex.mod":
6912 delete {reversed.p.%arg-1%::history::*}
6913 set {_slot} to 0
6914 loop {p.%arg-1%::history::*}:
6915 add 1 to {_slot}
6916 set {_reversedslot} to 1
6917 loop {p.%arg-1%::history::*}:
6918 set {reversed.p.%arg-1%::history::%{_reversedslot}%} to "%{p.%arg-1%::history::%{_slot}%}%"
6919 remove 1 from {_slot}
6920 add 1 to {_reversedslot}
6921 open chest with 6 rows named " Punish" to player
6922 wait 1 tick
6923 format slot 4 of player with arg-1's skull named "&a&l%arg-1%" with lore "&r%arg-2%" to be unstealable
6924
6925 format slot 10 of player with book and quill named "&a&lChat Offense" with lore "&7Verbal Abuse, Spam, Harrassment, Trolling, etc" to be unstealable
6926 format slot 19 of player with cactus green named "&a&lSeverity 1" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Chat1}%||%{p.%arg-1%::ChatL1}%||||&7Light Spam||&f Sending the same message 2-5 times||||&7Light Advertising||&f 'anyone want to play on minecade?'||||&7Light Abuse/Harassment||&f 'you suck at this game'||||&7Hackusations||&f 'you're such a hacker!'||||&7Trolling||||&2Give Warning if 0 Past Offences and 0 Warnings." to close then run [punishHTempMute(sender, arg-1, arg-2, 4)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f1||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Chat1}]
6927
6928 format slot 12 of player with hopper named "&a&lGeneral Offense" with lore "&7Command/Map/Class/Skill exploits, etc" to be unstealable
6929 format slot 21 of player with cactus green named "&a&lSeverity 1" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.General}%||%{p.%arg-1%::GeneralL}%||||&7Team Killing||&f Intentionally killing your team mates||||&7Trolling (Gameplay)||&f Using abilities to trap players in spawn||||&7Map/Bug Exploiting||&f Abusing an exploit to gain an advantage" to close then run [punishHTempBan(sender, arg-1, arg-2, 8)]->[add "&ePunishment Type: &fExploiting||&eSeverity: &f1||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.General}]
6930 format slot 14 of player with iron sword named "&a&lClient Mod" with lore "&7X-ray, Forcefield, Speed, Fly, Inventory Hacks, etc" to be unstealable
6931 format slot 23 of player with cactus green named "&a&lSeverity 1" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Client1}%||%{p.%arg-1%::ClientL1}%||||&7Examples;||&f Damage Indicators||&f Player Radar" to close then run [punishDTempBan(sender, arg-1, arg-2, 1)]->[add "&ePunishment Type: &fHacking||&eSeverity: &f1||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Client1}]
6932 format slot 25 of player with paper named "&a&lWarning" with lore "||&7Example Warning Input;||&f Spam - Repeatedly writing MEOW||&f Swearing - Saying 'fuck' and 'shit'||&f Hack Accusation - Accused Tomp13 of hacking||&f Trolling - was trying to make bob angry in chat" to close then run [punishWarn(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fWarning||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
6933 if player has permission "mineplex.mod": #Access all punishments!
6934 format slot 28 of player with dandelion yellow named "&a&lSeverity 2" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Chat2}%||%{p.%arg-1%::ChatL2}%||||&7Medium Spam|| &fSending the same message 6-20 times||||&7Medium Advertising;|| &f'join crap.server.net' - posted once||||&7Medium Abuse/Harassment|| &f'piss off you stupid newb'|| &f'SHIT ADMINS ARE SHIT!!!'|| &f'you're terrible, learn to play'||||&7Avoiding Chat Filter|| &f'F|_|<K YOU'" to close then run [punishDTempMute(sender, arg-1, arg-2, 2)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f2||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Chat2}]
6935 format slot 37 of player with rose red named "&a&lSeverity 3" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Chat3}%||%{p.%arg-1%::ChatL3}%||||&7Severe Spam|| &fSending the same message 20+ times|| &fOnly really used for a spam bot||||&7Severe Abuse/Harassment|| &f'go fucking die in a fire you fucking sack of shit'" to close then run [punishMute(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f3||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Chat3}]
6936
6937 format slot 32 of player with dandelion yellow named "&a&lSeverity 2" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Client2}%||%{p.%arg-1%::ClientL2}%||||&7Hacks;|| &fForcefield|| &fSpeed Hack|| &fReach Hack|| &fOther Hack||||&7Hack Reports (SR & FR);|| &fForcefield|| &fSpeed Hack|| &fReach Hack|| &fOther Hack|| &fFly Hack" to close then run [punishDTempBan(sender, arg-1, arg-2, 30)]->[add "&ePunishment Type: &fHacking||&eSeverity: &f2||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Client2}]
6938 format slot 41 of player with rose red named "&a&lSeverity 3" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Client3}%||%{p.%arg-1%::ClientL3}%||||&7Hacks:|| &fFly Hack||||&c&lWARNING;||&cUse Severity 2 for Forum/Staff Reports" to close then run [punishDTempBan(sender, arg-1, arg-2, 30)]->[add "&ePunishment Type: &fHacking||&eSeverity: &f3||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Client3}]
6939
6940 format slot 43 of player with book and quill named "&a&lPermanent Mute" with lore "&fMute Duration: &ePermanent||||&7Severe Advertising;||&f 'JOIN MINECADE! THIS SUCKS!||&f 'join crap.server.net! FREE ADMIN!||||&2Must supply detailed reason for Mute." to close then run [punishMute(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f4||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
6941 format slot 34 of player with redstone block named "&a&lPermanent Ban" with lore "&fBan Duration: &ePermanent||||&2Must supply detailed reason for Ban." to close then run [punishBan(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fOther||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
6942 format slot 26 of player with enchanted book named "&a&lPermanent Report Ban" with lore "&fReport Ban Duration: &ePermanent||||&7Abusing Report Feature|| &r/report SomeUser THE STAFF HERE SUCK|| &r/report SomeUser MINEPLEX IS A F****** PIECE OF S***" to close then run [punishReportBan(sender, arg-1, arg-2)]->[add "&ePunishment Type: &rOther||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
6943 set {_banned} to getPlayerdata(arg-1, "banned")
6944 set {_muted} to getPlayerdata(arg-1, "muted")
6945 set {_slot} to 45
6946 loop {reversed.p.%arg-1%::history::*}:
6947 set {punishgui.%player%::*} to "%arg 1%"
6948 add arg 2 to {punishgui.%player%::*}
6949 if "%loop-value%" contains "&ePunishment Type: &fChatOffense":
6950 if {_muted} is true:
6951 if "%loop-value%" does not contain "&eRemoved by: ":
6952 set slot {_slot} of player's current inventory to shiny book and quill named "&a&lChat Offense" with lore "%loop-value%"
6953 add 1 to {_slot}
6954 else:
6955 set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%"
6956 add 1 to {_slot}
6957 else:
6958 set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%"
6959 add 1 to {_slot}
6960 if "%loop-value%" contains "&ePunishment Type: &fHacking":
6961 if {_banned} is true:
6962 if "%loop-value%" does not contain "&eRemoved by: ":
6963 set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%"
6964 add 1 to {_slot}
6965 else:
6966 set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%"
6967 add 1 to {_slot}
6968 else:
6969 set slot {_slot} of player's current inventory to iron sword named "&a&lClient Mod" with lore "%loop-value%"
6970 add 1 to {_slot}
6971 if "%loop-value%" contains "&ePunishment Type: &fExploiting":
6972 if {_banned} is true:
6973 if "%loop-value%" does not contain "&eRemoved by: ":
6974 set slot {_slot} of player's current inventory to shiny hopper named "&a&lGeneral Offense" with lore "%loop-value%"
6975 add 1 to {_slot}
6976 else:
6977 set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%"
6978 add 1 to {_slot}
6979 else:
6980 set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%"
6981 add 1 to {_slot}
6982 if "%loop-value%" contains "&ePunishment Type: &fWarning":
6983 set slot {_slot} of player's current inventory to paper named "&a&lWarning" with lore "%loop-value%"
6984 add 1 to {_slot}
6985 if "%loop-value%" contains "&ePunishment Type: &fOther":
6986 if {_banned} is true:
6987 if "%loop-value%" does not contain "&eRemoved by: ":
6988 set slot {_slot} of player's current inventory to shiny redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
6989 add 1 to {_slot}
6990 else:
6991 set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
6992 add 1 to {_slot}
6993 else:
6994 set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
6995 add 1 to {_slot}
6996 if "%loop-value%" contains "&ePunishment Type: &rOther":
6997 set slot {_slot} of player's current inventory to enchanted book named "&a&lPermanent Report Ban" with lore "%loop-value%"
6998 add 1 to {_slot}
6999 if {_slot} = 54:
7000 exit loop
7001 if {mineplex.rank.%player%} is "&6&LJR.DEV " or "&4&lDEV ":
7002 format slot 0 of player with shiny dandelion named "&a&lDEV WARNING" with lore "&rDevelopers are advised against using the punish system||&runless permitted by LT" to be unstealable
7003
7004#Prefs System
7005
7006function prefsSystem(p: player , t: number) :: number:
7007 if {_t} is 1:
7008 if {mineplex.pref.hg.%{_p}%} is true:
7009 set {mineplex.pref.hg.%{_p}%} to false
7010 else:
7011 set {mineplex.pref.hg.%{_p}%} to true
7012 else if {_t} is 2:
7013 if {mineplex.pref.hpv.%{_p}%} is true:
7014 set {mineplex.pref.hpv.%{_p}%} to false
7015 hide all players from {_p}
7016 else:
7017 set {mineplex.pref.hpv.%{_p}%} to true
7018 reveal all players from {_p}
7019 loop all players:
7020 if {mineplex.vanish.%loop-player%} is true:
7021 add loop-player to {%{_p}%.vanishlist::*}
7022 loop all players:
7023 if loop-player does not have permission "mineplex.admin":
7024 hide {%{_p}%.vanishlist::*} from all players
7025 delete {%{_p}%.vanishlist::*}
7026 else if {_t} is 3:
7027 if {mineplex.pref.pc.%{_p}%} is true:
7028 set {mineplex.pref.pc.%{_p}%} to false
7029 else:
7030 set {mineplex.pref.pc.%{_p}%} to true
7031 else if {_t} is 4:
7032 if {mineplex.pref.pm.%{_p}%} is true:
7033 set {mineplex.pref.pm.%{_p}%} to false
7034 else:
7035 set {mineplex.pref.pm.%{_p}%} to true
7036 else if {_t} is 5:
7037 if {mineplex.pref.gwen.%{_p}%} is true:
7038 set {mineplex.pref.gwen.%{_p}%} to false
7039 else:
7040 set {mineplex.pref.gwen.%{_p}%} to true
7041 else if {_t} is 6:
7042 if {mineplex.pref.report.%{_p}%} is true:
7043 set {mineplex.pref.report.%{_p}%} to false
7044 else:
7045 set {mineplex.pref.report.%{_p}%} to true
7046 else if {_t} is 7:
7047 if {mineplex.pref.ff.%{_p}%} is true:
7048 set {mineplex.pref.ff.%{_p}%} to false
7049 else:
7050 set {mineplex.pref.ff.%{_p}%} to true
7051 else if {_t} is 8:
7052 if {mineplex.ff.%{_p}%} is true:
7053 set {mineplex.ff.%{_p}%} to false
7054 delete {mineplex.ff.list::%{_p}%}
7055 else:
7056 set {mineplex.ff.%{_p}%} to true
7057 set {mineplex.ff.list::%{_p}%} to true
7058 else if {_t} is 9:
7059 if {mineplex.pref.rm.%{_p}%} is true:
7060 set {mineplex.pref.rm.%{_p}%} to false
7061 else:
7062 set {mineplex.pref.rm.%{_p}%} to true
7063 else if {_t} is 10:
7064 if {mineplex.pref.aj.%{_p}%} is true:
7065 set {mineplex.pref.aj.%{_p}%} to false
7066 else:
7067 set {mineplex.pref.aj.%{_p}%} to true
7068 else if {_t} is 11:
7069 if {mineplex.pref.daw.%{_p}%} is true:
7070 set {mineplex.pref.daw.%{_p}%} to false
7071 else:
7072 set {mineplex.pref.daw.%{_p}%} to true
7073 else if {_t} is 12:
7074 if {mineplex.pref.cj.%{_p}%} is true:
7075 set {mineplex.pref.cj.%{_p}%} to false
7076 else:
7077 set {mineplex.pref.cj.%{_p}%} to true
7078 else if {_t} is 13:
7079 if {mineplex.pref.sct.%{_p}%} is true:
7080 set {mineplex.pref.sct.%{_p}%} to false
7081 else:
7082 set {mineplex.pref.sct.%{_p}%} to true
7083 else if {_t} is 14:
7084 if {mineplex.pref.hm.%{_p}%} is true:
7085 set {mineplex.pref.hm.%{_p}%} to false
7086 else:
7087 set {mineplex.pref.hm.%{_p}%} to true
7088 else if {_t} is 15:
7089 if {mineplex.pref.pr.%{_p}%} is true:
7090 set {mineplex.pref.pr.%{_p}%} to false
7091 else:
7092 set {mineplex.pref.pr.%{_p}%} to true
7093 else if {_t} is 16:
7094 if {mineplex.pref.spfr.%{_p}%} is true:
7095 set {mineplex.pref.spfr.%{_p}%} to false
7096 else:
7097 set {mineplex.pref.spfr.%{_p}%} to true
7098 else if {_t} is 17:
7099 if {mineplex.pref.dfg.%{_p}%} is true:
7100 set {mineplex.pref.dfg.%{_p}%} to false
7101 else:
7102 set {mineplex.pref.dfg.%{_p}%} to true
7103 else if {_t} is 18:
7104 if {mineplex.pref.sci.%{_p}%} is true:
7105 set {mineplex.pref.sci.%{_p}%} to false
7106 else:
7107 set {mineplex.pref.sci.%{_p}%} to true
7108 else if {_t} is 19:
7109 if {mineplex.pref.dpg.%{_p}%} is true:
7110 set {mineplex.pref.dpg.%{_p}%} to false
7111 else:
7112 set {mineplex.pref.dpg.%{_p}%} to true
7113 else if {_t} is 20:
7114 if {mineplex.pref.hif.%{_p}%} is true:
7115 set {mineplex.pref.hif.%{_p}%} to false
7116 else:
7117 set {mineplex.pref.hif.%{_p}%} to true
7118
7119function profile_system(arg1: text , arg2: text , p: player, p2: player) :: number:
7120 set {_wither} to "MHF_WSkeleton" parsed as a player
7121 if {_arg1} is "menu":
7122 if {_arg2} is "profile":
7123 wait 2 ticks
7124 open chest with 3 rows named "My Profile" to {_p}
7125 wait 4 ticks
7126 format slot 11 of {_p} with {_p}'s skull named "&eStats and Achievements" with lore "&f||&fView your Statistics and Achievements||&ffor all of the games on Mineplex!||&f||&fType &a/stats &fto access this anywhere!" to run [profile_system("menu", "stats", {_p}, {_p2})]
7127 format slot 13 of {_p} with redstone comparator item named "&ePreferences" with lore "&f||&fSet your preferences to your liking||&fso you can enjoy the game more!||&f||&fType &a/prefs &fto access this anywhere!" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7128 format slot 15 of {_p} with glistering melon named "&eMineplex Player Server" with lore "&f||&fCreate a server where you are the Host.||&fYou can Choose the game, map and much more!||&f||&fType &a/mps &fto access this anywhere!" to be unstealable
7129 if {_arg2} is "prefs":
7130 if {_p} has permission "mineplex.trainee":
7131 open chest with 6 rows named "My Preferences" to {_p}
7132 wait 3 tick
7133 format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable
7134 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7135 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7136 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7137 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7138 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7139 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7140 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7141 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7142 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7143 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7144 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7145 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7146 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7147 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7148 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7149 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7150 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7151 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7152 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7153 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7154 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7155 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7156 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7157 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7158 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7159 format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})]
7160 format slot 21 of {_p} with diamond named "&eExclusive Preferences" to run [profile_system("menu", "staff", {_p}, {_p2})]
7161 format slot 23 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})]
7162 format slot 25 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})]
7163 format slot 31 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})]
7164 else:
7165 open chest with 5 rows named "My Preferences" to {_p}
7166 wait 3 tick
7167 format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable
7168 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7169 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7170 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7171 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7172 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7173 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7174 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7175 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7176 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7177 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7178 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7179 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7180 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7181 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7182 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7183 format slot 37 of {_p} with light blue stained glass pane named "&f" to be unstealable
7184 format slot 38 of {_p} with light blue stained glass pane named "&f" to be unstealable
7185 format slot 39 of {_p} with light blue stained glass pane named "&f" to be unstealable
7186 format slot 40 of {_p} with light blue stained glass pane named "&f" to be unstealable
7187 format slot 41 of {_p} with light blue stained glass pane named "&f" to be unstealable
7188 format slot 42 of {_p} with light blue stained glass pane named "&f" to be unstealable
7189 format slot 43 of {_p} with light blue stained glass pane named "&f" to be unstealable
7190 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7191 format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})]
7192 format slot 21 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})]
7193 format slot 23 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})]
7194 format slot 25 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})]
7195 if {_arg2} is "user":
7196 open chest with 6 rows named "User Preferences" to {_p}
7197 wait 3 tick
7198 format slot 0 of {_p} with bed named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7199 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7200 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7201 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7202 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7203 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7204 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7205 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7206 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7207 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7208 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7209 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7210 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7211 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7212 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7213 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7214 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7215 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7216 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7217 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7218 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7219 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7220 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7221 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7222 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7223 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7224 if {mineplex.pref.hg.%{_p}%} is true:
7225 format slot 10 of {_p} with fire charge named "&aHub Games" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
7226 format slot 19 of {_p} with light green dye named "&aHub Games" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
7227 else:
7228 format slot 10 of {_p} with fire charge named "&cHub Games" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
7229 format slot 19 of {_p} with gray dye named "&cHub Games" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
7230 if {mineplex.pref.hpv.%{_p}%} is true:
7231 format slot 12 of {_p} with eye of ender named "&aHub Player Visibility" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
7232 format slot 21 of {_p} with light green dye named "&aHub Player Visibility" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
7233 else:
7234 format slot 12 of {_p} with eye of ender named "&cHub Player Visibility" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
7235 format slot 21 of {_p} with gray dye named "&cHub Player Visibility" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
7236 if {mineplex.pref.pc.%{_p}%} is true:
7237 format slot 14 of {_p} with paper named "&aPlayer Chat" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
7238 format slot 23 of {_p} with light green dye named "&aPlayer Chat" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
7239 else:
7240 format slot 14 of {_p} with paper named "&cPlayer Chat" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
7241 format slot 23 of {_p} with gray dye named "&cPlayer Chat" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
7242 if {mineplex.pref.pm.%{_p}%} is true:
7243 format slot 16 of {_p} with map named "&aPrivate Messaging" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
7244 format slot 25 of {_p} with light green dye named "&aPrivate Messaging" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
7245 else:
7246 format slot 16 of {_p} with map named "&CPrivate Messaging" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
7247 format slot 25 of {_p} with gray dye named "&cPrivate Messaging" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
7248 if {mineplex.pref.rm.%{_p}%} is true:
7249 format slot 31 of {_p} with command block named "&aSend random messages" with lore "&aEnabled||&f||&fClick to Disable||&f||&7Got nothing to say? We got you covered!" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
7250 format slot 40 of {_p} with light green dye named "&aSend random messages" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
7251 else:
7252 format slot 31 of {_p} with command block named "&cSend random messages" with lore "&cDisabled||&f||&fClick to Enable||&f||&7Got nothing to say? We got you covered!" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
7253 format slot 40 of {_p} with gray dye named "&cSend random messages" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
7254 if {_arg2} is "game":
7255 open chest with 6 rows named "Game Mechanic Preference" to {_p}
7256 wait 3 tick
7257 format slot 0 of {_p} with bed named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7258 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7259 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7260 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7261 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7262 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7263 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7264 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7265 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7266 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7267 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7268 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7269 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7270 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7271 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7272 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7273 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7274 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7275 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7276 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7277 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7278 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7279 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7280 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7281 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7282 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7283 if {mineplex.pref.aj.%{_p}%} is true:
7284 format slot 11 of {_p} with diamond sword named "&aAuto Join Next Game" with lore "&aEnabled||&f||&fClick to Disable||&f||&7Feel like playing again?||&7Enable this, and when you're you||&7a 15 second timer will start||&7when it ends, it'll send you||&7to another game!" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
7285 format slot 20 of {_p} with light green dye named "&aAuto Join Next Game" with lore "&aEnabled||&f||&fClick to Disable||" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
7286 else:
7287 format slot 11 of {_p} with diamond sword named "&cAuto Join Next Game" with lore "&cDisabled||&f||&fClick to Enable||&f||&7Feel like playing again?||&7Enable this, and when you're you||&7a 15 second timer will start||&7when it ends, it'll send you||&7to another game!" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
7288 format slot 20 of {_p} with gray dye named "&cAuto Join Next Game" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
7289 if {mineplex.pref.daw.%{_p}%} is true:
7290 format slot 13 of {_p} with barrier named "&aDisable Automatic Warning" with lore "&aEnabled||&f||&fClick to Disable||&f||&7Know what you're doing?||&7Disable this to not receive||&7a message warning you about Auto-Join" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
7291 format slot 22 of {_p} with light green dye named "&aDisable Automatic Warning" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
7292 else:
7293 format slot 13 of {_p} with barrier named "&cDisable Automatic Warning" with lore "&cDisabled||&f||&fClick to Enable||&f||&7Know what you're doing?||&7Disable this to not receive||&7a message warning you about Auto-Join" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
7294 format slot 22 of {_p} with gray dye named "&cDisable Automatic Warning" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
7295 if {mineplex.pref.cj.%{_p}%} is true:
7296 format slot 15 of {_p} with clock named "&aCountdown to Join" with lore "&aEnabled||&f||&fClick to Disable||&f||&7See that fancy text when you're out?||&7If you click it, and this is enabled||&7a 15 second time will countdown||&7until you are sent to a new game" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
7297 format slot 24 of {_p} with light green dye named "&aCountdown to Join" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
7298 else:
7299 format slot 15 of {_p} with clock named "&cCountdown to Join" with lore "&cDisabled||&f||&fClick to Enable||&f||&7See that fancy text when you're out?||&7If you click it, and this is enabled||&7a 15 second time will countdown||&7until you are sent to a new game" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
7300 format slot 24 of {_p} with gray dye named "&cCountdown to Join" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
7301 if {_arg2} is "misc":
7302 open chest with 6 rows named "Miscellaneous Preference" to {_p}
7303 wait 3 tick
7304 format slot 0 of {_p} with bed named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7305 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7306 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7307 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7308 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7309 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7310 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7311 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7312 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7313 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7314 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7315 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7316 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7317 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7318 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7319 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7320 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7321 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7322 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7323 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7324 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7325 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7326 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7327 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7328 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7329 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7330 if {mineplex.pref.sct.%{_p}%} is true:
7331 format slot 12 of {_p} with iron sword named "&aShow Clan Tips" with lore "&aEnabled||&f||&fClick to Disable||&f||&f" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
7332 format slot 21 of {_p} with light green dye named "&aShow Clan Tips" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
7333 else:
7334 format slot 12 of {_p} with iron sword named "&cShow Clan Tips" with lore "&cDisabled||&f||&fClick to Enable||&f||&f" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
7335 format slot 21 of {_p} with gray dye named "&cShow Clan Tips" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
7336 if {mineplex.pref.hm.%{_p}%} is true:
7337 format slot 14 of {_p} with note block named "&aHub Music" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
7338 format slot 23 of {_p} with light green dye named "&aHub Music" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
7339 else:
7340 format slot 14 of {_p} with note block named "&cHub Music" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
7341 format slot 23 of {_p} with gray dye named "&cHub Music" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
7342 if {_arg2} is "social":
7343 open chest with 6 rows named "Social Preferences" to {_p}
7344 wait 3 tick
7345 format slot 0 of {_p} with bed named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7346 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7347 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7348 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7349 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7350 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7351 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7352 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7353 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7354 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7355 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7356 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7357 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7358 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7359 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7360 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7361 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7362 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7363 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7364 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7365 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7366 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7367 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7368 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7369 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7370 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7371 if {mineplex.pref.pr.%{_p}%} is true:
7372 format slot 10 of {_p} with human head named "&aParty Requests" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
7373 format slot 19 of {_p} with light green dye named "&aParty Requests" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
7374 else:
7375 format slot 10 of {_p} with human head named "&cParty Requests" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
7376 format slot 19 of {_p} with gray dye named "&cParty Requests" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
7377 if {mineplex.pref.spfr.%{_p}%} is true:
7378 format slot 12 of {_p} with red flower named "&aShow Pending Friend Requests" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
7379 format slot 21 of {_p} with light green dye named "&aShow Pending Friend Requests" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
7380 else:
7381 format slot 12 of {_p} with red flower named "&cShow Pending Friend Requests" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
7382 format slot 21 of {_p} with gray dye named "&cShow Pending Friend Requests" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
7383 if {mineplex.pref.dfg.%{_p}%} is true:
7384 format slot 14 of {_p} with chest named "&aDisplay Friend GUI" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
7385 format slot 23 of {_p} with light green dye named "&aDisplay Friend GUI" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
7386 else:
7387 format slot 14 of {_p} with chest named "&cDisplay Friend GUI" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
7388 format slot 23 of {_p} with gray dye named "&cDisplay Friend GUI" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
7389 if {mineplex.pref.sci.%{_p}%} is true:
7390 format slot 16 of {_p} with book named "&aShow Community Invites" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
7391 format slot 25 of {_p} with light green dye named "&aShow Community Invites" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
7392 else:
7393 format slot 16 of {_p} with book named "&cShow Community Invites" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
7394 format slot 25 of {_p} with gray dye named "&cShow Community Invites" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
7395 if {mineplex.pref.dpg.%{_p}%} is true:
7396 format slot 31 of {_p} with chest named "&aDisplay Parties GUI" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
7397 format slot 40 of {_p} with light green dye named "&aDisplay Parties GUI" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
7398 else:
7399 format slot 31 of {_p} with chest named "&cDisplay Parties GUI" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
7400 format slot 40 of {_p} with gray dye named "&cDisplay Parties GUI" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
7401 if {_arg2} is "staff":
7402 open chest with 6 rows named "Exclusive Preferences" to {_p}
7403 wait 3 tick
7404 format slot 0 of {_p} with bed named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7405 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7406 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7407 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7408 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7409 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7410 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7411 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7412 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7413 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7414 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7415 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7416 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7417 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7418 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7419 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7420 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7421 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7422 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7423 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7424 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7425 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7426 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7427 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7428 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7429 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7430 if {mineplex.pref.hif.%{_p}%} is true:
7431 format slot 10 of {_p} with nether star named "&aHub Invisibility & Flight" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
7432 format slot 19 of {_p} with light green dye named "&aHub Invisibility & Flight" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
7433 else:
7434 format slot 10 of {_p} with nether star named "&cHub Invisibility & Flight" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
7435 format slot 19 of {_p} with gray dye named "&cHub Invisibility & Flight" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
7436 if {mineplex.ff.%{_p}%} is true:
7437 format slot 12 of {_p} with slimeball named "&aHub Forcefield" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
7438 format slot 21 of {_p} with light green dye named "&aHub Forcefield" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
7439 else:
7440 format slot 12 of {_p} with slimeball named "&cHub Forcefield" with lore "&cDisabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
7441 format slot 21 of {_p} with gray dye named "&cHub Forcefield" with lore "&cDisabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
7442 if {mineplex.pref.gwen.%{_p}%} is true:
7443 format slot 14 of {_p} with paper named "&aGlobal GWEN Reports" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
7444 format slot 23 of {_p} with light green dye named "&aGlobal GWEN Reports" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
7445 else:
7446 format slot 14 of {_p} with paper named "&cGlobal GWEN Reports" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
7447 format slot 23 of {_p} with gray dye named "&cGlobal GWEN Reports" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
7448 if {mineplex.pref.report.%{_p}%} is true:
7449 format slot 16 of {_p} with book named "&aUser Reports" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
7450 format slot 25 of {_p} with light green dye named "&aUser Reports" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
7451 else:
7452 format slot 16 of {_p} with book named "&cUser Reports" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
7453 format slot 25 of {_p} with gray dye named "&cUser Reports" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
7454 if {mineplex.pref.ff.%{_p}%} is true:
7455 format slot 31 of {_p} with saddle named "&aIgnore Hub Velocity" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
7456 format slot 40 of {_p} with light green dye named "&aIgnore Hub Velocity" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
7457 else:
7458 format slot 31 of {_p} with saddle named "&cIgnore Hub Velocity" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
7459 format slot 40 of {_p} with gray dye named "&cIgnore Hub Velocity" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
7460
7461command /prefs:
7462 trigger:
7463 profile_system("menu", "prefs", player, player)
7464
7465#GWEN CODING!! (Using my old plugin Shield) (I took it down as I was ripping off json.sk but wtevr) lol
7466
7467on damage:
7468 if victim's name is "BeamCow" or "BeamGuar":
7469 cancel event
7470on death:
7471 if victim's name is "BeamCow" or "BeamGuar":
7472 clear drops
7473
7474on quit:
7475 delete {forcefield.past.%player%}
7476
7477function beamGo(p: player) :: number:
7478 apply slowness 255 to {_p} for 7 seconds
7479 set {_p2} to location 3 meters in front of {_p}
7480 add 5 to y-coordinate of {_p2}
7481 set {_p3} to location 3 meters behind {_p}
7482 add 5 to y-coordinate of {_p3}
7483 set {_p4} to location 3 meters left of {_p}
7484 add 5 to y-coordinate of {_p4}
7485 set {_p5} to location 3 meters right of {_p}
7486 add 5 to y-coordinate of {_p5}
7487 spawn a guardian at {_p2}
7488 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7489 set {_t2} to last spawned entity
7490 spawn a guardian at {_p3}
7491 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7492 set {_t3} to last spawned entity
7493 spawn a guardian at {_p4}
7494 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7495 set {_t4} to last spawned entity
7496 spawn a guardian at {_p5}
7497 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7498 set {_t5} to last spawned entity
7499 set {_player} to {_p}
7500 set {_r} to randomize "BHWFEAEG619"
7501 set {_s} to "Chiss" parsed as a player
7502 setPlayerdata({_p}, "banned", "yes")
7503 punishBan({_s} ,{_player} , "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%")
7504 set {banned::%{_player}%} to true
7505 set {banned::%{_player}%::type} to "perm"
7506 set {banned::%{_player}%::reason} to "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%"
7507 set {banned::%{_player}%::staff} to "Chiss"
7508 set {banned::%{_player}%::when} to now
7509 add "&ePunishment Type: &fOther||||&eReason: &f[GWEN] Token: %{_r}%||||&eStaff: &fChiss||||&eDate: &f%now%" to {p.%{_player}%::history::*}
7510 Beam({_p}, {_t2})
7511 Beam({_p}, {_t3})
7512 Beam({_p}, {_t4})
7513 Beam({_p}, {_t5})
7514 wait 5.2 seconds
7515 broadcast "&9GWEN> &7%{_p}% has been banned. I am always watching"
7516 kick {_player} due to "&c&lYou are banned for Permanent by %{mineplex.config.servername}% Anti-Cheat%nl%&f[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
7517
7518command /gwenban <player>:
7519 permission: mineplex.admin
7520 permission message: &9Permissions> &7You do not have permission to do that.
7521 trigger:
7522 beamGo(arg-1)
7523
7524on shoot:
7525 if projectile is an arrow:
7526 if difference between {bow.%shooter%} and now is less than 2 ticks:
7527 gwenAlert((shooter), ("Fast Bow"))
7528 set {bow.%shooter%} to now
7529
7530every 4 second :
7531 set {autoclick.check} to true
7532 wait 3 second
7533 set {autoclick.check} to false
7534 loop all players :
7535 delete {player.click.%loop-player%}
7536
7537on left click :
7538 {autoclick.check} is true
7539 add 1 to {player.click.%player%}
7540 {player.click.%player%} > 69
7541 gwenAlert((player), ("High CPS (%{player.click.%player%} / 3% clicks/second)"))
7542
7543on walk on water:
7544 set {_loc} to location of player
7545 add 2 to y-coordinate of {_loc}
7546 if block at {_loc} is air:
7547 add 1 to {gwen.jesus.%player%}
7548 if {gwen.jesus.%player%} is greater than 6:
7549 gamemode of player is survival
7550 gwenAlert((player), ("Jesus"))
7551 delete {gwen.jesus.%player%}
7552
7553on consume:
7554 if difference between {fasteat.%player%} and now is less than 10 ticks:
7555 cancel event
7556 set {fasteat.%player%} to now
7557 gwenAlert((player), ("FastEat"))
7558 set {fasteat.%player%} to now
7559
7560on damage:
7561 if attacker is a player:
7562 if victim is a player:
7563 if attacker's gamemode is survival or adventure:
7564 damage cause isn't thorns or a projectile:
7565 set {_reach.%attacker%} to distance between attacker and victim
7566 set {_ping} to attacker's ping
7567 if {_reach.%attacker%} is greater than 5.67:
7568 if {_ping} is greater than 350:
7569 gwenAlert((attacker), ("Reach"))
7570 if {_ping} is less than 350:
7571 gwenAlert((attacker), ("Reach"))
7572
7573on damage of a player :
7574 block at victim is not cobweb
7575 victim is not riding
7576 victim is not on fire
7577 victim's y-coordinate is greater than 5
7578 set {_loc9} to block north east victim
7579 set {_loc8} to block south west victim
7580 blocks within {_loc9} to {_loc8} is air
7581 set {_loc} to location of victim
7582 wait 10 ticks
7583 set {_loc2} to location of victim
7584 distance between {_loc} and {_loc2} = 0
7585 victim's ping < 250
7586 gwenAlert((victim), ("Velocity"))
7587
7588#Systems
7589
7590on leftclick holding tnt:
7591 if {mineplex.tntlauncher} is true:
7592 player has 1 tnt
7593 spawn a primed tnt 1 meter above the player
7594 add "{Fuse:60}" to nbt of the spawned entity
7595 push the spawned entity in direction of player at speed 0.9
7596 push the spawned entity upwards at speed 0.2
7597 remove 1 tnt from player
7598
7599on rightclick holding tnt:
7600 if {mineplex.tntlauncher} is true:
7601 player has 1 tnt
7602 spawn a primed tnt 1 meter above the player
7603 add "{Fuse:60}" to nbt of the spawned entity
7604 push the spawned entity in direction of player at speed 0.9
7605 push the spawned entity upwards at speed 0.2
7606 remove 1 tnt from player
7607
7608#Modules
7609
7610on load:
7611 delete {mineplex::modules::*}
7612 set {mineplex.modulesapi.online} to true
7613
7614on unload:
7615 delete {mineplex::modules::*}
7616 set {mineplex.modulesapi.online} to false
7617
7618command /modules:
7619 trigger:
7620 send "&9Modules> &7Modules API version 0.1"
7621 send "&9Modules> &7Going to *attempt* to list modules."
7622 send "&9Modules> &7This does not mean that your module is not loaded."
7623 loop {mineplex::modules::*}:
7624 send "&9Modules> &e%loop-value%"
7625
7626#add "Bungee Module" to {mineplex::modules::*}
7627#remove "Bungee Module" from {mineplex::modules::*}
7628
7629#MPS
7630
7631#on load:
7632# if {wget} is not set:
7633# download file from "" to file "./WheezyMap.zip"
7634
7635#command /mpsconfirm:
7636# permission: mineplex.op
7637# trigger:
7638# if {mineplex.mps.%player%} is not set:
7639# send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly."
7640# send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1."
7641# copy dir "./mps/Mineplex" to "./mps/%player%-1/"
7642# load world "./mps/%player%-1"
7643# set {mps.%player%-1} to "yes"
7644# wait 20 seconds
7645# else:
7646# send "&9Personal Server Manager> &7Your server is still being created or already exists. If you haven't been connected in 20 seconds, type /server %player%-1."
7647#
7648#command /hostserver:
7649# permission: mineplex.op
7650# trigger:
7651# if {mineplex.mps.%player%} is not set:
7652# send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly."
7653# send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1."
7654# create folder "./mps/%player%-1"
7655# load world "./mps/%player%-1"
7656# wait 20 seconds
7657# teleport player to spawn of "./mps/%player%-1"
7658# else:
7659# send "&9Personal Server Manager> &7Your server is still being created or already exists. If you haven't been connected in 20 seconds, type /server %player%-1."
7660
7661#command /endserver:
7662# trigger:
7663# loop all players:
7664# loop-player's world is "./mps/%player%-1":
7665# teleport player to spawn of "%arg-1%"
7666# unload world "./mps/%player%-1"
7667# wait 2 seconds
7668# delete folder "./mps/%player%-1/data/"
7669# delete folder "./mps/%player%-1/region/"
7670# delete file "./mps/%player%-1/level.dat"
7671# delete file "./mps/%player%-1/uid.dat"
7672# delete file "./mps/%player%-1/session.lock"
7673# delete dir "./mps/%player%-1"
7674
7675#command /tpwrd <text>:
7676# trigger:
7677# set {_w} to "world"
7678# teleport player to spawn of {_w}
7679
7680#command /menu:
7681# trigger:
7682# open chest with 3 rows named "Private Server Menu" to player
7683# wait 1 tick
7684# format slot 11 of player with diamond sword named "&a&lGive Co-Host" with lore "||&e" to close then run [execute console command "say no way hosay"]
7685# format slot 13 of player with lava bucket named "&aRemove Player" with lore "||&e" to close then run [execute console command "kick Citrin_ lol"]
7686# format slot 15 of player with redstone comparator item named "&aGame Options" with lore "||&e" to close then run [execute console command "say xd"]
7687# format slot 20 of player with golden sword named "&a&lRemove Co-Host" with lore "||&e" to close then run [execute console command "say no way hosay"]
7688# format slot 22 of player with water bucket named "&a&lUn-Remove Player" with lore "||&e" to close then run [execute console command "say no way hosay"]
7689# format slot 24 of player with tnt named "&a&lKill Private Server" with lore "||&7Shift-Right Click to Kill Private Server" to close then run [execute console command "say xd"]
7690
7691
7692#skPerms by LimeGlass
7693#Thanks for Letting Me Bake This In!
7694options:
7695 prefix: &6[&5SkPerms&6]
7696 maincolour: &6
7697 secondcolour: &7
7698 command: /skperms
7699 aliases: /perm, /permission
7700 permission: skperms.admin
7701
7702 #CMD protection is basically extra security for your server. Only players inside of a list variable can use SkPerms
7703 CMDprotection: false
7704 CMDprotectionMsg: Unknown command. Type ""/help"" for help
7705 #The player list is the list variable that contains players that can use SkPerms if CMDprotection is enabled
7706 PlayerList: {example::players::*}
7707
7708 UseChat: false #use prefix and suffix in the chat
7709 #Chat types:
7710 #Display - Changes the player's display name (Vault will hook if installed)
7711 #Override - !COMING SOON
7712 ChatType: "Display"
7713
7714 version: 1.0.5
7715
7716on script load:
7717 if file "plugins\SkPerms" exists:
7718 delete {skperms::config::*}
7719 else:
7720 set yaml value "version" from file "plugins\SkPerms\config.yml" to "{@version}"
7721 set yaml value "useYML" from file "plugins\SkPerms\config.yml" to false
7722 set {skperms::config::version} to yaml value "version" from file "plugins\SkPerms\config.yml"
7723 set {skperms::config::useYML} to yaml value "useYML" from file "plugins\SkPerms\config.yml"
7724 if {skperms::config::useYML} is true:
7725 if {skperms::players::*} is not set:
7726 stop
7727 delete file "plugins\SkPerms\players.yml"
7728 loop {skperms::players::*}:
7729 loop {skperms::player::%loop-value%::permissions::*}:
7730 add "%loop-value-2%" to yaml list "players.%loop-value-1%.permissions" from file "plugins\SkPerms\players.yml"
7731on script unload:
7732 loop {skperms::groups::*}:
7733 if {skperms::group::%loop-value%::*} is not set:
7734 loop {skperms::group::%loop-value-1%::permissions::*}:
7735 loop {skperms::players::*}:
7736 remove "%loop-value-2%" from {skperms::player::%loop-value-3%::permissions::*}
7737 loop {skperms::players::*}:
7738 remove "%loop-value-1%" from {skperms::player::%loop-value-2%::groups::*}
7739 if {skperms::player::%loop-value-2%::groups::*} is not empty:
7740 loop {skperms::player::%loop-value-2%::groups::*}:
7741 loop {skperms::group::%loop-value-1%::permissions::*}:
7742 set {_p} to "%loop-value-2%" parsed as player
7743 add "%loop-value-4%" to {_p}'s permissions
7744 remove "%loop-value%" from {skperms::groups::*}
7745command {@command} [<text>] [<text>] [<text>] [<text>] [<text>]:
7746 permission: {@permission}
7747 aliases: {@aliases}
7748 trigger:
7749 if {@CMDprotection} is true:
7750 if command sender is not console:
7751 if {@PlayerList} doesn't contain player or "%player%":
7752 message "{@CMDprotectionMsg}"
7753 stop
7754 if arg 1 is not set:
7755 message ""
7756 message "{@prefix} v{@version}:"
7757 message "{@maincolour}{@command} deleteDefault"
7758 message "{@secondcolour}Deletes default group setting (If set)"
7759 message "{@maincolour}{@command} (d|default) (group)"
7760 if {skperms::default} is set:
7761 message "{@secondcolour}Set the default group {@maincolour}(&7%{skperms::default}%{@maincolour})"
7762 else:
7763 message "{@secondcolour}Set the default group"
7764 message "{@maincolour}{@command} (p|player) (player) (add|remove|list) permission [permission]"
7765 message "{@secondcolour}Add/remove/list a players permissions"
7766 message "{@maincolour}{@command} (p|player) (player) (add|set|remove|list) group [group]"
7767 message "{@secondcolour}Add/remove/set/list a players group"
7768 message "{@maincolour}{@command} (g|group) (group) (add|remove|list) permission [permission]"
7769 message "{@secondcolour}Add/remove/list a group permission"
7770 message "{@maincolour}{@command} (g|group) (group) (add|remove|list) group [group]"
7771 message "{@secondcolour}Add/remove/list a groups connected groups"
7772 message "{@secondcolour}A group is created once it contains a permission"
7773 message "{@maincolour}{@command} (g|group) (group) (prefix|suffix) set (text)"
7774 message "{@secondcolour}Set a suffix or prefix to a group"
7775 message ""
7776 else if arg 1 is "deleteDefault":
7777 delete {skperms::default}
7778 message "{@prefix} {@maincolour}Removed default group (No group set)"
7779 else if arg 1 is "d", "setdefault" or "default":
7780 if arg 2 is set:
7781 set {skperms::default} to arg 2
7782 message "{@prefix} {@maincolour}Set default group to &l%arg 2%"
7783 else:
7784 message "{@prefix} {@maincolour}Error: Group not specified"
7785 else if arg 1 is "p" or "player":
7786 if arg 2 is not set:
7787 message "{@prefix} {@maincolour}Error: Player not specified"
7788 else if arg 2 is set:
7789 if arg 3 is "a" or "add":
7790 if arg 4 is "p", "permission" or "permissions":
7791 if arg 5 is set:
7792 if {skperms::groups::*} doesn't contain arg 2:
7793 add arg 2 to {skperms::groups::*}
7794 set {_player} to arg 2 parsed as player
7795 add arg 5 to {_player}'s permissions
7796 set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions
7797 message "{@prefix} {@maincolour}Added %arg 5% to %arg 2%'s permissions"
7798 else:
7799 message "{@prefix} {@maincolour}Error: Permission not specified"
7800 else if arg 4 is "g", "group" or "groups":
7801 if arg 5 is set:
7802 if {skperms::groups::*} doesn't contain arg 2:
7803 add arg 2 to {skperms::groups::*}
7804 if {skperms::player::%arg 2%::groups::*} doesn't contain arg 5:
7805 add arg 5 to {skperms::player::%arg 2%::groups::*}
7806 else:
7807 message "{@prefix} {@secondcolour}%arg 2% already has group %arg 5%"
7808 stop
7809 message "{@prefix} {@maincolour}Added %arg 2% to group %arg 5%"
7810 if {@UseChat} is true:
7811 if {@ChatType} is "Display" or "display":
7812 loop all players:
7813 if {skperms::player::%player%::groups::*} contains arg 5:
7814 if {skperms::group::%arg 5%::prefix} is set:
7815 if {skperms::group::%arg 5%::suffix} is set:
7816 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7817 else:
7818 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7819 else if {skperms::group::%arg 5%::suffix} is set:
7820 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7821 else:
7822 set loop-player's display name to "%player%"
7823 loop all players:
7824 if {skperms::player::%player%::groups::*} is not set:
7825 set loop-player's display name to "%player%"
7826 else:
7827 message "{@prefix} {@maincolour}Error: Group not specified"
7828 else:
7829 message "{@prefix} {@maincolour}Error: Type not specified"
7830 else if arg 3 is "s" or "set":
7831 if arg 4 is "g", "group" or "groups":
7832 if arg 5 is set:
7833 if {skperms::groups::*} doesn't contain arg 2:
7834 add arg 2 to {skperms::groups::*}
7835 delete {skperms::player::%arg 2%::groups::*}
7836 add arg 5 to {skperms::player::%arg 2%::groups::*}
7837 message "{@prefix} {@maincolour}Set %arg 2% to group %arg 5%"
7838 if {@UseChat} is true:
7839 if {@ChatType} is "Display" or "display":
7840 loop all players:
7841 if {skperms::player::%player%::groups::*} contains arg 5:
7842 if {skperms::group::%arg 5%::prefix} is set:
7843 if {skperms::group::%arg 5%::suffix} is set:
7844 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7845 else:
7846 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7847 else if {skperms::group::%arg 5%::suffix} is set:
7848 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7849 else:
7850 set loop-player's display name to "%player%"
7851 loop all players:
7852 if {skperms::player::%player%::groups::*} is not set:
7853 set loop-player's display name to "%player%"
7854 else:
7855 message "{@prefix} {@maincolour}Error: Group not specified"
7856 else:
7857 message "{@prefix} {@maincolour}Error: Type not specified"
7858 else if arg 3 is "r" or "remove":
7859 if arg 4 is "p", "permission" or "permissions":
7860 if arg 5 is set:
7861 set {_player} to arg 2 parsed as player
7862 remove arg 5 from {_player}'s permissions
7863 set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions
7864 message "{@prefix} {@maincolour}Removed %arg 5% from %arg 2%'s permissions"
7865 else:
7866 message "{@prefix} {@maincolour}Error: Permission not specified"
7867 else if arg 4 is "g", "group" or "groups":
7868 if arg 5 is set:
7869 if {skperms::player::%arg 2%::groups::*} contains arg 5:
7870 remove arg 5 from {skperms::player::%arg 2%::groups::*}
7871 message "{@prefix} {@maincolour}Removed %arg 2% from group %arg 5%"
7872 if {@UseChat} is true:
7873 if {@ChatType} is "Display" or "display":
7874 loop all players:
7875 if {skperms::player::%player%::groups::*} contains arg 5:
7876 if {skperms::group::%arg 5%::prefix} is set:
7877 if {skperms::group::%arg 5%::suffix} is set:
7878 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7879 else:
7880 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7881 else if {skperms::group::%arg 5%::suffix} is set:
7882 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7883 else:
7884 set loop-player's display name to "%player%"
7885 loop all players:
7886 if {skperms::player::%player%::groups::*} is not set:
7887 set loop-player's display name to "%player%"
7888 else:
7889 message "{@prefix} {@maincolour}Error: Player %arg 2% doesn't have that group"
7890 else:
7891 message "{@prefix} {@maincolour}Error: Group not specified"
7892 else:
7893 message "{@prefix} {@maincolour}Error: Type not specified"
7894 else if arg 3 is "l" or "list":
7895 if arg 4 is "p", "permission" or "permissions":
7896 set {_player} to arg 2 parsed as player
7897 message "{@prefix} {@maincolour}%{_player}'s permissions%"
7898 else if arg 4 is "g", "group" or "groups":
7899 message "{@prefix} {@maincolour}%{skperms::player::%arg 2%::groups::*}%"
7900 else:
7901 message "{@prefix} {@maincolour}Error: Type not specified"
7902 else if arg 1 is "g", "group" or "groups":
7903 if arg 2 is not set:
7904 message "{@prefix} {@maincolour}Error: Group not specified"
7905 else if arg 2 is set:
7906 if arg 3 is "a" or "add":
7907 if arg 4 is "p", "permission" or "permissions":
7908 if arg 5 is set:
7909 if {skperms::groups::*} doesn't contain arg 2:
7910 add arg 2 to {skperms::groups::*}
7911 add arg 5 to {skperms::group::%arg 2%::permissions::*}
7912 message "{@prefix} {@maincolour}Added %arg 5% to group %arg 2%'s permissions"
7913 loop all players:
7914 if {skperms::player::%player%::groups::*} contains arg 2:
7915 loop {skperms::group::%arg 2%::permissions::*}:
7916 add "%loop-value-2%" to loop-player's permissions
7917 else:
7918 message "{@prefix} {@maincolour}Error: Permission not specified"
7919 else if arg 4 is "g", "group" or "groups":
7920 if arg 5 is set:
7921 if {skperms::groups::*} doesn't contain arg 2:
7922 add arg 2 to {skperms::groups::*}
7923 loop {skperms::group::%arg 5%::permissions::*}:
7924 add "%loop-value%" to {skperms::group::%arg 2%::permissions::*}
7925 message "{@prefix} {@maincolour}Added %arg 5%'s permissions to group %arg 2%"
7926 loop all players:
7927 if {skperms::player::%player%::groups::*} contains arg 2:
7928 loop {skperms::group::%arg 2%::permissions::*}:
7929 add "%loop-value-2%" to loop-player's permissions
7930 else:
7931 message "{@prefix} {@maincolour}Error: Group not specified"
7932 else:
7933 message "{@prefix} {@maincolour}Error: Type not specified"
7934 else if arg 3 is "r" or "remove":
7935 if arg 4 is "p", "permission" or "permissions":
7936 if arg 5 is set:
7937 loop all players:
7938 if {skperms::player::%player%::groups::*} contains arg 2:
7939 loop {skperms::group::%arg 2%::permissions::*}:
7940 remove "%loop-value-2%" from loop-player's permissions
7941 remove arg 5 from {skperms::group::%arg 2%::permissions::*}
7942 message "{@prefix} {@maincolour}Removed %arg 5% from group %arg 2%'s permissions"
7943 loop all players:
7944 if {skperms::player::%player%::groups::*} contains arg 2:
7945 loop {skperms::group::%arg 2%::permissions::*}:
7946 add "%loop-value-2%" to loop-player's permissions
7947 else:
7948 message "{@prefix} {@maincolour}Error: Permission not specified"
7949 else if arg 4 is "g", "group" or "groups":
7950 if arg 5 is set:
7951 loop all players:
7952 if {skperms::player::%player%::groups::*} contains arg 2:
7953 loop {skperms::group::%arg 2%::permissions::*}:
7954 remove "%loop-value-2%" from loop-player's permissions
7955 loop {skperms::group::%arg 5%::permissions::*}:
7956 remove "%loop-value%" from {skperms::group::%arg 2%::permissions::*}
7957 add 1 to {_l}
7958 message "{@prefix} {@maincolour}Removed %{_l}% of %arg 5%'s permissions from group %arg 2%"
7959 loop all players:
7960 if {skperms::player::%player%::groups::*} contains arg 2:
7961 loop {skperms::group::%arg 2%::permissions::*}:
7962 add "%loop-value-2%" to loop-player's permissions
7963 else:
7964 message "{@prefix} {@maincolour}Error: Group not specified"
7965 else:
7966 message "{@prefix} {@maincolour}Error: Type not specified"
7967 else if arg 3 is "l" or "list":
7968 if arg 4 is "p", "permission" or "permissions":
7969 message "{@prefix} {@maincolour}%{skperms::group::%arg 2%::permissions::*}%"
7970 else:
7971 message "{@prefix} {@maincolour}Error: Type not specified"
7972 else if arg 3 is "prefix" or "suffix":
7973 if arg 4 is "set":
7974 if arg 5 is set:
7975 set {skperms::group::%arg 2%::%arg 3%} to arg 5
7976 message "{@prefix} {@maincolour}%arg 3% set to %arg 5%"
7977 if {@UseChat} is true:
7978 if {@ChatType} is "Display" or "display":
7979 loop all players:
7980 if {skperms::player::%player%::groups::*} contains arg 5:
7981 if {skperms::group::%arg 5%::prefix} is set:
7982 if {skperms::group::%arg 5%::suffix} is set:
7983 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7984 else:
7985 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7986 else if {skperms::group::%arg 5%::suffix} is set:
7987 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7988 else:
7989 set loop-player's display name to "%player%"
7990 loop all players:
7991 if {skperms::player::%player%::groups::*} is not set:
7992 set loop-player's display name to "%player%"
7993 else:
7994 message "{@prefix} {@maincolour}Prefix/Suffix not specified"
7995 else:
7996 message "{@prefix} {@maincolour}Error: Type not specified (Type ""set"")"
7997#on quit:
7998# set {skperms::player::%player%::permissions::*} to player's permissions
7999
8000on join:
8001 loop 2 times:
8002 remove "%player%" from {skperms::players::*}
8003 add "%player%" to {skperms::players::*}
8004 loop {skperms::groups::*}:
8005 if player has permission "skperms.group.%loop-value%":
8006 if {skperms::player::%player%::groups::*} doesn't contain "%loop-value%":
8007 add "%loop-value%" to {skperms::player::%player%::groups::*}
8008 if {skperms::default} is set:
8009 loop {skperms::group::%{skperms::default}%::permissions::*}:
8010 add "%loop-value%" to player's permissions
8011 loop {skperms::player::%player%::permissions::*}:
8012 add "%loop-value%" to player's permissions
8013 if {skperms::player::%player%::groups::*} is not empty:
8014 loop {skperms::player::%player%::groups::*}:
8015 loop {skperms::group::%loop-value%::permissions::*}:
8016 add "%loop-value-2%" to player's permissions
8017 if {@UseChat} is true:
8018 if {@ChatType} is "Display" or "display":
8019 if {skperms::group::%loop-index%::prefix} is set:
8020 if {skperms::group::%loop-index%::suffix} is set:
8021 set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%%{skperms::group::%loop-index%::suffix}%"
8022 else:
8023 set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%"
8024 else if {skperms::group::%loop-index%::suffix} is set:
8025 set player's display name to coloured "%player%%{skperms::group::%loop-index%::suffix}%"
8026 else:
8027 set player's display name to "%player%"
8028 loop all players:
8029 if {skperms::player::%player%::groups::*} is not set:
8030 set loop-player's display name to "%player%"
8031
8032on load:
8033 set {_time} to difference between {mineplex.starttime} and now
8034 broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7has been loaded! (%{_time}%)"