· 8 years ago · Apr 24, 2018, 03:44 AM
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.0
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 update "UPDATE `accounts` SET `%{_f}%` = '%{_v}%' WHERE uuid = '%{_uuid}%'"
498 return true
499 set {_s} to getPlayerdata({_p}, "shards")
500 set {_g} to getPlayerdata({_p}, "gems")
501 broadcast "shard: %{_s}% -gem: %{_g}%"
502 playerdata({_p})
503
504function addShards(p: offline player , a: number) :: boolean:
505 set {_uuid} to uuid of {_p}
506 if {mineplex.mode} is "file":
507 set {_get} to getPlayerdata({_p}, "shards")
508 set {_cur} to {_get} parsed as a number
509 add {_a} to {_cur}
510 setPlayerdata({_p}, "shards", "%{_cur}%")
511 else if {mineplex.mode} is "sql":
512 set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
513 add {_a} to {_get}
514 setPlayerdata({_p}, "shards", "%{_get}%")
515
516function delShards(p: offline player , a: number) :: boolean:
517 set {_uuid} to uuid of {_p}
518 if {mineplex.mode} is "file":
519 set {_get} to getPlayerdata({_p}, "shards")
520 set {_cur} to {_get} parsed as a number
521 remove {_a} from {_cur}
522 setPlayerdata({_p}, "shards", "%{_cur}%")
523 else if {mineplex.mode} is "sql":
524 set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
525 remove {_a} from {_get}
526 setPlayerdata({_p}, "shards", "%{_get}%")
527
528function addGems(p: offline player , a: number) :: boolean:
529 set {_uuid} to uuid of {_p}
530 if {mineplex.mode} is "file":
531 set {_get} to getPlayerdata({_p}, "gems")
532 set {_cur} to {_get} parsed as a number
533 add {_a} to {_cur}
534 setPlayerdata({_p}, "gems", "%{_cur}%")
535 else if {mineplex.mode} is "sql":
536 set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
537 add {_a} to {_get}
538 setPlayerdata({_p}, "gems", "%{_get}%")
539
540function delGems(p: offline player , a: number) :: boolean:
541 set {_uuid} to uuid of {_p}
542 if {mineplex.mode} is "file":
543 set {_get} to getPlayerdata({_p}, "gems")
544 set {_cur} to {_get} parsed as a number
545 remove {_a} from {_cur}
546 setPlayerdata({_p}, "gems", "%{_cur}%")
547 else if {mineplex.mode} is "sql":
548 set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
549 remove {_a} from {_get}
550 setPlayerdata({_p}, "gems", "%{_get}%")
551
552on quit:
553 delete {mineplex.rank.%player%}
554 delete {mineplex.level.%player%}
555 delete {mineplex.gems.%player%}
556 delete {mineplex.shards.%player%}
557 delete {banned::%player%}
558 delete {muted::%player%}
559
560on connect:
561 set {_uuid} to uuid of {_p}
562 playerdata(player)
563 send "§9MCR> §e%player% (%uuid of player%) has been loaded from playerdata!" to the console
564
565function Beam(e1: entity , e2: entity):
566 spawn a squid at location 0 meter behind {_e1}'s head
567 set {_el} to last spawned entity
568 set target of {_el} to {_e2}
569 apply invisibility to the last spawned entity
570 add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1, NoAI:1}" to nbt of last spawned entity
571 set {_targLoc} to location of {_e2}
572
573 loop 100 times:
574 teleport {_el} to location 0 meter behind {_e1}'s head
575 set target of {_el} to {_e2}
576 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el}
577 if "%{_e2}'s name%" is "BeamCow":
578 teleport {_e2} to {_targLoc}
579 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2}
580 wait 1 tick
581
582 create a safe explosion with force 2 at {_e1}
583 loop entities in radius 3 of {_e2}:
584 make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_e2}))
585 teleport {_el} 300 blocks below {_el}
586 teleport {_e2} 300 blocks below {_e2}
587 kill {_el}
588 kill {_e2}
589
590function ClientBeam(e1: entity , e3: entity , e2: entity):
591 spawn a cow at location of {_e2}
592 set {_c} to last spawned entity
593 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
594 spawn a guardian at location 1 meter behind {_e1}'s head
595 set {_el} to last spawned entity
596 set target of {_el} to {_e2}
597 loop all players:
598 protocol hide {_e1} from loop-player
599 protocol hide {_e2} from loop-player
600 protocol show {_e1} to {_e3}
601 protocol show {_e2} to {_e3}
602 apply invisibility to {_c}
603 apply invisibility to the last spawned entity
604 add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1}" to nbt of last spawned entity
605 set {_targLoc} to location of {_e2}
606
607 loop 100 times:
608 teleport {_el} to location 1 meter behind {_e1}'s head
609 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el}
610 if "%{_e2}'s name%" is "BeamCow":
611 teleport {_e2} to {_targLoc}
612 add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2}
613 wait 1 tick
614
615 create a safe explosion with force 2 at {_e2}
616 loop entities in radius 3 of {_c}:
617 make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_c}))
618 teleport {_el} 300 blocks below {_el}
619 teleport {_e2} 300 blocks below {_e2}
620 kill {_el}
621 kill {_c}
622
623function configRefresh(n: number) :: number:
624 set {mineplex.config.config} to value "config" get of "plugins/Mineplex-Core-Remake/config.yml"
625 set {mineplex.config.servername} to value "servername" get of "plugins/Mineplex-Core-Remake/config.yml"
626 set {mineplex.config.website} to value "website" get of "plugins/Mineplex-Core-Remake/config.yml"
627 set {mineplex.config.appealwebsite} to value "appealwebsite" get of "plugins/Mineplex-Core-Remake/config.yml"
628 set {mineplex.config.ruleswebsite} to value "ruleswebsite" get of "plugins/Mineplex-Core-Remake/config.yml"
629 set {mineplex.config.youtube} to value "youtube" get of "plugins/Mineplex-Core-Remake/config.yml"
630 set {mineplex.config.twitter} to value "twitter" get of "plugins/Mineplex-Core-Remake/config.yml"
631 set {mineplex.config.shoplink} to value "shoplink" get of "plugins/Mineplex-Core-Remake/config.yml"
632 set {mineplex.config.world} to value "worldname" get of "plugins/Mineplex-Core-Remake/config.yml"
633 set {mineplex.config.doublejump} to value "doublejump" get of "plugins/Mineplex-Core-Remake/config.yml"
634 set {mineplex.config.autoop} to value "autoop" get of "plugins/Mineplex-Core-Remake/config.yml"
635 set {mineplex.config.unbanadmin} to value "unbanadmin" get of "plugins/Mineplex-Core-Remake/config.yml"
636
637function configPopulate(n: number) :: number:
638 create file "plugins/Mineplex-Core-Remake/config.yml"
639 set "config" to "{@configver}" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
640 set "servername" to "Mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
641 set "website" to "www.mineplex.com" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
642 set "appealwebsite" to "www.mineplex.com/appeals" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
643 set "ruleswebsite" to "www.mineplex.com/rules" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
644 set "youtube" to "http://youtube.com/mineplexgamesofficial" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
645 set "twitter" to "http://twitter.com/mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
646 set "shoplink" to "www.mineplex.com/shop" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
647 set "worldname" to "world" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
648 set "doublejump" to "true" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
649 set "autoop" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
650 set "unbanadmin" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
651
652function updateRankAPI(p: player) :: player:
653 wait 5 ticks
654 if {mineplex.rank.%{_p}%} is not set:
655 set {mineplex.rank.%{_p}%} to ""
656 if {mineplex.disguise.%{_p}%} is set:
657 set {_br} to uncolored {mineplex.rank.%{_p}%}
658 set {_dr} to uncolored {mineplex.rank.%{mineplex.disguise.%{_p}%}%}
659 if {mineplex.rank.%{mineplex.disguise.%{_p}%}%} is set:
660 make all players see {_p}'s prefix as "%{mineplex.rank.%{mineplex.disguise.%{_p}%}%}%&r&e"
661 else:
662 make all players see {_p}'s prefix as "&e"
663 set {_br} to convert string "%{_br}%" to lowercase
664 set {_br} to 1st char in each word of "%{_br}%" to caps
665 set {_dr} to convert string "%{_dr}%" to lowercase
666 set {_dr} to 1st char in each word of "%{_dr}%" to caps
667 replace all " " in {_br} with ""
668 replace all " " in {_dr} with ""
669 if {_dr} is "":
670 set {_dr} to "No Rank"
671 if {_br} contains "mod":
672 replace all "mod" with "Mod" in {_br}
673 if {_dr} contains "mod":
674 replace all "mod" with "Mod" in {_dr}
675 if {_br} contains "dev":
676 replace all "dev" with "Dev" in {_br}
677 if {_dr} contains "dev":
678 replace all "dev" with "Dev" in {_dr}
679 if {_dr} contains "lead":
680 replace all "lead" with "Lead" in {_dr}
681 if {_br} contains "lead":
682 replace all "lead" with "Lead" in {_br}
683 if {_br} is "":
684 set {_br} to "No Rank"
685 if {_br} contains "mod":
686 replace all "mod" with "Mod" in {_br}
687 if {_br} contains "dev":
688 replace all "dev" with "Dev" in {_br}
689 if {_br} contains "mod":
690 replace all "mod" with "Mod" in {_br}
691 if {_br} contains "tube":
692 replace all "tube" with "Tube" in {_br}
693 loop {mineplex.patreon::*}:
694 if loop-value is "%{_p}%":
695 set {_br} to "P.%{_br}%"
696 set {mineplex.api.displayrank.%{_p}%} to "%{_dr}% (%{_br}%)"
697 set {mineplex.api.displayname.%{_p}%} to "%{mineplex.disguise.%{_p}%}%"
698 else:
699 set {_br} to uncolored {mineplex.rank.%{_p}%}
700 if {mineplex.rank.%{_p}%} is set:
701 make all players see {_p}'s prefix as "%{mineplex.rank.%{_p}%}%&r&e"
702 else:
703 make all players see {_p}'s prefix as "&e"
704 set {_br} to convert string "%{_br}%" to lowercase
705 set {_br} to 1st char in each word of "%{_br}%" to caps
706 if {_br} is "":
707 set {_br} to "No Rank"
708 if {_br} contains "mod":
709 replace all "mod" with "Mod" in {_br}
710 if {_br} contains "dev":
711 replace all "dev" with "Dev" in {_br}
712 if {_br} contains "mod":
713 replace all "mod" with "Mod" in {_br}
714 if {_br} contains "tube":
715 replace all "tube" with "Tube" in {_br}
716 if {_br} contains "lead":
717 replace all "lead" with "Lead" in {_br}
718 if {_br} contains "dev":
719 replace all "dev" with "Dev" in {_br}
720 loop {mineplex.patreon::*}:
721 if loop-value is "%{_p}%":
722 set {_br} to "P.%{_br}%"
723 set {mineplex.api.displayrank.%{_p}%} to "%{_br}%"
724 set {mineplex.api.displayname.%{_p}%} to "%{_p}%"
725
726function mcs(p: player , m: text) :: number:
727 if {mineplex.overridechat} is true:
728 if {mineplex.disguise.%{_p}%} is set:
729 set {_player} to {mineplex.disguise.%{_p}%}
730 else:
731 set {_player} to {_p}
732 set {_prerank} to getPlayerdata({_player}, "rank")
733 set {_rank} to parseRankRaw({_prerank})
734 if {_rank} is not set:
735 set {_rank} to ""
736 if {_rank} is "null":
737 set {_rank} to ""
738 if {mineplex.level.%{_player}%} is not set:
739 set {mineplex.level.%{_player}%} to "&70"
740 replace all " fuck " with " **** " in {_m}
741 replace all " bitch " with " ***** " in {_m}
742 replace all " ass " with " *** " in {_m}
743 replace all " nigger " with " *** " in {_m}
744 replace all " cunt " with " *** " in {_m}
745 replace all " f|_|ck " with " ****** " in {_m}
746 replace all " shit " with " **** " in {_m}
747 if {_m} is {mineplex.lastsent.%{_p}%}:
748 if {_p} does not have permission "mineplex.mod":
749 send "&9Chat> &7This message is too similar to your previous message." to {_p}
750 return -1
751 stop
752 if {mineplex.authlock.%{_p}%} is true:
753 return -1
754 stop
755 set {mineplex.lastsent.%{_p}%} to {_m}
756 loop all players:
757 if {mineplex.pref.pc.%loop-player%} is true:
758 if {mineplex.rank.%{_player}%} is set:
759 set {_lvl} to {mineplex.level.%{_player}%}
760 if {_player} is "WheezyGold7931":
761 set {_lvl} to "&c101"
762 loop {mineplex.ignorelist.%loop-player%::*}:
763 if loop-value-2 is "%{_player}%":
764 set {_ignore.%loop-player-1%} to true
765 if {_ignore.%loop-player-1%} is not set:
766 if {mineplex.rank.%{_player}%} is not "":
767 set {_sanitizedm} to uncolored {_m}
768 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
769 if loop-value-2 is {_player}:
770 set {_brank} to uncolored {mineplex.rank.%{_player}%}
771 set {_rank} to "&6&lP.%{_brank}%"
772 else:
773 set {_rank} to {mineplex.rank.%{_player}%}
774 mcrjson("%loop-player%", "%{_lvl}%|| %{_rank}%||ttp:%{mineplex.hover.%{_player}%}%||&e%{_player}% &f%{_sanitizedm}%", false)
775 else:
776 send "%{_lvl}% %{mineplex.rank.%{_player}%}%&e%{_player}% &f%{_m}%" to loop-player
777 return -1
778 else:
779 stop
780
781function caseSensitive(source: String, compareTo: String) :: boolean:
782 if size of split {_source} at {_compareTo} is 2:
783 return true
784 else: #Hi Snow
785 return false
786
787function gwenAlert(p: player , r: text) :: number:
788 if {mineplex.disguise.%{_p}%} is set:
789 set {_player} to {mineplex.disguise.%{_p}%}
790 else:
791 set {_player} to {_p}
792 loop all players:
793 if loop-player has permission "mineplex.trainee":
794 if {mineplex.pref.gwen.%loop-player%} is true:
795 send "&b&kK&r &c&lGWEN > &6%{_player}% &esuspected of &a%{_r}%&e." to loop-player
796
797#Config Loading
798
799on script unload:
800 broadcast "&9MCR> &7Mineplex Core is recompiling!"
801
802on load:
803 if file "plugins/Mineplex-Core-Remake/config.yml" doesn't exists:
804 configPopulate(1)
805# set {mineplex.config.servername} to colored value "servername" get of "plugins/Mineplex-Core-Remake/config.yml"
806 configRefresh(1)
807 wait 1 second
808 if {mineplex.config.config} is "{@configver}":
809 broadcast "&9MCR> &7Config &e{@configver} &7is up to date!"
810 else:
811 broadcast "&9Mineplex Core> &7Your Config is not up to Date! Updating this shit for you!"
812 configPopulate(1)
813 broadcast "&9Mineplex Core> &7Config Re-Populated!"
814 broadcast "&9Mineplex Core> &7Going to reload plugin now!"
815 broadcast "&9Mineplex Core> &7Going to reload plugin now!"
816 wait 1 second
817 configRefresh(1)
818 broadcast "&9Mineplex Core> &7Config Done!"
819 if {mineplex.usescoreboard} is not set:
820 set {mineplex.usescoreboard} to true
821
822#Main Command/Toggles
823command /mineplex-core [<string>] [<string>] [<string>]:
824 aliases: /mpcore
825 permission: op
826 permission message: &9Permissions> &7You do not have permission to do that.
827 trigger:
828 if arg-1 is not set:
829 send "&a"
830 send "&9Core Settings> &7Listing Commands:"
831 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
832 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
833 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
834 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
835 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
836 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"
837 send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
838 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
839 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
840 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
841 send "&a"
842 else if arg-1 is set:
843 if arg-1 is "help":
844 send "&a"
845 send "&9Core Settings> &7Listing Commands:"
846 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
847 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
848 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
849 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
850 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
851 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"
852 send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
853 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
854 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
855 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
856 send "&a"
857 else if arg-1 is "Chat":
858 if arg-2 is not set:
859 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
860 else if arg-2 is set:
861 if arg-2 is "true":
862 set {mineplex.overridechat} to true
863 send "&9Core Settings> &7Now using the Mineplex Chat System (MCS)."
864 else if arg-2 is "false":
865 set {mineplex.overridechat} to false
866 send "&9Core Settings> &7No longer using the Mineplex Chat System (MCS)."
867 else:
868 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
869 else:
870 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
871 else if arg-1 is "Scoreboard":
872 if arg-2 is not set:
873 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
874 else if arg-2 is set:
875 if arg-2 is "true":
876 set {mineplex.usescoreboard} to true
877 send "&9Core Settings> &7Now using the Mineplex Scoreboard System."
878 else if arg-2 is "false":
879 set {mineplex.usescoreboard} to false
880 send "&9Core Settings> &7No longer using the Mineplex Scoreboard System."
881 else:
882 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
883 else:
884 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
885 else if arg-1 is "ForcefieldOff":
886 if arg-2 is not set:
887 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
888 else:
889 delete {mineplex.pref.ff.%arg-2%}
890 delete {mineplex.ff.list::%arg-2%}
891 send "&9MCR> &7Done!"
892 else if arg-1 is "News":
893 if arg-2 is not set:
894 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
895 else if arg-2 is set:
896 if arg-2 is "true":
897 set {mineplex.news.allow} to true
898 send "&9Core Settings> &7Now using the Mineplex News System."
899 else if arg-2 is "false":
900 set {mineplex.news.allow} to false
901 send "&9Core Settings> &7No longer using the Mineplex News System."
902 else:
903 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
904 else:
905 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
906 else if arg-1 is "TNT":
907 if arg-2 is not set:
908 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
909 else if arg-2 is set:
910 if arg-2 is "true":
911 set {mineplex.tntlauncher} to true
912 send "&9Core Settings> &7Now using the Throwing TNT Mechanics."
913 else if arg-2 is "false":
914 set {mineplex.tntlauncher} to false
915 send "&9Core Settings> &7No longer using the Throwing TNT Mechanics."
916 else:
917 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
918 else:
919 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
920 else if arg-1 is "purgehistory":
921 if arg 2 is not set:
922 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
923 else:
924 send "&9MCR> &7Purged %arg-2%'s history"
925 delete {p.%arg-2%::*}
926 delete {punishgui.%arg-2%::*}
927 delete {reversed.p.%arg-2%::history::*}
928 delete {reversed.p.%arg-2%::*}
929 else if arg-1 is "reload":
930 configRefresh(1)
931 send "&9Core Settings> &7The main configuration file has been refreshed."
932 else if arg-1 is "Carl":
933 spawn 1 creeper at location of player
934 set {_carl} to spawned creeper
935 set name of last spawned entity to "&a&lCarl the Creeper"
936 add "{NoAI:1b}" to nbt of {_carl}
937 add "{powered:1}" to nbt of {_carl}
938 apply slowness 255 to last spawned entity for 999 days
939 set {kitnpc} to location of player
940 send "&9Core Settings> &7Carl has been spawned in a fixed position at your current location."
941 else if arg-1 is "admin":
942 if arg-2 is set:
943 set {mineplex.rank.%arg-2%} to "&4&lADMIN "
944 set {_mineplex.setadmin.temp} to "%arg-2%" parsed as player
945 execute console command "/__mp__dp__ %arg-2%"
946 add "mineplex.trainee" to {_mineplex.setadmin.temp}'s permissions
947 add "mineplex.mod" to {_mineplex.setadmin.temp}'s permissions
948 add "mineplex.srmod" to {_mineplex.setadmin.temp}'s permissions
949 add "mineplex.admin" to {_mineplex.setadmin.temp}'s permissions
950 add "mineplex.legend" to {_mineplex.setadmin.temp}'s permissions
951 add "mineplex.builder" to {_mineplex.setadmin.temp}'s permissions
952 updateRankAPI({_mineplex.setadmin.temp})
953 send "&9Core Settings> &7Temporarily added Admin permissions to %arg-2%."
954 else:
955 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
956 else if arg-1 is "TreasurePoint":
957 if arg-2 is "1" or "2" or "3" or "4":
958 set {mineplex.chestpoint.%arg-2%} to target block
959 send "&9Core Settings> &7Treasure Point %arg-2% has been set to your targeted block."
960 else:
961 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
962 else if arg-1 is "TreasurePointSub":
963 if arg-2 is "1" or "2" or "3" or "4":
964 if arg-3 is "1" or "2" or "3" or "4" or "5" or "6" or "7" or "8":
965 set {mineplex.chestpoint.%arg-2%.sub.%arg-3%} to target block
966 send "&9Core Settings> &7Treasure Point Sub %arg-3% of Treasure Point %arg-2% has been set to your targeted block."
967 else:
968 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"
969 else:
970 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"
971 else:
972 send "&a"
973 send "&9Core Settings> &7Listing Commands:"
974 send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
975 send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
976 send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
977 send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
978 send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
979 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"
980 send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
981 send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
982 send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
983 send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
984 send "&a"
985
986command /help [<string>]:
987 trigger:
988 send "&9MCR> &7Please see &bhttps://github.com/WheezyGold7931/Mineplex-Core/wiki/Commands-and-Permissions &7for updated commands!"
989
990command /recompile [<string>]:
991 aliases: /rec
992 permission: op
993 permission message: &9Permissions> &7You do not have permission to do that.
994 trigger:
995 if arg 1 is not set:
996 broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7will be recompiling in two seconds."
997 wait 2 second
998 player command "/sk reload Mineplex"
999 else:
1000 if arg 1 is "-s":
1001 broadcast "&9MCR> &7Mineplex Core will be recompiling in two seconds. (Silent)"
1002 execute console command "/sk reload Mineplex"
1003
1004#Thanks XeXRainnn
1005
1006on quit:
1007 delete {mineplex.%player%.notice}
1008
1009command /bugreport [<string>]:
1010 trigger:
1011 if arg 1 is not set:
1012 send "&9MCR> &7Commands List:"
1013 send "&f/bugreport <bug> &7Reports a bug to the MCR Developers &fPlayer"
1014 else:
1015 if {mineplex.%player%.notice} is not set:
1016 send "&9MCR> &7Abuse of this system will result in a blacklist of this feature! If you are sure about reporting this, repeat the command."
1017 set {mineplex.%player%.notice} to true
1018 stop
1019 set {_pl} to "%list of plugins%"
1020 replace all " and " with ",+" in {_pl}
1021 replace all " " with "" in {_pl}
1022 replace all ", " with ",++" in {_pl}
1023 set {_ra} to arg-1
1024 replace all "`" with "" in {_ra}
1025 replace all "*" with "" in {_ra}
1026 replace all " " with "%%20" in {_ra}
1027 set {_mc} to minecraft version
1028 set {_sk} to skript version
1029 set {_bk} to bukkit version
1030 set {_mcr} to "{@MCRVER}"
1031 set {_url} to uncolored "http://mpcore.us/mcr/bugreport.php?plugins=%{_pl}%&&rmcver=%{_mc}%&&rskver=%{_sk}%&&rbukkit=%{_bk}%&&rplayer=%player%&&rbug=%{_ra}%&&rmcrver=%{_mcr}%"
1032 $ thread
1033 set {_response::*} to contents from url {_url}
1034 send "&9MCR> &7Please Wait!"
1035 wait 5 seconds
1036 if {_response::1} is "600":
1037 send "&9MCR> &7Bug Report was &eSuccessful&7!"
1038 else if {_response::1} contains "602":
1039 set {_thing} to {_response::1}
1040 replace all "602 " with "" in {_thing}
1041 send "&9MCR> &7Bug Report was marked as &eInvalid&7!"
1042 send "&9MCR> &7Bug Report returned the error: &e%{_thing}%&7!"
1043 else if {_response::1} contains "603":
1044 set {_thing} to {_response::1}
1045 replace all "603 " with "" in {_thing}
1046 send "&9MCR> &c&lYou are blacklisted from the bug report system!"
1047 send "&9MCR> &7&lReason: &7%{_thing}%"
1048 else if {_response::1} contains "604":
1049 set {_thing} to {_response::1}
1050 replace all "604 " with "" in {_thing}
1051 send "&9MCR> &7Bug Report returned a diffrent response: &e%{_thing}%"
1052 else if {_response::1} is not set:
1053 send "&9MCR> &7The bug report was malformed and we did not get a response!"
1054
1055command /rules:
1056 trigger:
1057 send "&9Rules> &7The rules can be found here: &a%{mineplex.config.ruleswebsite}%"
1058
1059#CarlBae
1060
1061on load:
1062 if {poll.id.last} is not set:
1063 set {poll.id.last} to 0
1064
1065on join:
1066 set {_player} to "%player%"
1067 replace all "s" in {_player} with "sssss"
1068 send "&2&lCarl the Creeper> &aHey %{_player}%! I have sssome amazing rewardsss for you! Come sssee me!"
1069 if {spintickets.%player%} is not set:
1070 set {spintickets.%player%} to 0
1071 if {mineplex.polltaken.0.%player%} is not set:
1072 set {mineplex.polltaken.0.%player%} to true
1073 if {mineplex.thankrewards.%player%} is not set:
1074 set {mineplex.thankrewards.%player%} to 0
1075
1076command /thank [<offline player>]:
1077 trigger:
1078 if arg 1 is set:
1079 if arg 1 is player:
1080 send "&9Thank> &7You cannot thank yourself!"
1081 else:
1082 if arg 1 is online:
1083 if {mineplex.thank.last.%player%} is not set:
1084 set {_good} to true
1085 else:
1086 set {_t} to difference between {mineplex.thank.last.%player%} and now
1087 set {_tc} to "24 hours" parsed as a timespan
1088 if {_t} is more than {_tc}:
1089 set {_good} to true
1090 if {_good} is true:
1091 send "&9Thank> &7You thanked &e%arg-1% &7and earned &b5 Treasure Shards&7!"
1092 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
1093 addShards(player, 5)
1094 add 5 to {mineplex.thankrewards.%arg-1%}
1095 set {mineplex.thank.last.%player%} to now
1096 else:
1097 send "&9Thank> &7You can only /thank once per day!"
1098 stop
1099 else:
1100 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
1101 else:
1102 send "&9Thank> &7Usage: &e/thank <player>"
1103
1104function carlSpin(p: player) :: number:
1105 if {spintickets.%{_p}%} >= 1:
1106 remove 1 from {spintickets.%{_p}%}
1107 wait 5 ticks
1108 open chest with 3 rows named "Carl's Spinner" to {_p}
1109 set {opener.%{_p}%} to true
1110 loop 30 times:
1111 inventory name of {_p}'s current inventory is "Carl's Spinner"
1112 play "NOTE_PLING" to {_p} at volume 0.5
1113 format slot 0 of {_p} with white stained glass pane to be unstealable
1114 format slot 1 of {_p} with white glass to be unstealable
1115 format slot 2 of {_p} with white glass to be unstealable
1116 format slot 3 of {_p} with white glass to be unstealable
1117 format slot 4 of {_p} with hopper to be unstealable
1118 format slot 5 of {_p} with white glass to be unstealable
1119 format slot 6 of {_p} with white glass to be unstealable
1120 format slot 7 of {_p} with white glass to be unstealable
1121 format slot 8 of {_p} with white stained glass pane to be unstealable
1122 set {_randomint1.%{_p}%} to random integer between 95 and 375
1123 format slot 9 of {_p} with prismarine shard named "&b%{_randomint1.%{_p}%}% Shards" to be unstealable
1124 format slot 8 of {_p} with white stained glass pane to be unstealable
1125 set {_randomint2.%{_p}%} to random integer between 95 and 375
1126 format slot 10 of {_p} with prismarine shard named "&b%{_randomint2.%{_p}%}% Shards" to be unstealable
1127 format slot 8 of {_p} with white stained glass pane to be unstealable
1128 set {_randomint3.%{_p}%} to random integer between 95 and 375
1129 format slot 11 of {_p} with prismarine shard named "&b%{_randomint3.%{_p}%}% Shards" to be unstealable
1130 format slot 8 of {_p} with white stained glass pane to be unstealable
1131 set {_randomint4.%{_p}%} to random integer between 95 and 375
1132 format slot 12 of {_p} with prismarine shard named "&b%{_randomint4.%{_p}%}% Shards" to be unstealable
1133 format slot 8 of {_p} with white stained glass pane to be unstealable
1134 set {_randomint5.%{_p}%} to random integer between 95 and 375
1135 format slot 13 of {_p} with prismarine shard named "&b%{_randomint5.%{_p}%}% Shards" to be unstealable
1136 format slot 8 of {_p} with white stained glass pane to be unstealable
1137 set {_randomint6.%{_p}%} to random integer between 95 and 375
1138 format slot 14 of {_p} with prismarine shard named "&b%{_randomint6.%{_p}%}% Shards" to be unstealable
1139 format slot 8 of {_p} with white stained glass pane to be unstealable
1140 set {_randomint7.%{_p}%} to random integer between 95 and 375
1141 format slot 15 of {_p} with prismarine shard named "&b%{_randomint7.%{_p}%}% Shards" to be unstealable
1142 format slot 8 of {_p} with white stained glass pane to be unstealable
1143 set {_randomint8.%{_p}%} to random integer between 95 and 375
1144 format slot 16 of {_p} with prismarine shard named "&b%{_randomint8.%{_p}%}% Shards" to be unstealable
1145 format slot 8 of {_p} with white stained glass pane to be unstealable
1146 set {_randomint9.%{_p}%} to random integer between 95 and 375
1147 format slot 17 of {_p} with prismarine shard named "&b%{_randomint9.%{_p}%}% Shards" to be unstealable
1148 format slot 18 of {_p} with white stained glass pane to be unstealable
1149 format slot 19 of {_p} with white glass to be unstealable
1150 format slot 20 of {_p} with white glass to be unstealable
1151 format slot 21 of {_p} with white glass to be unstealable
1152 format slot 22 of {_p} with white glass to be unstealable
1153 format slot 23 of {_p} with white glass to be unstealable
1154 format slot 24 of {_p} with white glass to be unstealable
1155 format slot 25 of {_p} with white glass to be unstealable
1156 format slot 26 of {_p} with white stained glass pane to be unstealable
1157 delete {_randomint1.%{_p}%}
1158 delete {_randomint2.%{_p}%}
1159 delete {_randomint3.%{_p}%}
1160 delete {_randomint4.%{_p}%}
1161 delete {_randomint6.%{_p}%}
1162 delete {_randomint7.%{_p}%}
1163 delete {_randomint8.%{_p}%}
1164 delete {_randomint9.%{_p}%}
1165 wait 0.2 seconds
1166 send "&9Carl> &7You won &b%{_randomint5.%{_p}%}% Shards!" to {_p}
1167 addShards({_p}, {_randomint5.%{_p}%})
1168 wait 3 ticks
1169 delete {_randomint5.%{_p}%}
1170 delete {opener.%{_p}%}
1171 wait 1 second
1172 close {_p}'s inventory
1173 else:
1174 send "&9Carl's Spinner> &7You don't have a Carl Spinner Ticket!" to {_p}
1175
1176function ytlink(p: player) :: number:
1177 set {_t} to difference between {carl.ytr.%{_p}%} and now
1178 set {_tc} to "1 day" parsed as a timespan
1179 if {_t} is less than {_tc}:
1180 message "&6&m=====================================" to {_p}
1181 message "&b &f" to {_p}
1182 message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p}
1183 message " &a%{mineplex.config.youtube}%" to {_p}
1184 message "&b &f" to {_p}
1185 message "&6&m=====================================" to {_p}
1186 stop
1187 else:
1188 set {carl.ytr.%{_p}%} to now
1189 addShards({_p}, 250)
1190 message "&6&m=====================================" to {_p}
1191 message "&b &f" to {_p}
1192 message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p}
1193 message " &a%{mineplex.config.youtube}%" to {_p}
1194 message "&b &f" to {_p}
1195 message "&6&m=====================================" to {_p}
1196 wait 60 seconds
1197 message "&9Carl> &7Rewarded 250 Shards for watching the YouTube Video" to {_p}
1198
1199function tlink(p: player) :: number:
1200 message "&6&m=====================================" to {_p}
1201 message "&b &f" to {_p}
1202 message " &f&lClick to Open in Web Browser" to {_p}
1203 message " &a%{mineplex.config.twitter}%" to {_p}
1204 message "&b &f" to {_p}
1205 message "&6&m=====================================" to {_p}
1206
1207function dailyr(p: player) :: number:
1208 set {_t} to difference between {carl.dr.%{_p}%} and now
1209 set {_tc} to "20 hours" parsed as a timespan
1210 if {_t} is less than {_tc}:
1211 message "&9Carl> &7Come back in another 24 hours." to {_p}
1212 stop
1213 else:
1214 message "&9Carl> &7Rewarded &e100 Treasure Shards" to {_p}
1215 message "&9Carl> &7Rewarded &e100 Gems" to {_p}
1216 message "&9Carl> &7Rewarded &e250 Experience" to {_p}
1217 set {carl.dr.%{_p}%} to now
1218 addShards({_p}, 100)
1219 addGems({_p}, 100)
1220 set {_cur} to getPlayerdata({_p}, "stats.global.dailyr") parsed as a number
1221 add 1 to {_cur}
1222 setPlayerdata({_p}, "stats.global.dailyr", "%{_cur}%")
1223
1224function rawVote(p: player , v: number) :: number:
1225 add 1 to {mineplex.poll.results.%{_v}%.%{poll.id.last}%}
1226 set {mineplex.polltaken.%{poll.id.last}%.%{_p}%} to true
1227 addGems({_p}, {mineplex.poll.gems.%{poll.id.last}%})
1228 message "&9Carl> &7Rewarded &a%{mineplex.poll.gems.%{poll.id.last}%}% Gems&7." to {_p}
1229
1230function pollVote(p: player) :: number:
1231 open chest with 6 rows named "Poll:" to {_p}
1232 wait 2 ticks
1233 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
1234 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)]
1235 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)]
1236 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)]
1237 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)]
1238
1239function claimThank(p: player) :: number:
1240 set {_am} to {mineplex.thankrewards.%{_p}%}
1241 set {_tp} to {_am} / 5
1242 send "&9Carl> &7You collected &b%{_am}% Treasure Shards &7from &e%{_tp}% &7players!" to {_p}
1243 set {mineplex.thankrewards.%{_p}%} to 0
1244 set {_get} to getPlayerdata({_p}, "shards")
1245 set {_cur} to {_get} parsed as a number
1246 add {_am} to {_cur}
1247 setPlayerdata({_p}, "shards", "%{_cur}%")
1248
1249#Dank as all heck
1250function carlGUI(p: player) :: number:
1251 open chest with 6 rows named "%{_p}%'s Bonuses" to {_p}
1252 wait 2 ticks
1253 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
1254 set {_t} to difference between {carl.dr.%{_p}%} and now
1255 set {_tc} to "20 hours" parsed as a timespan
1256 set {_mc} to {_tc} - {_t}
1257 set {_st} to "%{_t}%"
1258 set {_args::*} to {_st} split at " "
1259 set {_num1} to "%{_args::1}%" parsed as an int
1260 set {_num2} to 1200
1261 set {_num3} to {_num2} - {_num1}
1262 set {_hourconvert} to {_num3} / 60
1263 set {_finalwait} to "%{_hourconvert}% hours"
1264 if {_t} is less than {_tc}:
1265 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
1266 else:
1267 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})]
1268 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%{spintickets.%{_p}%}%" to close then run [carlSpin({_p})]
1269 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
1270 format slot 20 of {_p} with water bucket named "&e&lVisit us on Facebook" with lore "||&eRewards|| &f10 Ancient Chest" to close
1271 set {_t} to difference between {carl.ytr.%{_p}%} and now
1272 set {_tc} to "1 day" parsed as a timespan
1273 if {_t} is less than {_tc}:
1274 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})]
1275 else:
1276 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})]
1277 if {mineplex.polltaken.%{poll.id.last}%.%{_p}%} is set:
1278 format slot 28 of {_p} with redstone block named "&cVote on Poll" with lore "||&fYou voted on all of the polls!" to close
1279 else:
1280 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})]
1281 if {mineplex.thankrewards.%{_p}%} is greater than 0:
1282 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})]
1283 else:
1284 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
1285 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
1286 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})]
1287 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
1288
1289command /poll [<text>] [<text>] [<text>] [<text>] [<text>] [<text>] [<integer>] [<string>]:
1290 permission: mineplex.admin
1291 permission message: &9Permissions> &7You do not have permission to do that.
1292 trigger:
1293 if arg 1 is set:
1294 if arg 1 is "create":
1295 if arg 2 is set:
1296 if arg 3 is set:
1297 if arg 4 is set:
1298 if arg 5 is set:
1299 if arg 6 is set:
1300 if arg 7 is set:
1301 add 1 to {poll.id.last}
1302 send "&9Poll> &7Rolling out poll with id &e%{poll.id.last}%&7!"
1303 wait 1 second
1304 set {_arg1} to arg 2
1305 set {_arg2} to arg 3
1306 set {_arg3} to arg 4
1307 set {_arg4} to arg 5
1308 set {_arg5} to arg 6
1309 set {mineplex.poll.gems.%{poll.id.last}%} to "%arg 7%" parsed as an integer
1310 replace every "_" with " " in {_arg1}
1311 replace every "_" with " " in {_arg2}
1312 replace every "_" with " " in {_arg3}
1313 replace every "_" with " " in {_arg4}
1314 replace every "_" with " " in {_arg5}
1315 broadcast "&9Poll> &7A new poll is available! Vote in Carl!"
1316 wait 0.5 seconds
1317 send "&9Poll> &7The poll has been rolled out successfully!"
1318 set {mineplex.poll.question.%{poll.id.last}%} to {_arg1}
1319 set {mineplex.poll.a1.%{poll.id.last}%} to {_arg2}
1320 set {mineplex.poll.a2.%{poll.id.last}%} to {_arg3}
1321 set {mineplex.poll.a3.%{poll.id.last}%} to {_arg4}
1322 set {mineplex.poll.a4.%{poll.id.last}%} to {_arg5}
1323 set {mineplex.poll.results.1.%{poll.id.last}%} to 0
1324 set {mineplex.poll.results.2.%{poll.id.last}%} to 0
1325 set {mineplex.poll.results.3.%{poll.id.last}%} to 0
1326 set {mineplex.poll.results.4.%{poll.id.last}%} to 0
1327 else:
1328 send "&9Poll> &7Correct Usage:"
1329 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1330 send "&4/poll results [(id)] Admin"
1331 send ""
1332 send "&9Poll> &7Example:"
1333 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111 Admin"
1334 else:
1335 send "&9Poll> &7Correct Usage:"
1336 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1337 send "&4/poll results [(id)] Admin"
1338 send ""
1339 send "&9Poll> &7Example:"
1340 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1341 else:
1342 send "&9Poll> &7Correct Usage:"
1343 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1344 send "&4/poll results [(id)] Admin"
1345 send ""
1346 send "&9Poll> &7Example:"
1347 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1348 else:
1349 send "&9Poll> &7Correct Usage:"
1350 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1351 send "&4/poll results [(id)] Admin"
1352 send ""
1353 send "&9Poll> &7Example:"
1354 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1355 else:
1356 send "&9Poll> &7Correct Usage:"
1357 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1358 send "&4/poll results [(id)] Admin"
1359 send ""
1360 send "&9Poll> &7Example:"
1361 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1362 else:
1363 send "&9Poll> &7Correct Usage:"
1364 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
1365 send "&4/poll results [(id)] Admin"
1366 send ""
1367 send "&9Poll> &7Example:"
1368 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1369 else if arg 1 is "results":
1370 if player has permission "mineplex.admin":
1371 if arg 2 is not set:
1372 open chest with 5 row named "Poll Results" to player
1373 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
1374 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
1375 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
1376 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
1377 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
1378 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
1379 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
1380 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
1381 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
1382 else:
1383 set {_id} to arg-2 parsed as a number
1384 if {_id} is 0:
1385 send "&9Poll> &cInvalid Poll ID!"
1386 stop
1387 if {_id} is greater than {poll.id.last}:
1388 send "&9Poll> &cInvalid Poll ID!"
1389 stop
1390 if {_id} is not set:
1391 send "&9Poll> &cInvalid Poll ID!"
1392 stop
1393 open chest with 5 row named "Poll Results" to player
1394 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
1395 format slot 19 of player with book named "&b&lOption 1" with lore "&eAnswer 1:|| &f%{mineplex.poll.a1.%{_id}%}%" to be unstealable
1396 format slot 21 of player with book named "&b&lOption 2" with lore "&eAnswer 2:|| &f%{mineplex.poll.a2.%{_id}%}%" to be unstealable
1397 format slot 23 of player with book named "&b&lOption 3" with lore "&eAnswer 3:|| &f%{mineplex.poll.a3.%{_id}%}%" to be unstealable
1398 format slot 25 of player with book named "&b&lOption 4" with lore "&eAnswer 4:|| &f%{mineplex.poll.a4.%{_id}%}%" to be unstealable
1399 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
1400 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
1401 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
1402 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
1403 else:
1404 send "&9Permissions> &7You do not have permission to do that."
1405 else:
1406 send "&9Poll> &7Correct Usage:"
1407 send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4 (Gem Reward) Admin"
1408 send "&4/poll results [(id)] Admin"
1409 send ""
1410 send "&9Poll> &7Example:"
1411 send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
1412
1413command /fixanimation:
1414 permission: mineplex.dev
1415 permission message: &9Permissions> &7You do not have permission to do that.
1416 trigger:
1417 loop all entities:
1418 if name of loop-entity is "&a&lCarl the Creeper":
1419 set {_e1} to loop-entity
1420 exit loop
1421 add "{NoAI:0b}" to nbt of {_e1}
1422 teleport {_e1} 100 blocks below {_e1}
1423 kill {_e1}
1424
1425command /animation:
1426 permission: mineplex.dev
1427 permission message: &9Permissions> &7You do not have permission to do that.
1428 trigger:
1429 loop all entities:
1430 if name of loop-entity is "&a&lCarl the Creeper":
1431 set {_e1} to loop-entity
1432 exit loop
1433 set {_loc} to location of {_e1}
1434 add "{Fuse:999}" to nbt of {_e1}
1435 add "{ignited:1}" to nbt of {_e1}
1436 wait 1 second
1437 loop all players:
1438 show 1 "Explosion Huge" particles at {_loc} for loop-player
1439 play raw sound "random.explode1" at {_e1} with pitch 1 volume 10
1440 play raw sound "random.explode" at {_e1} with pitch 1 volume 10
1441 wait 0.6 seconds
1442 spawn 1 creeper at location of {_e1}
1443 add "{NoAI:0b}" to nbt of {_e1}
1444 teleport {_e1} 100 blocks below {_e1}
1445 kill {_e1}
1446 set {_carl} to spawned creeper
1447 set name of last spawned entity to "&a&lCarl the Creeper"
1448 add "{NoAI:1b}" to nbt of {_carl}
1449 add "{powered:1}" to nbt of {_carl}
1450 apply slowness 255 to last spawned entity for 999 days
1451
1452every 2 minutes:
1453 execute console command "/animation" #Sue me
1454
1455command /ticket [<offline player>] [<string>] [<string>]:
1456 permission: mineplex.admin
1457 permission message: &9Permissions> &7You do not have permission to do that.
1458 trigger:
1459 if arg-1 is set:
1460 if arg-2 is set:
1461 set {_int} to arg-2 parsed as an int
1462 if {_int} is an int:
1463 send "&9Tickets> &7You gave &e%arg-2% &7Carl spin tickets to &e%arg-1%" to sender
1464 send "&9Tickets> &7You recieved &e%arg 2% &7Carl spin tickets" to arg 1
1465 add {_int} to {spintickets.%arg-1%}
1466 else:
1467 send "&9Tickets> &7Listing Commands"
1468 send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
1469 else:
1470 send "&9Tickets> &7Listing Commands"
1471 send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
1472 else:
1473 send "&9Tickets> &7Listing Commands"
1474 send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
1475
1476on inventory close:
1477 if {opener.%player%} is true:
1478 wait 2 ticks
1479 open chest with 3 rows named "Carl's Spinner" to player
1480
1481every second:
1482 loop all entities:
1483 name of loop-entity contains "&a&lCarl the Creeper"
1484 teleport loop-entity to {kitnpc}
1485
1486on damage:
1487 name of victim contains "&a&lCarl the Creeper"
1488 cancel event
1489
1490on right click on entity:
1491 if player is holding chest:
1492 if name of player's tool is "&aCosmetic Menu":
1493 stop
1494 else:
1495 send "&9MCR> &e##BlameWheezy"
1496 else:
1497 name of clicked entity contains "&a&lCarl the Creeper"
1498 if {nospam.%player%} is true:
1499 stop
1500 else:
1501 set {nospam.%player%} to true
1502 carlGUI(player)
1503 wait 1 second
1504 set {nospam.%player%} to false
1505
1506on death:
1507 set {nospam.%victim%} to false
1508
1509on join:
1510 set {nospam.%player%} to false
1511
1512#Broadcast System
1513
1514every 10 seconds:
1515 $ thread
1516 set {_check} to line 1 from url "https://pastebin.com/raw/8YXXWuiA"
1517 if {mineplex.globalannounce.%{_check}%} is not set:
1518 set {mineplex.globalannounce.%{_check}%} to true
1519 $ thread
1520 set {_message} to line 1 from url "https://pastebin.com/raw/fGAUXi37"
1521 send all players title "&eMCR Announcement" with subtitle "&f%{_message}%" for 10 seconds
1522 broadcast "&9MCR Announcement> &b%{_message}%"
1523
1524#Titles
1525
1526function createTitle(arg1: player , arg2: text) :: number:
1527 set {_tploc} to location of {_arg1}
1528 add 1.6 to y-coordinate of {_tploc}
1529 spawn a armor stand at {_tploc}
1530 teleport {%{_arg1}%.title} to {_tploc}
1531 set {%{_arg1}%.title} to the last spawned entity
1532 set metadata value "titleOwner" of last spawned entity to "%{_arg1}%"
1533 add "{CustomName:""%{_arg2}%""}" to nbt of last spawned entity
1534 add "{NoGravity:1}" to nbt of last spawned entity
1535 add "{CustomNameVisible:1}" to nbt of last spawned entity
1536 add "{PersistenceRequired:1}" to nbt of last spawned entity
1537 add "{Invisible:1}" to nbt of last spawned entity
1538 add "{Marker:1}" to nbt of last spawned entity
1539 set {title.%{_arg1}%.active} to true
1540 set {_tploc} to location of {_arg1}
1541 add 1.6 to y-coordinate of {_tploc}
1542 teleport {%{_arg1}%.title} to {_tploc}
1543
1544function removeTitle(arg1: player) :: number:
1545 if {title.%{_arg1}%.active} is true:
1546 kill {%{_arg1}%.title}
1547 set {title.%{_arg1}%.active} to false
1548 delete {%{_arg1}%.title}
1549 set {_void} to location of {_arg1}
1550 remove 256 from y-coordinate of {_void}
1551 loop all entities:
1552 if metadata value "titleOwner" of loop-entity is "%{_arg1}%":
1553 add "{NoGravity:0}" to nbt of loop-entity
1554 teleport loop-entity to {_void}
1555
1556 set {title.%{_arg1}%.active} to false
1557 wait 4 ticks
1558 delete {%{_arg1}%.title}
1559 else:
1560 message "[TitleAPI] Error:" to console
1561 message "[TitleAPI] %{_arg1}% has no title active" to console
1562 stop
1563
1564on any move:
1565 if {title.%player%.active} is true:
1566 set {_tploc} to location of player
1567 add 1.6 to y-coordinate of {_tploc}
1568 teleport {%player%.title} to {_tploc}
1569
1570on any move:
1571 if {title.%player%.active} is true:
1572 push {%player%.title} forwards
1573 set {_tploc} to location of player
1574 add 1.6 to y-coordinate of {_tploc}
1575 teleport {%player%.title} to {_tploc}
1576 make {%player%.title} home towards player
1577 push {%player%.title} forwards
1578
1579command /createtitle [<player>] [<text>]:
1580 permission: mineplex.dev
1581 trigger:
1582 set {_txt} to colored arg 2
1583 removeTitle(arg 1)
1584 message "&9Titles> &7Generating title, please wait..."
1585 wait 5 ticks
1586 createTitle(arg 1, "%{_txt}%")
1587 message "&9Titles> &7Title &e%{_txt}% &7Generated."
1588
1589#protocol hide {_e1} from loop-player
1590
1591on quit:
1592 removeTitle(player)
1593
1594command /removeTitle [<player>]:
1595 trigger:
1596 removeTitle(arg-1)
1597
1598function trackDB(p: player , t: string) :: string:
1599 if {_t} is "aprilfools-2017":
1600 set {_r} to "&5&k?&d 2017 April Fools &5&k?"
1601 if {_t} is "holiday-cheer":
1602 set {_r} to "&c&k?&c Has Santa's Number &c&k?"
1603 if {_t} is "treasure-hunter":
1604 set {_r} to "&c&k?&c Master Treasure Hunter &c&k?"
1605 if {_t} is "leveler":
1606 set {_r} to "&c&k?&c Friend of Douglas &c&k?"
1607 if {_t} is "lucky":
1608 set {_r} to "&c&k?&c Hashtag Blessed &c&k?"
1609 if {_t} is "mineplex-mastery":
1610 set {_r} to "&c&k?&c Mineplex Master &c&k?"
1611 if {_t} is "party-animal":
1612 set {_r} to "&c&k?&c Life is a Party &c&k?"
1613 if {_t} is "peaceful":
1614 set {_r} to "&c&k?&c Pacifist &c&k?"
1615 if {_t} is "perfectionist":
1616 set {_r} to "&c&k?&c Doer of Things &c&k?"
1617 if {_t} is "power-play":
1618 if {mineplex.ppc.%{_p}%} is set:
1619 set {_r} to "&b&k?&b Power Play Club &b&k?"
1620 else:
1621 return "perm"
1622 if {_t} is "sweet-tooth":
1623 set {_r} to "&c&k?&c Candy Addict &c&k?"
1624 if {_t} is "unlucky":
1625 set {_r} to "&c&k?&c Things Don't Go My Way &c&k?"
1626 if {_t} is "warrior":
1627 set {_r} to "&c&k?&c Champion &c&k?"
1628 if {_t} is "gotta-go":
1629 set {_r} to "&6┬┴┬┴┤(・_├┬┴┬┴)"
1630 if {_t} is "santas-helper":
1631 set {_r} to "&c&l&ka&r &f&lSanta's Helper &r&c&l&ka"
1632 if {_t} is "staff-trainee":
1633 if {p} has permisson "mineplex.trainee":
1634 set {_r} to "&6&kK&r &6Choo Choo &kK"
1635 else:
1636 return "perm"
1637 if {_t} is "staff-moderator":
1638 if {p} has permisson "mineplex.mod":
1639 set {_r} to "&6&kK&r &6My name isn't mod &kK"
1640 else:
1641 return "perm"
1642 if {_t} is "staff-sr_moderator":
1643 if {p} has permisson "mineplex.srmod":
1644 set {_r} to "&6&kK&r &6My Team's the Best Team &kK"
1645 else:
1646 return "perm"
1647 if {_t} is "staff-leader":
1648 if {_p} has permission "mineplex.leader":
1649 set {_r} to "&c&kK&4 What's a leader? &c&kK"
1650 else:
1651 return "perm"
1652 if {_t} is "mcr-patreon":
1653 if {_p} is "WheezyGold7931" :
1654 set {_r} to "&6&kK&c&l MCR Patreon &6&kK"
1655 else:
1656 return "perm"
1657 if {_t} is "mcr-staff":
1658 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":
1659 set {_r} to "&6&kK&6&l MCR Staff &6&kK"
1660 else:
1661 return "perm"
1662 if {_t} is "mcr-dev":
1663 if {_p} is "WheezyGold7931" or "TheSkripterDK" or "Torksi" or "ItzRenderman":
1664 set {_r} to "&6&kK&c&l MCR Dev &6&kK"
1665 else:
1666 return "perm"
1667 if {_t} is "mcr-headcouncil":
1668 if {_p} is "WheezyGold7931" or "NaiculS" or "Drawfull" or "Keyloren" or "Torksi" or "Mike70387":
1669 set {_r} to "&6&kK&4&l MCR Head Council &6&kK"
1670 else:
1671 return "perm"
1672 if {_t} is "mcr-creator":
1673 if {_p} is "WheezyGold7931":
1674 set {_r} to "&6&kK&d&l MCR Creator &6&kK"
1675 else:
1676 return "perm"
1677 if {_r} is not set:
1678 set {_r} to "false"
1679 return {_r}
1680
1681command /track [<string>] [<string>]:
1682 trigger:
1683 if {mineplex.track.%player%} is set:
1684 send "&9Track> &7You have disabled your active track"
1685 removeTitle(player)
1686 delete {mineplex.track.%player%}
1687 else:
1688 if arg 1 is not set:
1689 send "&9Track> &7You must specify the ID of a track to enable"
1690 else:
1691 set {_track} to trackDB(player, arg-1)
1692 if {_track} is "false":
1693 send "&9Track> &7That is not a valid track"
1694 stop
1695 if {_track} is "perm":
1696 send "&9Track> &7You have not unlocked any tiers on that track"
1697 stop
1698 removeTitle(player)
1699 wait 5 ticks
1700 createTitle(player, {_track})
1701 send "&9Track> &7Your active track has been updated to %{_track}%"
1702 set {mineplex.track.%player%} to {_track}
1703
1704#Cosmetics
1705on join:
1706 message "&9Cosmetics> &7You enabled all Previously enabled Cosmetics" to player
1707
1708command /chestmeup:
1709 trigger:
1710 give player chest named "&aCosmetic Menu"
1711
1712function mountapi(p: player, action: text, type: text) :: number:
1713 if {_action} is "remove":
1714 set {_loc} to {_p}'s location
1715 add -100000 to y-coordinate of {_loc}
1716 teleport {currentmount.%{_p}%} to {_loc}
1717 delete {currentmount.%{_p}%}
1718 message "&9Mount> &7Despawned &e%{currentmount.%{_p}%.type}%" to {_p}
1719 set {currentmount.%{_p}%.type} to "None"
1720 if {_action} is "create":
1721 if {_type} is "slime":
1722 if {currentmount.%{_p}%} is set:
1723 message "&9MountAPI> &6[WARN] &7%{_p}% already has a mount active. The Action has been canceled." to console
1724 stop
1725 spawn a slime at {_p}
1726 set {currentmount.%{_p}%} to the last spawned entity
1727 add "{CustomName:""%{_p}%'s Slime""}" to nbt of last spawned entity
1728 add "{CustomNameVisible:1}" to nbt of last spawned entity
1729 add "{PersistenceRequired:1}" to nbt of last spawned entity
1730 add "{Size:1}" to nbt of last spawned entity
1731 add "{Attributes:{Name:generic.attackDamage,Base:0},[{Name:generic.followRange,Base:0}]}" to nbt of last spawned entity
1732 add "{ActiveEffects:[{Id:18,Amplifier:255,Duration:19999980,ShowParticles:0b}]}" to nbt of last spawned entity
1733 set {currentmount.%{_p}%.type} to "Slime Mount"
1734 while {currentmount.%{_p}%} is alive:
1735 wait 15 ticks
1736 {_p} is online
1737 if distance between {currentmount.%{_p}%} and {_p} is less than 5:
1738 make {currentmount.%{_p}%} pathfind to {_p} with speed 1
1739 else if distance between {currentmount.%{_p}%} and {_p} is more than 15:
1740 teleport {currentmount.%{_p}%} to {_p}
1741 else:
1742 make {currentmount.%{_p}%} pathfind to {_p} with speed 2
1743
1744
1745
1746function cosmetic_system(arg1: text , arg2: text , p: player) :: number:
1747 set {_wither} to "MHF_WSkeleton" parsed as a player
1748 if {_arg1} is "menu":
1749 if {_arg2} is "gadgets":
1750 if {mineplex.%{_p}%.cosmetics.gadgets.pearl} is not set:
1751 set {mineplex.%{_p}%.cosmetics.gadgets.pearl} to 0
1752 if {mineplex.%{_p}%.cosmetics.gadgets.firework} is not set:
1753 set {mineplex.%{_p}%.cosmetics.gadgets.firework} to 0
1754 if {mineplex.%{_p}%.cosmetics.gadgets.coal} is not set:
1755 set {mineplex.%{_p}%.cosmetics.gadgets.coal} to 0
1756 if {mineplex.%{_p}%.cosmetics.gadgets.tnt} is not set:
1757 set {mineplex.%{_p}%.cosmetics.gadgets.tnt} to 0
1758 if {mineplex.%{_p}%.cosmetics.gadgets.snowball} is not set:
1759 set {mineplex.%{_p}%.cosmetics.gadgets.snowball} to 0
1760 wait 2 ticks
1761 open chest with 6 rows named "Inventory" to {_p}
1762 wait 4 ticks
1763 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1764 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})]
1765 if {mineplex.gadget.selected.%{_p}%} is "pearl":
1766 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})]
1767
1768 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})]
1769 if {mineplex.gadget.selected.%{_p}%} is "firework":
1770 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})]
1771 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})]
1772 if {mineplex.gadget.selected.%{_p}%} is "Snowball":
1773 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})]
1774 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})]
1775 if {mineplex.gadget.selected.%{_p}%} is "tnt":
1776 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})]
1777 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})]
1778 if {mineplex.gadget.selected.%{_p}%} is "coal":
1779 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})]
1780 if {_arg2} is "main":
1781 if {mineplex.%{_p}%.cosmetics.morphs} is not set:
1782 set {mineplex.%{_p}%.cosmetics.morphs} to 0
1783 if {mineplex.%{_p}%.cosmetics.hats} is not set:
1784 set {mineplex.%{_p}%.cosmetics.hats} to 0
1785 wait 2 ticks
1786 open chest with 6 rows named "Inventory" to {_p}
1787 set {mineplex.error.slot} to 0
1788 wait 4 ticks
1789 loop 54 times:
1790 format slot {mineplex.error.slot} of {_p} with black glass pane named "&8" with lore "&6" to be unstealable
1791 add 1 to {mineplex.error.slot}
1792 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})]
1793 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
1794 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
1795 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
1796 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
1797 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})]
1798 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})]
1799 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})]
1800 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})]
1801 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})]
1802 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
1803 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
1804 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
1805 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
1806 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
1807 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
1808 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
1809 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
1810
1811
1812
1813
1814 if {_arg2} is "pets":
1815 if {mineplex.%{_p}%.cosmetics.pets.ocelot} is not set:
1816 set {mineplex.%{_p}%.cosmetics.pets.ocelot} to 0
1817 if {mineplex.%{_p}%.cosmetics.pets.wolf} is not set:
1818 set {mineplex.%{_p}%.cosmetics.pets.wolf} to 0
1819 if {mineplex.%{_p}%.cosmetics.pets.chicken} is not set:
1820 set {mineplex.%{_p}%.cosmetics.pets.chicken} to 0
1821 wait 2 ticks
1822 open chest with 6 rows named "Inventory" to {_p}
1823 wait 4 ticks
1824 format slot 4 of {_p} with bed item named "&7? Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1825 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})]
1826 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})]
1827 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})]
1828 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})]
1829 if {_arg2} is "morphs":
1830 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not set:
1831 set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 0
1832 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not set:
1833 set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 0
1834 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not set:
1835 set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 0
1836 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not set:
1837 set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 0
1838 wait 2 ticks
1839 open chest with 6 rows named "Inventory" to {_p}
1840 wait 4 ticks
1841 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1842 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 0:
1843 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})]
1844 else:
1845 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})]
1846 if {mineplex.currentmorph.%{_p}%} is "Villager Morph":
1847 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})]
1848 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 0:
1849 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})]
1850 else:
1851 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})]
1852 if {mineplex.currentmorph.%{_p}%} is "Slime Morph":
1853 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})]
1854 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 0:
1855 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})]
1856 else:
1857 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})]
1858 if {mineplex.currentmorph.%{_p}%} is "Creeper Morph":
1859 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})]
1860 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 0:
1861 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})]
1862 else:
1863 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})]
1864 if {mineplex.currentmorph.%{_p}%} is "Cow Morph":
1865 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})]
1866 if {_p} has permission "mineplex.legend":
1867 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})]
1868 if {mineplex.currentmorph.%{_p}%} is "Wither Morph":
1869 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})]
1870 else:
1871 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
1872
1873 if {_arg2} is "hats":
1874 wait 2 ticks
1875 open chest with 6 rows named "Inventory" to {_p}
1876 wait 4 ticks
1877 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1878 if {mineplex.hat.%{_p}%.owned.compCube} is not set:
1879 set {mineplex.hat.%{_p}%.owned.compCube} to 0
1880 if {mineplex.hat.%{_p}%.owned.present} is not set:
1881 set {mineplex.hat.%{_p}%.owned.present} to 0
1882 if {mineplex.hat.%{_p}%.owned.compCube} is 0:
1883 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
1884 else:
1885 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})]
1886 if {mineplex.hat.selected.%{_p}%} is "compCube":
1887 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})]
1888 if {mineplex.hat.%{_p}%.owned.present} is 0:
1889 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
1890 else:
1891 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})]
1892 if {mineplex.hat.selected.%{_p}%} is "present":
1893 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})]
1894 if {_arg2} is "particles":
1895 wait 2 ticks
1896 open chest with 6 rows named "Inventory" to {_p}
1897 wait 4 ticks
1898 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1899 if {mineplex.particle.%{_p}%.owned.shadow} is not set:
1900 set {mineplex.particle.%{_p}%.owned.shadow} to 0
1901 if {mineplex.particle.%{_p}%.owned.shadow} is 0:
1902 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
1903 else:
1904 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})]
1905 if {mineplex.particle.selected.%{_p}%} is "shadow":
1906 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})]
1907 if {mineplex.particle.%{_p}%.owned.flame} is 0:
1908 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
1909 else:
1910 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})]
1911 if {mineplex.particle.selected.%{_p}%} is "flame":
1912 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})]
1913 if {_arg2} is "mounts":
1914 if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is not set:
1915 set {mineplex.%{_p}%.cosmetics.mounts.owned.slime} to 0
1916 wait 2 ticks
1917 open chest with 6 rows named "Inventory" to {_p}
1918 wait 4 ticks
1919 format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
1920 if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is 0:
1921 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})]
1922 else:
1923 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})]
1924 if {currentmount.%{_p}%.type} is "Slime Mount":
1925 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})]
1926
1927
1928 if {_arg1} is "use":
1929 if {_arg2} is "hat_compCube":
1930 if {mineplex.hat.selected.%{_p}%} is "compCube":
1931 wait 1 tick
1932 message "&9Gadget> &7You unequipped &eCompanion Cube" to {_p}
1933 set {mineplex.hat.selected.%{_p}%} to "none"
1934 execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0"
1935 cosmetic_system("menu", "hats", {_p})
1936 stop
1937 if {mineplex.hat.%{_p}%.owned.compCube} is 1:
1938 wait 1 tick
1939 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==}]}}}"
1940 message "&9Gadget> &7You equipped &eCompanion Cube" to {_p}
1941 set {mineplex.hat.selected.%{_p}%} to "compCube"
1942 cosmetic_system("menu", "hats", {_p})
1943 if {_arg1} is "use":
1944 if {_arg2} is "hat_present":
1945 if {mineplex.hat.selected.%{_p}%} is "present":
1946 message "&9Gadget> &7You unequipped &ePresent" to {_p}
1947 set {mineplex.hat.selected.%{_p}%} to "none"
1948 execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0"
1949 cosmetic_system("menu", "hats", {_p})
1950 stop
1951 if {mineplex.hat.%{_p}%.owned.compCube} is 1:
1952 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=}]}}}"
1953 message "&9Gadget> &7You equipped &ePresent" to {_p}
1954 set {mineplex.hat.selected.%{_p}%} to "present"
1955 cosmetic_system("menu", "hats", {_p})
1956 if {_arg1} is "use":
1957 if {_arg2} is "particle_shadow":
1958 if {mineplex.particle.selected.%{_p}%} is "shadow":
1959 message "&9Gadget> &7You unequipped &eShadow Walk" to {_p}
1960 set {mineplex.particle.selected.%{_p}%} to "none"
1961 cosmetic_system("menu", "particles", {_p})
1962 stop
1963 if {mineplex.particle.%{_p}%.owned.shadow} is 1:
1964 message "&9Gadget> &7You equipped &eShadow Walk" to {_p}
1965 set {mineplex.particle.selected.%{_p}%} to "shadow"
1966 cosmetic_system("menu", "particles", {_p})
1967 if {_arg2} is "particle_flame":
1968 if {mineplex.particle.selected.%{_p}%} is "flame":
1969 message "&9Gadget> &7You unequipped &eFlame Rings" to {_p}
1970 set {mineplex.particle.selected.%{_p}%} to "none"
1971 cosmetic_system("menu", "particles", {_p})
1972 stop
1973 if {mineplex.particle.%{_p}%.owned.flame} is 1:
1974 message "&9Gadget> &7You equipped &eFlame Rings" to {_p}
1975 set {mineplex.particle.selected.%{_p}%} to "flame"
1976 cosmetic_system("menu", "particles", {_p})
1977 if {_arg1} is "use":
1978 if {_arg2} is "ocelot":
1979 if {mineplex.pets.ocelot.active.%{_p}%} is not set:
1980 set {mineplex.pets.ocelot.active.%{_p}%} to false
1981 if {mineplex.pets.ocelot.active.%{_p}%} is false:
1982 spawn a ocelot at {_p}
1983 set {_ocelotpet} to the last spawned entity
1984 add "{CustomName:&a%{_p}%'s&c Pet Cat}" to nbt of last spawned entity
1985 add "{Silent:1}" to nbt of last spawned entity
1986 add "{CustomNameVisible:1}" to nbt of last spawned entity
1987 add "{PersistenceRequired:1}" to nbt of last spawned entity
1988 tame {_ocelotpet} to {_p}
1989 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
1990 set {mineplex.pets.ocelot.active.%{_p}%} to true
1991 while {pet::%{_p}%} is alive:
1992 wait 15 ticks
1993 {_p} is online
1994 if distance between {pet::%{_p}%} and {_p} is less than 5:
1995 make {pet::%{_p}%} pathfind to {_p} with speed 1
1996 else if distance between {pet::%{_p}%} and {_p} is more than 15:
1997 teleport {pet::%{_p}%} to {_p}
1998 else:
1999 make {pet::%{_p}%} pathfind to {_p} with speed 2
2000 else:
2001 if {mineplex.pets.ocelot.active.%{_p}%} is true:
2002 kill {pet::%{_p}%}
2003 delete {pet::%{_p}%}
2004 set {mineplex.pets.ocelot.active.%{_p}%} to false
2005 if {_arg1} is "use":
2006 if {_arg2} is "wolf":
2007 if {mineplex.pets.wolf.active.%{_p}%} is not set:
2008 set {mineplex.pets.wolf.active.%{_p}%} to false
2009 if {mineplex.pets.wolf.active.%{_p}%} is false:
2010 spawn a wolf at {_p}
2011 set {_ocelotpet} to the last spawned entity
2012 add "{CustomName:&a%{_p}%'s&c Pet Wolf}" to nbt of last spawned entity
2013 add "{Silent:1}" to nbt of last spawned entity
2014 add "{CustomNameVisible:1}" to nbt of last spawned entity
2015 add "{PersistenceRequired:1}" to nbt of last spawned entity
2016 tame {_ocelotpet} to {_p}
2017 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
2018 set {mineplex.pets.wolf.active.%{_p}%} to true
2019 while {pet::%{_p}%} is alive:
2020 wait 15 ticks
2021 {_p} is online
2022 if distance between {pet::%{_p}%} and {_p} is less than 5:
2023 make {pet::%{_p}%} pathfind to {_p} with speed 1
2024 else if distance between {pet::%{_p}%} and {_p} is more than 15:
2025 teleport {pet::%{_p}%} to {_p}
2026 else:
2027 make {pet::%{_p}%} pathfind to {_p} with speed 2
2028 else:
2029 if {mineplex.pets.wolf.active.%{_p}%} is true:
2030 kill {pet::%{_p}%}
2031 delete {pet::%{_p}%}
2032 set {mineplex.pets.wolf.active.%{_p}%} to false
2033 if {_arg1} is "use":
2034 if {_arg2} is "chicken":
2035 if {mineplex.pets.chicken.active.%{_p}%} is not set:
2036 set {mineplex.pets.chicken.active.%{_p}%} to false
2037 if {mineplex.pets.chicken.active.%{_p}%} is false:
2038 spawn a chicken at {_p}
2039 set {_ocelotpet} to the last spawned entity
2040 add "{CustomName:&a%{_p}%'s&c Pet Chicken}" to nbt of last spawned entity
2041 add "{Silent:1}" to nbt of last spawned entity
2042 add "{CustomNameVisible:1}" to nbt of last spawned entity
2043 add "{PersistenceRequired:1}" to nbt of last spawned entity
2044 tame {_ocelotpet} to {_p}
2045 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
2046 set {mineplex.pets.chicken.active.%{_p}%} to true
2047 while {pet::%{_p}%} is alive:
2048 wait 15 ticks
2049 {_p} is online
2050 if distance between {pet::%{_p}%} and {_p} is less than 5:
2051 make {pet::%{_p}%} pathfind to {_p} with speed 1
2052 else if distance between {pet::%{_p}%} and {_p} is more than 15:
2053 teleport {pet::%{_p}%} to {_p}
2054 else:
2055 make {pet::%{_p}%} pathfind to {_p} with speed 2
2056 else:
2057 if {mineplex.pets.chicken.active.%{_p}%} is true:
2058 kill {pet::%{_p}%}
2059 delete {pet::%{_p}%}
2060 set {mineplex.pets.chicken.active.%{_p}%} to false
2061 if {_arg1} is "use":
2062 if {_arg2} is "guardian":
2063 if {mineplex.pets.guardian.active.%{_p}%} is not set:
2064 set {mineplex.pets.guardian.active.%{_p}%} to false
2065 if {mineplex.pets.guardian.active.%{_p}%} is false:
2066 spawn a guardian at {_p}
2067 set {_ocelotpet} to the last spawned entity
2068 add "{CustomName:&a%{_p}%'s&c Pet Guardian}" to nbt of last spawned entity
2069 add "{Silent:1}" to nbt of last spawned entity
2070 add "{CustomNameVisible:1}" to nbt of last spawned entity
2071 add "{PersistenceRequired:1}" to nbt of last spawned entity
2072 tame {_ocelotpet} to {_p}
2073 evaluate "set {pet::%{_p}%} to {_ocelotpet}"
2074 set {mineplex.pets.guardian.active.%{_p}%} to true
2075 while {pet::%{_p}%} is alive:
2076 wait 15 ticks
2077 {_p} is online
2078 if distance between {pet::%{_p}%} and {_p} is less than 5:
2079 make {pet::%{_p}%} pathfind to {_p} with speed 1
2080 else if distance between {pet::%{_p}%} and {_p} is more than 15:
2081 teleport {pet::%{_p}%} to {_p}
2082 else:
2083 make {pet::%{_p}%} pathfind to {_p} with speed 2
2084 else:
2085 if {mineplex.pets.guardian.active.%{_p}%} is true:
2086 kill {pet::%{_p}%}
2087 delete {pet::%{_p}%}
2088 set {mineplex.pets.guardian.active.%{_p}%} to false
2089 if {_arg1} is "use":
2090 if {_arg2} is "coal":
2091 if {mineplex.gadget.selected.%{_p}%} is "coal":
2092 message "&9Gadget> &7You unequipped &eCoal" to {_p}
2093 set {mineplex.gadget.selected.%{_p}%} to "none"
2094 set slot 3 of {_p} to air with name "lolz"
2095 cosmetic_system("menu", "gadgets", {_p})
2096 stop
2097 message "&9Gadget> &7You equipped &eCoal" to {_p}
2098 set {mineplex.gadget.selected.%{_p}%} to "coal"
2099 set slot 3 of {_p} to coal with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.coal}% Coal"
2100 cosmetic_system("menu", "gadgets", {_p})
2101 stop
2102 if {_arg1} is "buy":
2103 wait 2 ticks
2104 open chest with 6 rows named " Confirmation" to {_p}
2105 wait 2 ticks
2106 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
2107 format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable
2108 format slot 27 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2109 format slot 28 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2110 format slot 29 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2111 format slot 36 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2112 format slot 37 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2113 format slot 38 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2114 format slot 45 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2115 format slot 46 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2116 format slot 47 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
2117 format slot 33 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2118 format slot 34 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2119 format slot 35 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2120 format slot 42 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2121 format slot 43 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2122 format slot 44 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2123 format slot 51 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2124 format slot 52 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2125 format slot 53 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
2126 #Mounts
2127 if {_arg2} is "mount_slime":
2128 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
2129 message "&9Gadget> &7You already own this mount!" to {_p}
2130 else:
2131 format slot 22 of {_p} with slimeball named "&fSlime Mount" with lore "&fSplat Splat!" to be unstealable
2132 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
2133 #Morphs
2134 if {_arg2} is "morph_creeper":
2135 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
2136 message "&9Gadget> &7You already own this morph!" to {_p}
2137 else:
2138 format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable
2139 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
2140 if {_arg2} is "morph_cow":
2141 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1:
2142 message "&9Gadget> &7You already own this morph!" to {_p}
2143 else:
2144 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
2145 format slot 22 of {_p} with steak named "&fCow Morph" with lore "&fMooooo!" to be unstealable
2146 if {_arg2} is "morph_slime":
2147 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
2148 message "&9Gadget> &7You already own this morph!" to {_p}
2149 else:
2150 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
2151 format slot 22 of {_p} with slimeball named "&fSlime Morph" with lore "&fSplat Splat!" to be unstealable
2152 if {_arg2} is "morph_villager":
2153 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1:
2154 message "&9Gadget> &7You already own this morph!" to {_p}
2155 else:
2156 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
2157 format slot 22 of {_p} with emerald named "&fVillager Morph" with lore "&fMURRR! HURR MURRR!" to be unstealable
2158 #Gadgets
2159 if {_arg2} is "pearl":
2160 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
2161 format slot 22 of {_p} with ender pearl named "&fEthereal Pearl" with lore "&fThese Pearls are stolen from||&fsleeping Endermen!" to be unstealable
2162 if {_arg2} is "firework":
2163 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
2164 format slot 22 of {_p} with firework rocket named "&fFirework" with lore "&fNeed to celebrate? These||&fFireworks should do the trick!" to be unstealable
2165 if {_arg2} is "tnt":
2166 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
2167 format slot 22 of {_p} with tnt named "&fTNT" with lore "&fThowing tnt at %{mineplex.config.servername}%||&fStaff is highly encouraged!" to be unstealable
2168 if {_arg1} is "confirm":
2169 if {_arg2} is "mount_slime":
2170 if {mineplex.shards.%{_p}%} is bigger than 9999:
2171 set {mineplex.proc.slot} to 45
2172 wait 2 ticks
2173 open chest with 6 rows named " Confirmation" to {_p}
2174 loop 9 times:
2175 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2176 wait 1 tick
2177 add 1 to {mineplex.proc.slot}
2178 if {mineplex.proc.slot} is 54:
2179 message "&9Cosmetics> &7Purchased &eSlime Mount" to {mineplex.chest.buyplayer.%{_p}%}
2180 set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1
2181 delShards({_p}, 10000)
2182 add 1 to {mineplex.%{_p}%.cosmetics.mounts}
2183 set {mineplex.error.slot} to 0
2184 loop 54 times:
2185 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})]
2186 add 1 to {mineplex.error.slot}
2187 wait 2 ticks
2188 stop
2189 if {mineplex.shards.%{_p}%} is not bigger than 9999:
2190 wait 2 ticks
2191 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2192 set {mineplex.error.slot} to 0
2193 loop 54 times:
2194 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "mounts", {_p})]
2195 add 1 to {mineplex.error.slot}
2196 if {_arg1} is "use":
2197 if {_arg2} is "mount_slime":
2198 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1:
2199 message "&9Gadget> &7You dont own this mount." to {_p}
2200 stop
2201 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
2202 if {mineplex.currentmorph.%{_p}%} is not set:
2203 set {mineplex.currentmorph.%{_p}%} to "None"
2204 if {currentmount.%{_p}%.type} is not "Slime Mount":
2205 if {currentmount.%{_p}%.type} is not "None":
2206 message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p}
2207 message "&9Gadget> &7You spawned &eSlime Mount" to {_p}
2208 mountapi({_p}, "create", "slime")
2209 cosmetic_system("menu", "mounts", {_p})
2210 stop
2211 if {currentmount.%{_p}%.type} is "Slime Mount":
2212 message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p}
2213 set {mineplex.currentmorph.%{_p}%} to "None"
2214 mountapi({_p}, "remove", "notused")
2215 cosmetic_system("menu", "morphs", {_p})
2216 stop
2217 if {_arg1} is "confirm":
2218 if {_arg2} is "morph_creeper":
2219 if {mineplex.shards.%{_p}%} is bigger than 9999:
2220 set {mineplex.proc.slot} to 45
2221 wait 2 ticks
2222 open chest with 6 rows named " Confirmation" to {_p}
2223 loop 9 times:
2224 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2225 wait 1 tick
2226 add 1 to {mineplex.proc.slot}
2227 if {mineplex.proc.slot} is 54:
2228 message "&9Cosmetics> &7Purchased &eCreeper Morph" to {mineplex.chest.buyplayer.%{_p}%}
2229 set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 1
2230 delShards({_p}, 10000)
2231 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2232 set {mineplex.error.slot} to 0
2233 loop 54 times:
2234 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})]
2235 add 1 to {mineplex.error.slot}
2236 wait 2 ticks
2237 stop
2238 if {mineplex.shards.%{_p}%} is not bigger than 9999:
2239 wait 2 ticks
2240 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2241 set {mineplex.error.slot} to 0
2242 loop 54 times:
2243 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2244 add 1 to {mineplex.error.slot}
2245 if {_arg1} is "use":
2246 if {_arg2} is "morph_creeper":
2247 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1:
2248 message "&9Gadget> &7You dont own this morph." to {_p}
2249 stop
2250 if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
2251 if {mineplex.currentmorph.%{_p}%} is not set:
2252 set {mineplex.currentmorph.%{_p}%} to "None"
2253 if {mineplex.currentmorph.%{_p}%} is not "Creeper Morph":
2254 if {mineplex.currentmorph.%{_p}%} is not "None":
2255 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2256 message "&9Gadget> &7You morphed into &eCreeper Morph" to {_p}
2257 set {mineplex.currentmorph.%{_p}%} to "Creeper Morph"
2258 execute console command "odisguise %{_p}% creeper"
2259 cosmetic_system("menu", "morphs", {_p})
2260 stop
2261 if {mineplex.currentmorph.%{_p}%} is "Creeper Morph":
2262 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2263 set {mineplex.currentmorph.%{_p}%} to "None"
2264 execute console command "undisguise %{_p}%"
2265 cosmetic_system("menu", "morphs", {_p})
2266 stop
2267 if {_arg1} is "use":
2268 if {_arg2} is "morph_wither":
2269 if {_p} has permission "mineplex.legend":
2270 if {mineplex.currentmorph.%{_p}%} is not set:
2271 set {mineplex.currentmorph.%{_p}%} to "None"
2272 if {mineplex.currentmorph.%{_p}%} is not "Wither Morph":
2273 if {mineplex.currentmorph.%{_p}%} is not "None":
2274 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2275 message "&9Gadget> &7You morphed into &eWither Morph" to {_p}
2276 set {mineplex.currentmorph.%{_p}%} to "Wither Morph"
2277 execute console command "odisguise %{_p}% wither"
2278 set {mineplex.dj.%{_p}%} to 0
2279 set {_p}'s flight state to true
2280 cosmetic_system("menu", "morphs", {_p})
2281 stop
2282 if {mineplex.currentmorph.%{_p}%} is "Wither Morph":
2283 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2284 set {mineplex.currentmorph.%{_p}%} to "None"
2285 execute console command "undisguise %{_p}%"
2286 set {mineplex.dj.%{_p}%} to 1
2287 set {_p}'s flight state to false
2288 cosmetic_system("menu", "morphs", {_p})
2289 stop
2290 else:
2291 message "&9Gadget> &7You dont own this Morph" to {_p}
2292 if {_arg1} is "confirm":
2293 if {_arg2} is "morph_cow":
2294 if {mineplex.shards.%{_p}%} is bigger than 5999:
2295 set {mineplex.proc.slot} to 45
2296 wait 2 ticks
2297 open chest with 6 rows named " Confirmation" to {_p}
2298 loop 9 times:
2299 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2300 wait 1 tick
2301 add 1 to {mineplex.proc.slot}
2302 if {mineplex.proc.slot} is 54:
2303 message "&9Cosmetics> &7Purchased &eCow Morph" to {mineplex.chest.buyplayer.%{_p}%}
2304 set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 1
2305 delShards({_p}, 6000)
2306 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2307 set {mineplex.error.slot} to 0
2308 loop 54 times:
2309 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})]
2310 add 1 to {mineplex.error.slot}
2311 wait 2 ticks
2312 stop
2313 if {mineplex.shards.%{_p}%} is not bigger than 9999:
2314 wait 2 ticks
2315 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2316 set {mineplex.error.slot} to 0
2317 loop 54 times:
2318 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2319 add 1 to {mineplex.error.slot}
2320 if {_arg1} is "use":
2321 if {_arg2} is "morph_cow":
2322 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not 1:
2323 message "&9Gadget> &7You dont own this morph." to {_p}
2324 stop
2325 if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1:
2326 if {mineplex.currentmorph.%{_p}%} is not set:
2327 set {mineplex.currentmorph.%{_p}%} to "None"
2328 if {mineplex.currentmorph.%{_p}%} is not "Cow Morph":
2329 if {mineplex.currentmorph.%{_p}%} is not "None":
2330 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2331 message "&9Gadget> &7You morphed into &eCow Morph" to {_p}
2332 set {mineplex.currentmorph.%{_p}%} to "Cow Morph"
2333 execute console command "odisguise %{_p}% cow"
2334 cosmetic_system("menu", "morphs", {_p})
2335 stop
2336 if {mineplex.currentmorph.%{_p}%} is "Cow Morph":
2337 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2338 set {mineplex.currentmorph.%{_p}%} to "None"
2339 execute console command "undisguise %{_p}%"
2340 cosmetic_system("menu", "morphs", {_p})
2341 stop
2342 if {_arg1} is "confirm":
2343 if {_arg2} is "morph_slime":
2344 if {mineplex.shards.%{_p}%} is bigger than 19999:
2345 set {mineplex.proc.slot} to 45
2346 wait 2 ticks
2347 open chest with 6 rows named " Confirmation" to {_p}
2348 loop 9 times:
2349 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2350 wait 1 tick
2351 add 1 to {mineplex.proc.slot}
2352 if {mineplex.proc.slot} is 54:
2353 message "&9Cosmetics> &7Purchased &eSlime Morph" to {mineplex.chest.buyplayer.%{_p}%}
2354 set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1
2355 delShards({_p}, 20000)
2356 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2357 set {mineplex.error.slot} to 0
2358 loop 54 times:
2359 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})]
2360 add 1 to {mineplex.error.slot}
2361 wait 2 ticks
2362 stop
2363 if {mineplex.shards.%{_p}%} is not bigger than 19999:
2364 wait 2 ticks
2365 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2366 set {mineplex.error.slot} to 0
2367 loop 54 times:
2368 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2369 add 1 to {mineplex.error.slot}
2370 if {_arg1} is "use":
2371 if {_arg2} is "morph_slime":
2372 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not 1:
2373 message "&9Gadget> &7You dont own this morph." to {_p}
2374 stop
2375 if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
2376 if {mineplex.currentmorph.%{_p}%} is not set:
2377 set {mineplex.currentmorph.%{_p}%} to "None"
2378 if {mineplex.currentmorph.%{_p}%} is not "Slime Morph":
2379 if {mineplex.currentmorph.%{_p}%} is not "None":
2380 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2381 message "&9Gadget> &7You morphed into &eSlime Morph" to {_p}
2382 set {mineplex.currentmorph.%{_p}%} to "Slime Morph"
2383 execute console command "odisguise %{_p}% slime"
2384 cosmetic_system("menu", "morphs", {_p})
2385 stop
2386 if {mineplex.currentmorph.%{_p}%} is "Slime Morph":
2387 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2388 set {mineplex.currentmorph.%{_p}%} to "None"
2389 execute console command "undisguise %{_p}%"
2390 cosmetic_system("menu", "morphs", {_p})
2391 stop
2392 if {_arg1} is "confirm":
2393 if {_arg2} is "morph_villager":
2394 if {mineplex.shards.%{_p}%} is bigger than 11999:
2395 set {mineplex.proc.slot} to 45
2396 wait 2 ticks
2397 open chest with 6 rows named " Confirmation" to {_p}
2398 loop 9 times:
2399 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2400 wait 1 tick
2401 add 1 to {mineplex.proc.slot}
2402 if {mineplex.proc.slot} is 54:
2403 message "&9Cosmetics> &7Purchased &eVillager Morph" to {mineplex.chest.buyplayer.%{_p}%}
2404 set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 1
2405 delShards({_p}, 12000)
2406 add 1 to {mineplex.%{_p}%.cosmetics.morphs}
2407 set {mineplex.error.slot} to 0
2408 loop 54 times:
2409 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})]
2410 add 1 to {mineplex.error.slot}
2411 wait 2 ticks
2412 stop
2413 if {mineplex.shards.%{_p}%} is not bigger than 499:
2414 wait 3 ticks
2415 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2416 wait 2 ticks
2417 set {mineplex.error.slot} to 0
2418 loop 54 times:
2419 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
2420 add 1 to {mineplex.error.slot}
2421 if {_arg1} is "use":
2422 if {_arg2} is "morph_villager":
2423 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not 1:
2424 message "&9Gadget> &7You dont own this morph." to {_p}
2425 stop
2426 if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1:
2427 if {mineplex.currentmorph.%{_p}%} is not set:
2428 set {mineplex.currentmorph.%{_p}%} to "None"
2429 if {mineplex.currentmorph.%{_p}%} is not "villager Morph":
2430 if {mineplex.currentmorph.%{_p}%} is not "None":
2431 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2432 message "&9Gadget> &7You morphed into &eVillager Morph" to {_p}
2433 set {mineplex.currentmorph.%{_p}%} to "Villager Morph"
2434 execute console command "odisguise %{_p}% villager"
2435 cosmetic_system("menu", "morphs", {_p})
2436 stop
2437 if {mineplex.currentmorph.%{_p}%} is "Villager Morph":
2438 message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
2439 set {mineplex.currentmorph.%{_p}%} to "None"
2440 execute console command "undisguise %{_p}%"
2441 cosmetic_system("menu", "morphs", {_p})
2442 stop
2443 if {_arg1} is "use":
2444 if {_arg2} is "pearl":
2445 if {mineplex.gadget.selected.%{_p}%} is "Ethereal Pearl":
2446 message "&9Gadget> &7You unequipped &eEthereal Pearl" to {_p}
2447 set {mineplex.gadget.selected.%{_p}%} to "None"
2448 set slot 3 of {_p} to air with name "lolz"
2449 cosmetic_system("menu", "gadgets", {_p})
2450 stop
2451 message "&9Cosmetics> &7You equipped &eEthereal Pearl" to {_p}
2452 set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.pearl}% &5Ethereal Pearls"
2453 set {mineplex.gadget.selected.%{_p}%} to "Ethereal Pearl"
2454 cosmetic_system("menu", "gadgets", {_p})
2455 stop
2456 if {_arg1} is "confirm":
2457 if {_arg2} is "pearl":
2458 if {mineplex.shards.%{_p}%} is bigger than 499:
2459 set {mineplex.proc.slot} to 45
2460 wait 2 ticks
2461 open chest with 6 rows named " Confirmation" to {_p}
2462 loop 9 times:
2463 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2464 wait 1 tick
2465 add 1 to {mineplex.proc.slot}
2466 if {mineplex.proc.slot} is 54:
2467 message "&9Cosmetics> &7Purchased 50x &eEthereal Pearl" to {mineplex.chest.buyplayer.%{_p}%}
2468 add 50 to {mineplex.%{_p}%.cosmetics.gadgets.pearl}
2469 delShards({_p}, 50)
2470 set {mineplex.error.slot} to 0
2471 loop 54 times:
2472 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})]
2473 add 1 to {mineplex.error.slot}
2474 wait 2 ticks
2475 stop
2476 if {mineplex.shards.%{_p}%} is not bigger than 499:
2477 wait 2 ticks
2478 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2479 set {mineplex.error.slot} to 0
2480 loop 54 times:
2481 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2482 add 1 to {mineplex.error.slot}
2483 if {_arg1} is "use":
2484 if {_arg2} is "firework":
2485 if {mineplex.gadget.selected.%{_p}%} is "Fireworks":
2486 message "&9Gadget> &7You unequipped &eFireworks" to {_p}
2487 set {mineplex.gadget.selected.%{_p}%} to "None"
2488 set slot 3 of {_p} to air with name "lolz"
2489 cosmetic_system("menu", "gadgets", {_p})
2490 stop
2491 message "&9Gadget> &7You equipped &eFireworks" to {_p}
2492 set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.firework}% &eFireworks"
2493 set {mineplex.gadget.selected.%{_p}%} to "Fireworks"
2494 cosmetic_system("menu", "gadgets", {_p})
2495 stop
2496 if {_arg1} is "use":
2497 if {_arg2} is "tnt":
2498 if {mineplex.gadget.selected.%{_p}%} is "TNT":
2499 message "&9Gadget> &7You unequipped &eTNT" to {_p}
2500 set {mineplex.gadget.selected.%{_p}%} to "None"
2501 set slot 3 of {_p} to air with name "lolz"
2502 cosmetic_system("menu", "gadgets", {_p})
2503 stop
2504 message "&9Gadget> &7You equipped &eTNT" to {_p}
2505 set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.tnt}% &eTNT"
2506 set {mineplex.gadget.selected.%{_p}%} to "TNT"
2507 cosmetic_system("menu", "gadgets", {_p})
2508 if {_arg1} is "use":
2509 if {_arg2} is "snowball":
2510 if {mineplex.gadget.selected.%{_p}%} is "Snowball":
2511 message "&9Gadget> &7You unequipped &eSnowball" to {_p}
2512 set {mineplex.gadget.selected.%{_p}%} to "None"
2513 set slot 3 of {_p} to air with name "lolz"
2514 cosmetic_system("menu", "gadgets", {_p})
2515 stop
2516 message "&9Gadget> &7You equipped &eSnowball" to {_p}
2517 set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.snowball}% &eSnowballs"
2518 set {mineplex.gadget.selected.%{_p}%} to "Snowball"
2519 cosmetic_system("menu", "gadgets", {_p})
2520 if {_arg1} is "confirm":
2521 if {_arg2} is "firework":
2522 if {mineplex.shards.%{_p}%} is bigger than 499:
2523 set {mineplex.proc.slot} to 45
2524 wait 2 ticks
2525 open chest with 6 rows named " Confirmation" to {_p}
2526 loop 9 times:
2527 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2528 wait 1 tick
2529 add 1 to {mineplex.proc.slot}
2530 if {mineplex.proc.slot} is 54:
2531 message "&9Cosmetics> &7Purchased 50x &eFireworks" to {_p}
2532 add 50 to {mineplex.%{_p}%.cosmetics.gadgets.firework}
2533 delShards({_p}, 500)
2534 set {mineplex.error.slot} to 0
2535 loop 54 times:
2536 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})]
2537 add 1 to {mineplex.error.slot}
2538 wait 2 ticks
2539 stop
2540 if {mineplex.shards.%{_p}%} is not bigger than 499:
2541 wait 2 ticks
2542 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2543 set {mineplex.error.slot} to 0
2544 loop 54 times:
2545 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2546 add 1 to {mineplex.error.slot}
2547 if {_arg1} is "confirm":
2548 if {_arg2} is "tnt":
2549 if {mineplex.shards.%{_p}%} is bigger than 499:
2550 set {mineplex.proc.slot} to 45
2551 wait 2 ticks
2552 open chest with 6 rows named " Confirmation" to {_p}
2553 loop 9 times:
2554 format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
2555 wait 1 tick
2556 add 1 to {mineplex.proc.slot}
2557 if {mineplex.proc.slot} is 54:
2558 message "&9Cosmetics> &7Purchased 50x &eTNT" to {_p}
2559 add 50 to {mineplex.%{_p}%.cosmetics.gadgets.tnt}
2560 delShards({_p}, 500)
2561 set {mineplex.error.slot} to 0
2562 loop 54 times:
2563 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})]
2564 add 1 to {mineplex.error.slot}
2565 wait 2 ticks
2566 stop
2567 if {mineplex.shards.%{_p}%} is not bigger than 499:
2568 wait 2 ticks
2569 open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
2570 set {mineplex.error.slot} to 0
2571 loop 54 times:
2572 format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
2573 add 1 to {mineplex.error.slot}
2574
2575on right click:
2576 if player is holding chest:
2577 if name of player's tool is "&aCosmetic Menu":
2578 cancel event
2579 cosmetic_system("menu", "main", player)
2580
2581on left click:
2582 if player is holding chest:
2583 if name of player's tool is "&aCosmetic Menu":
2584 cancel event
2585 cosmetic_system("menu", "main", player)
2586
2587on damage:
2588 victim's name contains "Pet"
2589 cancel event
2590
2591on any move:
2592 if {mineplex.particle.selected.%player%} is "shadow":
2593 loop all players:
2594 show 1 "footstep" particles at location of player for loop-player offset by 0.4, 0.7, 0.4
2595 if {mineplex.particle.selected.%player%} is "flame":
2596 loop all players:
2597 show 1 "flame" particles at location of player for loop-player offset by 0.4, 0.7, 0.4
2598
2599command /giveitem [<player>] [<number>] [<text>]:
2600 permission: mineplex.admin
2601 permission message: &9Permissions> &7You do not have permission to do that.
2602 trigger:
2603 if arg 3 is "hat_compCube":
2604 if {mineplex.hat.%arg 1%.owned.compCube} is 1:
2605 message "&9Cosmetics> &e%arg 1% &7already owns &eCompanion Cube"
2606 stop
2607 set {mineplex.hat.%arg 1%.owned.compCube} to 1
2608 add 1 to {mineplex.%arg 1%.cosmetics.hats}
2609 message "&9Cosmetics> &7You gave &e%arg 1% Companion Cube" to player
2610 message "&9Cosmetics> &7You recieved the &eCompanion Cube &7from &e%player%" to arg 1
2611 stop
2612 if arg 3 is "hat_present":
2613 if {mineplex.hat.%arg 1%.owned.present} is 1:
2614 message "&9Cosmetics> &e%arg 1% &7already owns &ePresent"
2615 stop
2616 set {mineplex.hat.%arg 1%.owned.present} to 1
2617 add 1 to {mineplex.%arg 1%.cosmetics.hats}
2618 message "&9Cosmetics> &7You gave &e%arg 1% Present" to player
2619 message "&9Cosmetics> &7You recieved the &ePresent &7from &e%player%" to arg 1
2620 stop
2621 if arg 3 is "particle_shadow":
2622 if {mineplex.particle.%arg 1%.owned.shadow} is 1:
2623 message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk"
2624 stop
2625 set {mineplex.particle.%arg 1%.owned.shadow} to 1
2626 add 1 to {mineplex.%arg 1%.cosmetics.particles}
2627 message "&9Cosmetics> &7You gave &e%arg 1% Shadow Walk" to player
2628 message "&9Cosmetics> &7You recieved the &eShadow Walk &7from &e%player%" to arg 1
2629 stop
2630 if arg 3 is "particle_flame":
2631 if {mineplex.particle.%arg 1%.owned.flame} is 1:
2632 message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk"
2633 stop
2634 set {mineplex.particle.%arg 1%.owned.flame} to 1
2635 add 1 to {mineplex.%arg 1%.cosmetics.particles}
2636 message "&9Cosmetics> &7You gave &e%arg 1% Flame Rings" to player
2637 message "&9Cosmetics> &7You recieved the &eFlame Rings &7from &e%player%" to arg 1
2638 stop
2639 if arg 3 is "take:hat_compCube":
2640 if {mineplex.hat.%arg 1%.owned.compCube} is 0:
2641 message "&9Cosmetics> &e%arg 1% &7doesnt own &eCompanion Cube"
2642 stop
2643 set {mineplex.hat.%arg 1%.owned.compCube} to 0
2644 remove 1 from {mineplex.%arg 1%.cosmetics.hats}
2645 message "&9Cosmetics> &7You took &e%arg 1%'s Companion Cube" to player
2646 message "&9Cosmetics> &e%player% &7took your &eCompanion Cube" to arg 1
2647 stop
2648 if arg 3 is "take:hat_present":
2649 if {mineplex.hat.%arg 1%.owned.present} is 0:
2650 message "&9Cosmetics> &e%arg 1% &7doesnt own &ePresent"
2651 stop
2652 set {mineplex.hat.%arg 1%.owned.present} to 0
2653 remove 1 from {mineplex.%arg 1%.cosmetics.hats}
2654 message "&9Cosmetics> &7You took &e%arg 1%'s Present" to player
2655 message "&9Cosmetics> &e%player% &7took your &ePresent" to arg 1
2656 stop
2657 if arg 3 is "pearl":
2658 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.pearl}
2659 message "&9Item> &7You gave %arg 2% Ethereal Pearls &7to player %arg 1%" to player
2660 message "&9Item> &e%player% &7gave you &e%arg 2% Ethereal Pearls" to arg 1
2661 stop
2662 if arg 3 is "fireworks":
2663 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.firework}
2664 message "&9Item> &7You gave %arg 2% Fireworks &7to player %arg 1%" to player
2665 message "&9Item> &e%player% &7gave you &e%arg 2% Fireworks" to arg 1
2666 stop
2667 if arg 3 is "coal":
2668 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.coal}
2669 message "&9Item> &7You gave %arg 2% Coal &7to player %arg 1%" to player
2670 message "&9Item> &e%player% &7gave you &e%arg 2% Coal" to arg 1
2671 stop
2672 if arg 3 is "tnt":
2673 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.tnt}
2674 message "&9Item> &7You gave %arg 2% TNT &7to player %arg 1%" to player
2675 message "&9Item> &e%player% &7gave you &e%arg 2% TNT" to arg 1
2676 stop
2677 if arg 3 is "snowball":
2678 add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.snowball}
2679 message "&9Item> &7You gave %arg 2% Snowballs &7to player %arg 1%" to player
2680 message "&9Item> &e%player% &7gave you &e%arg 2% Snowballs" to arg 1
2681 stop
2682 message "&9Cosmetics> &c&lInvalid Cosmetic."
2683
2684
2685command /gadget:
2686 permission: mineplex.admin
2687 permission message: &9Permissions> &7You do not have permission to do that.
2688 trigger:
2689 if {mineplex.cosmetics} is not set:
2690 set {mineplex.cosmetics} to 1
2691 if {mineplex.cosmetics} is 1:
2692 set {mineplex.cosmetics} to 0
2693 broadcast "&f&lGadgets/Mounts are now &c&lDisabled"
2694 stop
2695 if {mineplex.cosmetics} is 0:
2696 set {mineplex.cosmetics} to 1
2697 broadcast "&f&lGadgets/Mounts are now &a&lEnabled"
2698 stop
2699
2700every tick:
2701 loop all players:
2702 if {mineplex.cosmetics} is not set:
2703 set {mineplex.cosmetics} to 1
2704 if {mineplex.cosmetics} is 0:
2705 set slot 3 of loop-player to air with name "remove"
2706 stop
2707 loop-player's gamemode is not creative:
2708 if {mineplex.cosmetics.%loop-player%} is not set:
2709 set {mineplex.cosmetics.%loop-player%} to 1
2710 if {mineplex.gadget.selected.%loop-player%} is "Ethereal Pearl":
2711 set slot 3 of loop-player to ender pearl with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.pearl}% Ethereal Pearl"
2712 if {mineplex.gadget.selected.%loop-player%} is "Fireworks":
2713 set slot 3 of loop-player to firework rocket with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.firework}% Fireworks"
2714 if {mineplex.gadget.selected.%loop-player%} is "Coal":
2715 set slot 3 of loop-player to coal with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.coal}% Coal"
2716 if {mineplex.gadget.selected.%loop-player%} is "TNT":
2717 set slot 3 of loop-player to tnt with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.tnt}% TNT"
2718 if {mineplex.gadget.selected.%loop-player%} is "Snowball":
2719 set slot 3 of loop-player to snowball with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.snowball}% Snowballs"
2720
2721
2722on shoot:
2723 if projectile is an enderpearl:
2724 if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.pearl}% Ethereal Pearl":
2725 if {mineplex.%shooter%.cosmetics.gadgets.pearl} is 0:
2726 cancel event
2727 cosmetic_system("buy", "pearl", shooter)
2728 stop
2729 if {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} is 1:
2730 set action bar of shooter to "&f&lEthereal Pearl is recharging"
2731 cancel event
2732 stop
2733 remove 1 from {mineplex.%shooter%.cosmetics.gadgets.pearl}
2734 set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 1
2735 message "&9Skill> &7You threw &aEthereal Pearl&7." to shooter
2736 make shooter ride projectile
2737 wait 3 ticks
2738 make shooter ride projectile
2739 wait 3 seconds
2740 set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 0
2741 set action bar of shooter to "&a&lEthereal Pearl Recharged."
2742 if projectile is an snowball:
2743 if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.snowball}% Snowballs":
2744 if {mineplex.%shooter%.cosmetics.gadgets.snowball} is 0:
2745 cancel event
2746 message "&9Gadget> &7You have no Snowballs left!" to shooter
2747 stop
2748 if {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} is 1:
2749 set action bar of shooter to "&f&lSnowball is recharging"
2750 cancel event
2751 stop
2752 remove 1 from {mineplex.%shooter%.cosmetics.gadgets.snowball}
2753 set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 1
2754 message "&9Skill> &7You threw &aSnowball&7." to shooter
2755 wait 10 ticks
2756 set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 0
2757 set action bar of shooter to "&a&lSnowball Recharged."
2758
2759on right click:
2760 if player is holding tnt:
2761 if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.tnt}% TNT":
2762 if {mineplex.%player%.cosmetics.gadgets.tnt} is less than 1:
2763 cosmetic_system("buy", "tnt", player)
2764 stop
2765 if {mineplex.%player%.cosmetics.gadgets.tntCooldown} is 1:
2766 set action bar of player to "&f&lTNT is recharging"
2767 stop
2768 remove 1 from {mineplex.%player%.cosmetics.gadgets.tnt}
2769 spawn a primed tnt 1 meter above the player
2770 add "{Fuse:60}" to nbt of the spawned entity
2771 push the spawned entity in direction of player at speed 0.9
2772 push the spawned entity upwards at speed 0.2
2773 message "&9Skill> &7You threw &aTNT&7."
2774 set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 1
2775 wait 3 seconds
2776 set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 0
2777 set action bar of player to "&a&lTNT Recharged."
2778
2779on right click:
2780 if player is holding firework rocket:
2781 if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.firework}% Fireworks":
2782 if {mineplex.%player%.cosmetics.gadgets.firework} is 0:
2783 cancel event
2784 cosmetic_system("buy", "firework", player)
2785 stop
2786 if {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} is 1:
2787 set action bar of player to "&f&lFireworks &f&lis recharging..."
2788 cancel event
2789 stop
2790 remove 1 from {mineplex.%player%.cosmetics.gadgets.firework}
2791 cancel event
2792 set {firework} to a random integer from 1 to 15
2793 if {firework} is 1:
2794 launch creeper firework colored red at player timed 1
2795 if {firework} is 2:
2796 launch burst firework colored green at player timed 1
2797 if {firework} is 3:
2798 launch ball firework colored yellow at player timed 1
2799 if {firework} is 4:
2800 launch ball firework colored blue at player timed 1
2801 if {firework} is 5:
2802 launch burst firework colored red at player timed 1
2803 if {firework} is 6:
2804 launch creeper firework colored light green at player timed 1
2805 if {firework} is 7:
2806 launch burst firework colored light green at player timed 1
2807 if {firework} is 8:
2808 launch ball firework colored orange at player timed 1
2809 if {firework} is 9:
2810 launch burst firework colored orange at player timed 1
2811 if {firework} is 10:
2812 launch creeper firework colored pink at player timed 1
2813 if {firework} is 11:
2814 launch burst firework colored orange at player timed 1
2815 if {firework} is 12:
2816 launch burst firework colored light green at player timed 1
2817 if {firework} is 13:
2818 launch burst firework colored blue at player timed 1
2819 if {firework} is 14:
2820 launch burst firework colored blue at player timed 1
2821 if {firework} is 15:
2822 launch burst firework colored yellow at player timed 1
2823 set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 1
2824 message "&9Skill> &7You used &aFireworks&7."
2825 wait 10 ticks
2826 set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 0
2827 set action bar of player to "&a&lFireworks Recharged."
2828on right click:
2829 if player is holding coal:
2830 if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.coal}% Coal":
2831 if {mineplex.%player%.cosmetics.gadgets.coal} is 0:
2832 message "&9Coal> &7You should go and get some coal..."
2833 stop
2834 if {mineplex.%player%.cosmetics.gadgets.coalCooldown} is 1:
2835 set action bar of player to "&f&lCoal &f&lis recharging..."
2836 cancel event
2837 stop
2838 message "&9Skill> &7You used &aCoal&7."
2839 set {coalMessage} to a random integer from 1 to 10
2840 if {coalMessage} is 1:
2841 message "&9Coal> &7Maybe you could... eat it?"
2842 if {coalMessage} is 2:
2843 message "&9Coal> &7Now... if you only had a furnace."
2844 if {coalMessage} is 3:
2845 message "&9Coal> &7Did you know a diamond is formed from coal?"
2846 if {coalMessage} is 4:
2847 message "&9Coal> &7Coal is a word that sounds wierd if you say it too much."
2848 if {coalMessage} is 5:
2849 message "&9Coal> &7Did you know coal is used for &knothing&7!"
2850 if {coalMessage} is 6:
2851 message "&9Coal> &7I hope you didn't miss any diamonds."
2852 if {coalMessage} is 7:
2853 message "&9Coal> &7Na na na na, Na na na na, &8BLACK COAL"
2854 if {coalMessage} is 8:
2855 message "&9Coal> &7With 9 of these you could make a Block."
2856 if {coalMessage} is 9:
2857 message "&9Coal> &7Lava is hotter, but coal is quicker."
2858 if {coalMessage} is 10:
2859 message "&9Coal> &7For what do you even need Coal on a Minigame server?"
2860 set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 1
2861 wait 10 ticks
2862 set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 0
2863 set action bar of player to "&a&lCoal Recharged."
2864
2865#Slime mount test
2866on right click on slime:
2867 if {currentmount.%player%} is not set:
2868 delete {currentmount.%player%}
2869 message "&9Mount> &7This is not your mount."
2870 else:
2871 if {currentmount.%player%} is the clicked entity:
2872 make the player ride the clicked entity
2873 else:
2874 message "&9Mount> &7This is not your mount."
2875
2876
2877
2878on explode:
2879 create a safe explosion with force 3
2880 cancel event
2881
2882on damage:
2883 attacker's name contains "Slime"
2884 set damage to 0
2885 cancel event
2886
2887#Morph Disablers (Quit)
2888on quit:
2889 if {mineplex.currentmorph.%player%} is "Creeper Morph":
2890 cosmetic_system("use", "morph_creeper", player)
2891 if {mineplex.currentmorph.%player%} is "Slime Morph":
2892 cosmetic_system("use", "morph_slime", player)
2893 if {mineplex.currentmorph.%player%} is "Cow Morph":
2894 cosmetic_system("use", "morph_cow", player)
2895 if {mineplex.currentmorph.%player%} is "Villager Morph":
2896 cosmetic_system("use", "morph_villager", player)
2897 if {mineplex.currentmorph.%player%} is "Wither Morph":
2898 cosmetic_system("use", "morph_wither", player)
2899
2900#Treasure System
2901
2902function resetPoints(p: offline player, l: number) :: number:
2903 delete {mineplex.chestbusy.%{_l}%}
2904 delete {mineplex.inchest.%{_p}%}
2905 delete {mineplex.chestsopened.%{_p}%}
2906 set block at {mineplex.chestpoint.%{_l}%.sub.1} to air
2907 set block at {mineplex.chestpoint.%{_l}%.sub.2} to air
2908 set block at {mineplex.chestpoint.%{_l}%.sub.3} to air
2909 set block at {mineplex.chestpoint.%{_l}%.sub.4} to air
2910 set block at {mineplex.chestpoint.%{_l}%.sub.5} to air
2911 set block at {mineplex.chestpoint.%{_l}%.sub.6} to air
2912 set block at {mineplex.chestpoint.%{_l}%.sub.7} to air
2913 set block at {mineplex.chestpoint.%{_l}%.sub.8} to air
2914 set block at {mineplex.chestpoint.%{_l}%} to chest
2915
2916function rewardTreasure(p: player , c: number , l: number , s: number) :: number:
2917 set {_mineplex.chestpoint.%{_l}%.sub.%{_s}%} to {mineplex.chestpoint.%{_l}%.sub.%{_s}%}
2918 add 0 to y-coordinate of {_mineplex.chestpoint.%{_l}%.sub.%{_s}%}
2919 if {_c} is 3:
2920 set {_r} to a random integer between 1 and 350
2921 if {_r} is 50:
2922 if {mineplex.rank.%{_p}%} is "":
2923 set {_ra} to "ULTRA"
2924 else if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
2925 set {_ra} to "HERO"
2926 else if {mineplex.rank.%{_p}%} is "&d&lHERO ":
2927 set {_ra} to "LEGEND"
2928 else if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
2929 set {_ra} to "TITAN"
2930 else if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
2931 set {_ra} to "ETERNAL"
2932 else:
2933 set {_ra} to a random integer between 2750 and 3750
2934 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
2935 addShards({_p}, {_ra})
2936 wait 2.25 seconds
2937 execute console command "/rank set %{_p}% %{_ra}%"
2938 broadcast "&9Treasure> &e%{_p}% &7found &cMythical %{_ra}% Rank&7."
2939 send all players title "&eTreasure" with subtitle "&f%{_p}% has found &cMythical Rank Upgrade" for 10 seconds
2940 else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55:
2941 set {_ra} to a random integer between 1500 and 2250
2942 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
2943 addShards({_p}, {_ra})
2944 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:
2945 set {_ra} to a random integer between 1025 and 1495
2946 broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7."
2947 addShards({_p}, {_ra})
2948 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:
2949 set {_ra} to a random integer between 525 and 985
2950 send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p}
2951 addShards({_p}, {_ra})
2952 else:
2953 set {_ra} to a random integer between 150 and 499
2954 send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p}
2955 addShards({_p}, {_ra})
2956 else:
2957 set {_r} to a random integer between 1 and 350
2958 if {_r} is 50:
2959 set {_ra} to a random integer between 2750 and 3750
2960 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
2961 addShards({_p}, {_ra})
2962 else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55:
2963 set {_ra} to a random integer between 1500 and 2250
2964 broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
2965 addShards({_p}, {_ra})
2966 wait 2.25 seconds
2967 resetPoints({_p}, {_l})
2968 delete {mineplex.inchest.%{_p}%}
2969 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:
2970 set {_ra} to a random integer between 1025 and 1495
2971 broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7."
2972 addShards({_p}, {_ra})
2973 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:
2974 set {_ra} to a random integer between 525 and 985
2975 send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p}
2976 addShards({_p}, {_ra})
2977 else:
2978 set {_ra} to a random integer between 150 and 499
2979 send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p}
2980 addShards({_p}, {_ra})
2981
2982on join:
2983 if {oldchests.%player%} is not set:
2984 set {oldchests.%player%} to 0
2985 if {ancientchests.%player%} is not set:
2986 set {ancientchests.%player%} to 0
2987 if {mythicalchests.%player%} is not set:
2988 set {mythicalchests.%player%} to 0
2989
2990function buyChest(p: player, n: number) :: player:
2991 if {_n} is 1:
2992 if {mineplex.shards.%{_p}%} >= 1000:
2993 close {_p}'s inventory
2994 wait 3 ticks
2995 open chest with 6 rows named " Confirmation" to {_p}
2996 wait 5 ticks
2997 set {_slot} to 0
2998 format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
2999 loop 44 times:
3000 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3001 add 1 to {_slot}
3002 loop 10 times:
3003 wait 0.4 ticks
3004 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3005 add 1 to {slot}
3006 delShards({_p}, 1000)
3007 add 1 to {oldchests.%{_p}%}
3008 wait 10 ticks
3009 close {_p}'s inventory
3010 else:
3011 close {_p}'s inventory
3012 wait 3 ticks
3013 open chest with 6 rows named " Confirmation" to {_p}
3014 wait 5 ticks
3015 format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3016 set {_slot} to 0
3017 loop 54 times:
3018 format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3019 add 1 to {_slot}
3020 wait 10 ticks
3021 close {_p}'s inventory
3022 if {_n} is 2:
3023 if {mineplex.shards.%{_p}%} >= 5000:
3024 close {_p}'s inventory
3025 wait 3 ticks
3026 open chest with 6 rows named " Confirmation" to {_p}
3027 wait 5 ticks
3028 set {_slot} to 0
3029 format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3030 loop 44 times:
3031 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3032 add 1 to {_slot}
3033 loop 10 times:
3034 wait 0.4 ticks
3035 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3036 add 1 to {slot}
3037 remove 5000 from {mineplex.shards.%{_p}%}
3038 delShards({_p}, 5000)
3039 add 1 to {ancientchests.%{_p}%}
3040 wait 10 ticks
3041 close {_p}'s inventory
3042 else:
3043 close {_p}'s inventory
3044 wait 3 ticks
3045 open chest with 6 rows named " Confirmation" to {_p}
3046 wait 5 ticks
3047 format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3048 set {_slot} to 0
3049 loop 54 times:
3050 format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3051 add 1 to {_slot}
3052 wait 10 ticks
3053 close {_p}'s inventory
3054 if {_n} is 3:
3055 if {mineplex.shards.%{_p}%} >= 10000:
3056 close {_p}'s inventory
3057 wait 3 ticks
3058 open chest with 6 rows named " Confirmation" to {_p}
3059 wait 5 ticks
3060 set {_slot} to 0
3061 format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3062 loop 44 times:
3063 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3064 add 1 to {_slot}
3065 loop 10 times:
3066 wait 0.4 ticks
3067 format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
3068 add 1 to {slot}
3069 delShards({_p}, 10000)
3070 add 1 to {mythicalchests.%{_p}%}
3071 wait 10 ticks
3072 close {_p}'s inventory
3073 else:
3074 close {_p}'s inventory
3075 wait 3 ticks
3076 open chest with 6 rows named " Confirmation" to {_p}
3077 wait 5 ticks
3078 format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3079 set {_slot} to 0
3080 loop 54 times:
3081 format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
3082 add 1 to {_slot}
3083 wait 10 ticks
3084 close {_p}'s inventory
3085
3086function openTreasure(p: player , c: number , l: number) :: number:
3087 if {_c} is 1:
3088 if {oldchests.%{_p}%} < 1:
3089 close {_p}'s inventory
3090 wait 2 ticks
3091 open chest with 6 rows named " Confirmation" to {_p}
3092 wait 1 tick
3093 format slot 4 of {_p} with prismarine shard named "&b&l1000 Shards" to be unstealable
3094 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
3095 format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3096 format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3097 format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3098 format slot 33 of {_p} with redstone block named "&cNO" to close
3099 format slot 34 of {_p} with redstone block named "&cNO" to close
3100 format slot 35 of {_p} with redstone block named "&cNO" to close
3101 format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3102 format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3103 format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3104 format slot 42 of {_p} with redstone block named "&cNO" to close
3105 format slot 43 of {_p} with redstone block named "&cNO" to close
3106 format slot 44 of {_p} with redstone block named "&cNO" to close
3107 format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3108 format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3109 format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
3110 format slot 51 of {_p} with redstone block named "&cNO" to close
3111 format slot 52 of {_p} with redstone block named "&cNO" to close
3112 format slot 53 of {_p} with redstone block named "&cNO" to close
3113 if {oldchests.%{_p}%} >= 1:
3114 remove 1 from {oldchests.%{_p}%}
3115 set {mineplex.chestbusy.%{_l}%.} to {_p}
3116 send {_p} title "&eOld Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
3117 set {mineplex.inchest.%{_p}%} to {_l}
3118 set block at {mineplex.chestpoint.%{_l}%} to air
3119 teleport {_p} to {mineplex.chestpoint.%{_l}%}
3120 send "&9Treasure> &7Choose 4 chests to open" to {_p}
3121 wait 1.2 seconds
3122 set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
3123 set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
3124 set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
3125 set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
3126 set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
3127 set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
3128 set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
3129 set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
3130 set {_get} to getPlayerdata({_p}, "stats.global.chests")
3131 set {_cur} to {_get} parsed as a number
3132 add 1 to {_cur}
3133 setPlayerdata({_p}, "stats.global.chests", "%{_cur}%")
3134 if {_c} is 2:
3135 if {ancientchests.%{_p}%} < 1:
3136 close {_p}'s inventory
3137 wait 2 ticks
3138 open chest with 6 rows named " Confirmation" to {_p}
3139 wait 1 tick
3140 format slot 4 of {_p} with prismarine shard named "&b&l5000 Shards" to be unstealable
3141 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
3142 format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3143 format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3144 format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3145 format slot 33 of {_p} with redstone block named "&cNO" to close
3146 format slot 34 of {_p} with redstone block named "&cNO" to close
3147 format slot 35 of {_p} with redstone block named "&cNO" to close
3148 format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3149 format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3150 format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3151 format slot 42 of {_p} with redstone block named "&cNO" to close
3152 format slot 43 of {_p} with redstone block named "&cNO" to close
3153 format slot 44 of {_p} with redstone block named "&cNO" to close
3154 format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3155 format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3156 format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
3157 format slot 51 of {_p} with redstone block named "&cNO" to close
3158 format slot 52 of {_p} with redstone block named "&cNO" to close
3159 format slot 53 of {_p} with redstone block named "&cNO" to close
3160 if {ancientchests.%{_p}%} >= 1:
3161 remove 1 from {ancientchests.%{_p}%}
3162 set {mineplex.chestbusy.%{_l}%.} to {_p}
3163 send {_p} title "&6Ancient Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
3164 set {mineplex.inchest.%{_p}%} to {_l}
3165 set block at {mineplex.chestpoint.%{_l}%} to air
3166 teleport {_p} to {mineplex.chestpoint.%{_l}%}
3167 send "&9Treasure> &7Choose 4 chests to open" to {_p}
3168 wait 2.5 seconds
3169 set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
3170 set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
3171 set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
3172 set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
3173 set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
3174 set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
3175 set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
3176 set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
3177 if {_c} is 3:
3178 if {mythicalchests.%{_p}%} < 1:
3179 close {_p}'s inventory
3180 wait 2 ticks
3181 open chest with 6 rows named " Confirmation" to {_p}
3182 wait 1 tick
3183 format slot 4 of {_p} with prismarine shard named "&b&l10000 Shards" to be unstealable
3184 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
3185 format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3186 format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3187 format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3188 format slot 33 of {_p} with redstone block named "&cNO" to close
3189 format slot 34 of {_p} with redstone block named "&cNO" to close
3190 format slot 35 of {_p} with redstone block named "&cNO" to close
3191 format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3192 format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3193 format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3194 format slot 42 of {_p} with redstone block named "&cNO" to close
3195 format slot 43 of {_p} with redstone block named "&cNO" to close
3196 format slot 44 of {_p} with redstone block named "&cNO" to close
3197 format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3198 format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3199 format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
3200 format slot 51 of {_p} with redstone block named "&cNO" to close
3201 format slot 52 of {_p} with redstone block named "&cNO" to close
3202 format slot 53 of {_p} with redstone block named "&cNO" to close
3203 if {mythicalchests.%{_p}%} >= 1:
3204 remove 1 from {mythicalchests.%{_p}%}
3205 set {mineplex.chestbusy.%{_l}%.} to {_p}
3206 send {_p} title "&cMythical Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
3207 set {mineplex.inchest.%{_p}%} to {_l}
3208 set block at {mineplex.chestpoint.%{_l}%} to air
3209 teleport {_p} to {mineplex.chestpoint.%{_l}%}
3210 send "&9Treasure> &7Choose 4 chests to open" to {_p}
3211 wait 2.5 seconds
3212 set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
3213 set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
3214 set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
3215 set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
3216 set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
3217 set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
3218 set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
3219 set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
3220
3221on inventory click:
3222 if inventory name of player's current inventory is " Confirmation":
3223 cancel event
3224 close player's inventory
3225
3226function TreasurePage(p: player , n: number , c: number) :: player:
3227 if {_N} is 2:
3228 if {_C} is 1:
3229 close {_p}'s inventory
3230 wait 4 ticks
3231 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3232 wait 2 ticks
3233 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}]
3234 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}]
3235 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}]
3236 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}]
3237 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}]
3238 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}]
3239 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
3240 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}]
3241 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}]
3242 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 1)]
3243 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
3244 else if {_C} is 2:
3245 close {_p}'s inventory
3246 wait 4 ticks
3247 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3248 wait 2 ticks
3249 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}]
3250 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}]
3251 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}]
3252 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
3253 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}]
3254 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}]
3255 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}]
3256 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}]
3257 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}]
3258 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 2)]
3259 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
3260 else if {_C} is 3:
3261 close {_p}'s inventory
3262 wait 4 ticks
3263 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3264 wait 2 ticks
3265 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}]
3266 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}]
3267 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}]
3268 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
3269 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
3270 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}]
3271 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}]
3272 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}]
3273 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}]
3274 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 3)]
3275 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
3276 else if {_C} is 4:
3277 close {_p}'s inventory
3278 wait 4 ticks
3279 open chest with 6 rows named "Open Treasure - Page 2" to {_p}
3280 wait 2 ticks
3281 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
3282 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
3283 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
3284 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
3285 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}]
3286 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}]
3287 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}]
3288 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}]
3289 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}]
3290 format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 4)]
3291 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
3292 if {_N} is 1:
3293 if {_C} is 1:
3294 wait 2 ticks
3295 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3296 wait 2 ticks
3297 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)]
3298 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)]
3299 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)]
3300 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}]
3301 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}]
3302 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}]
3303 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
3304 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 1)]
3305 if {_C} is 2:
3306 wait 2 ticks
3307 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3308 wait 2 ticks
3309 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)]
3310 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)]
3311 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)]
3312 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}]
3313 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}]
3314 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}]
3315 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
3316 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 2)]
3317 if {_C} is 3:
3318 wait 2 ticks
3319 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3320 wait 2 ticks
3321 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)]
3322 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)]
3323 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)]
3324 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}]
3325 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}]
3326 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}]
3327 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
3328 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 3)]
3329 if {_C} is 4:
3330 wait 2 ticks
3331 open chest with 6 rows named "Open Treasure - Page 1" to {_p}
3332 wait 2 ticks
3333 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)]
3334 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)]
3335 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)]
3336 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}]
3337 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}]
3338 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}]
3339 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
3340 format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 4)]
3341
3342command /givetreasure [<string>] [<number>] [<offline player>]:
3343 permission: mineplex.admin
3344 permission message: &9Permissions> &7You do not have permission to do that.
3345 trigger:
3346 if arg-1 is set:
3347 if arg-2 is set:
3348 if arg-2 is an integer:
3349 if arg-3 is set:
3350 if arg-1 is "Mythical":
3351 add arg-2 to {mythicalchests.%arg-3%}
3352 message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Mythical Treasure Chests." to sender
3353 message "&9Treasure> &7You recieved &e%arg-2% &7Mythical Treasure Chests." to arg-3
3354 stop
3355 else if arg-1 is "Ancient":
3356 add arg-2 to {ancientchests.%arg-3%}
3357 message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Ancient Treasure Chests." to sender
3358 message "&9Treasure> &7You recieved &e%arg-2% &7Ancient Treasure Chests." to arg-3
3359 stop
3360 else if arg-1 is "old":
3361 add arg-2 to {oldchests.%arg-3%}
3362 message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Old Treasure Chests." to sender
3363 message "&9Treasure> &7You recieved &e%arg-2% &7Old Treasure Chests." to arg-3
3364 stop
3365 else:
3366 send "&9Treasure> &7Unknown Treasure [&e%arg-1%&7]." to sender
3367 stop
3368 else:
3369 send "&9Treasure> &7Please specify a player" to sender
3370 stop
3371 else if arg-2 is not an integer:
3372 send "&9Treasure> &7Unknown Integer [&e%arg-2%&7]." to sender
3373 stop
3374 else:
3375 send "&9Treasure> &7Please specify an amount." to sender
3376 stop
3377 else:
3378 send "&9Treasure> &7Listing Commands:" to sender
3379 send "&4/GiveTreasure <treasure> <amount> <name> &7Gives a player some treasure chests &4Admin" to sender
3380 stop
3381
3382every 5 ticks:
3383 loop all players:
3384 if {mineplex.inchest.%loop-player%} is set:
3385 set {_di} to distance between {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%} and loop-player
3386 if {_di} is greater than 3.11:
3387 teleport loop-player to {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%}
3388
3389every 5 ticks:
3390 loop all players:
3391 if {mineplex.inchest.%loop-player%} is set:
3392 loop players in radius 4 of loop-player:
3393 if loop-player-2 is not loop-player-1:
3394 if {mineplex.pref.ff.%loop-player-2%} is false:
3395 push the loop-player-2 upwards at speed 0.925
3396 push the loop-player-2 backwards at speed 0.825
3397 play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
3398
3399on right click on chest:
3400 if player is holding chest:
3401 if name of player's tool is "&aCosmetic Menu":
3402 stop
3403 else:
3404 send "&9MCR> &e##BlameWheezy"
3405 else:
3406 if event-block is {mineplex.chestpoint.1}:
3407 cancel event
3408 TreasurePage(player, 1, 1)
3409 if event-block is {mineplex.chestpoint.2}:
3410 cancel event
3411 TreasurePage(player, 1, 2)
3412 if event-block is {mineplex.chestpoint.3}:
3413 cancel event
3414 TreasurePage(player, 1, 3)
3415 if event-block is {mineplex.chestpoint.4}:
3416 cancel event
3417 TreasurePage(player, 1, 4)
3418
3419on right click on chest or ender chest:
3420 if player is holding chest:
3421 if name of player's tool is "&aCosmetic Menu":
3422 stop
3423 else:
3424 send "&9MCR> &e##BlameWheezy"
3425 else:
3426 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}:
3427 if {mineplex.inchest.%player%} is set:
3428 if {mineplex.chestsopened.%player%} is not set:
3429 set {mineplex.chestsopened.%player%} to 1
3430 cancel event
3431 make the event-block appear open
3432 rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
3433 loop all players:
3434 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3435 stop
3436 else if {mineplex.chestsopened.%player%} is 3:
3437 cancel event
3438 add 1 to {mineplex.chestsopened.%player%}
3439 make the event-block appear open
3440 rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
3441 loop all players:
3442 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3443 wait 3 seconds
3444 resetPoints(player, 1)
3445 execute player command "/hub"
3446 stop
3447 else if {mineplex.chestsopened.%player%} is 1 or 2:
3448 cancel event
3449 add 1 to {mineplex.chestsopened.%player%}
3450 make the event-block appear open
3451 rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
3452 loop all players:
3453 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3454 stop
3455 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3456 cancel event
3457 else:
3458 cancel event
3459 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}:
3460 if {mineplex.inchest.%player%} is set:
3461 if {mineplex.chestsopened.%player%} is not set:
3462 set {mineplex.chestsopened.%player%} to 1
3463 cancel event
3464 make the event-block appear open
3465 rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
3466 loop all players:
3467 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3468 stop
3469 else if {mineplex.chestsopened.%player%} is 3:
3470 cancel event
3471 add 1 to {mineplex.chestsopened.%player%}
3472 make the event-block appear open
3473 rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
3474 loop all players:
3475 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3476 wait 3 seconds
3477 resetPoints(player, 2)
3478 execute player command "/hub"
3479 stop
3480 else if {mineplex.chestsopened.%player%} is 1 or 2:
3481 cancel event
3482 add 1 to {mineplex.chestsopened.%player%}
3483 make the event-block appear open
3484 rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
3485 loop all players:
3486 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3487 stop
3488 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3489 cancel event
3490 else:
3491 cancel event
3492 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}:
3493 if {mineplex.inchest.%player%} is set:
3494 if {mineplex.chestsopened.%player%} is not set:
3495 set {mineplex.chestsopened.%player%} to 1
3496 cancel event
3497 make the event-block appear open
3498 rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
3499 loop all players:
3500 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3501 stop
3502 else if {mineplex.chestsopened.%player%} is 3:
3503 cancel event
3504 add 1 to {mineplex.chestsopened.%player%}
3505 make the event-block appear open
3506 rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
3507 loop all players:
3508 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3509 wait 3 seconds
3510 resetPoints(player, 3)
3511 execute player command "/hub"
3512 stop
3513 else if {mineplex.chestsopened.%player%} is 1 or 2:
3514 cancel event
3515 add 1 to {mineplex.chestsopened.%player%}
3516 make the event-block appear open
3517 rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
3518 loop all players:
3519 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3520 stop
3521 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3522 cancel event
3523 else:
3524 cancel event
3525 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}:
3526 if {mineplex.inchest.%player%} is set:
3527 if {mineplex.chestsopened.%player%} is not set:
3528 set {mineplex.chestsopened.%player%} to 1
3529 cancel event
3530 make the event-block appear open
3531 rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
3532 loop all players:
3533 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3534 stop
3535 else if {mineplex.chestsopened.%player%} is 3:
3536 cancel event
3537 add 1 to {mineplex.chestsopened.%player%}
3538 make the event-block appear open
3539 rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
3540 loop all players:
3541 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3542 wait 3 seconds
3543 resetPoints(player, 4)
3544 execute player command "/hub"
3545 stop
3546 else if {mineplex.chestsopened.%player%} is 1 or 2:
3547 cancel event
3548 add 1 to {mineplex.chestsopened.%player%}
3549 make the event-block appear open
3550 rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
3551 loop all players:
3552 show 200 "flame" particles at location 0.1 metres above event-block for loop-player
3553 stop
3554 else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
3555 cancel event
3556 else:
3557 cancel event
3558
3559on quit:
3560 set {_p} to player
3561 if {mineplex.inchest.%{_p}%} is set:
3562 resetPoints({_p}, {mineplex.inchest.%{_p}%})
3563 delete {mineplex.inchest.%{_p}%}
3564#Scoreboard
3565
3566every 2 seconds:
3567 if {mineplex.usescoreboard} is false:
3568 stop
3569 else:
3570 loop all players:
3571 wipe loop-player's sidebar
3572 set {_fc} to convert string {mineplex.config.servername} to uppercase
3573 set name of sidebar of loop-player to "&6&l%{_fc}%"
3574 set score "&b&lServer" in sidebar of loop-player to 15
3575 set score "&f%{mineplex.config.world}%" in sidebar of loop-player to 14
3576 set score "&1 " in sidebar of loop-player to 13
3577 set score "&a&lGems" in sidebar of loop-player to 12
3578 set score "&r%{mineplex.gems.%loop-player%}%" in sidebar of loop-player to 11
3579 set score "&2 " in sidebar of loop-player to 10
3580 set score "&e&lShards" in sidebar of loop-player to 9
3581 set score "&f%{mineplex.shards.%loop-player%}%" in sidebar of loop-player to 8
3582 set score "&3 " in sidebar of loop-player to 7
3583 set score "&6&lRank" in sidebar of loop-player to 6
3584 set score "&f%{mineplex.api.displayrank.%loop-player%}%" in sidebar of loop-player to 5
3585 set score "&4 " in sidebar of loop-player to 4
3586 set score "&c&lWebsite" in sidebar of loop-player to 3
3587 set score "&f%{mineplex.config.website}%" in sidebar of loop-player to 2
3588 set score "&f----------------" in sidebar of loop-player to 1
3589
3590#Rank Loader
3591
3592function rankLoad(p: player , n: number , t: number) :: string:
3593 if {_n} is 1:
3594 if {mineplex.testrank.%{_p}%} is set:
3595 if {_t} is 0:
3596 set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%}
3597 delete {mineplex.testrank.%{_p}%}
3598 if {mineplex.rank.%{_p}%} is not set:
3599 set {mineplex.rank.%{_p}%} to ""
3600 if {mineplex.rank.%{_p}%} is "":
3601 execute console command "/rank set %{_p}% ALL"
3602 set {_p} tab name to "&e%{_p}%"
3603 set {mineplex.displaya.%{_p}%} to "&fPlayer"
3604 set {mineplex.colora.%{_p}%} to "§f"
3605 return "&fPlayer"
3606 if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
3607 execute console command "/rank set %{_p}% ULTRA"
3608 set {_p} tab name to "&b&lULTRA &e%{_p}%"
3609 set {mineplex.displaya.%{_p}%} to "&bUltra"
3610 set {mineplex.colora.%{_p}%} to "§b"
3611 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}%"
3612 return "&bUltra"
3613 if {mineplex.rank.%{_p}%} is "&d&lHERO ":
3614 execute console command "/rank set %{_p}% HERO"
3615 set {_p} tab name to "&d&lHERO &e%{_p}%"
3616 set {mineplex.displaya.%{_p}%} to "&dHero"
3617 set {mineplex.colora.%{_p}%} to "§d"
3618 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}%"
3619 return "&dHero"
3620 if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
3621 execute console command "/rank set %{_p}% LEGEND"
3622 set {_p} tab name to "&a&lLEGEND &e%{_p}%"
3623 set {mineplex.displaya.%{_p}%} to "&aLegend"
3624 set {mineplex.colora.%{_p}%} to "§a"
3625 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}%"
3626 return "&aLegend"
3627 if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
3628 execute console command "/rank set %{_p}% TITAN"
3629 set {_p} tab name to "&c&lTITAN &e%{_p}%"
3630 set {mineplex.displaya.%{_p}%} to "&cTitan"
3631 set {mineplex.colora.%{_p}%} to "§c"
3632 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}%"
3633 return "&cTitan"
3634 if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ":
3635 execute console command "/rank set %{_p}% TRAINEE"
3636 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3637 if loop-value is {_p}:
3638 set {_p} tab name to "&6&lP.TRAINEE &e%{_p}%"
3639 else:
3640 set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
3641 set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
3642 set {mineplex.displaya.%{_p}%} to "&6Trainee"
3643 set {mineplex.colora.%{_p}%} to "§6"
3644 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."
3645 return "&6Trainee"
3646 if {mineplex.rank.%{_p}%} is "&6&lMOD ":
3647 execute console command "/rank set %{_p}% MODERATOR"
3648 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3649 if loop-value is {_p}:
3650 set {_p} tab name to "&6&lP.MOD &e%{_p}%"
3651 else:
3652 set {_p} tab name to "&6&lMOD &e%{_p}%"
3653 set {mineplex.displaya.%{_p}%} to "&6Mod"
3654 set {mineplex.colora.%{_p}%} to "§6"
3655 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."
3656 return "&6Mod"
3657 if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ":
3658 execute console command "/rank set %{_p}% SNR_MODERATOR"
3659 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3660 if loop-value is {_p}:
3661 set {_p} tab name to "&6&lP.SR.MOD &e%{_p}%"
3662 else:
3663 set {_p} tab name to "&6&lSR.MOD &e%{_p}%"
3664 set {mineplex.displaya.%{_p}%} to "&6Sr.Mod"
3665 set {mineplex.colora.%{_p}%} to "§6"
3666 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."
3667 return "&6Sr.Mod"
3668 if {mineplex.rank.%{_p}%} is "&6&lC.MOD ":
3669 execute console command "/rank set %{_p}% CLANS_MOD"
3670 set {_p} tab name to "&6&lC.MOD &e%{_p}%"
3671 set {mineplex.displaya.%{_p}%} to "&6C.Mod"
3672 set {mineplex.colora.%{_p}%} to "§6"
3673 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."
3674 return "&6C.Mod"
3675 if {mineplex.rank.%{_p}%} is "&4&lADMIN ":
3676 execute console command "/rank set %{_p}% ADMIN"
3677 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3678 if loop-value is {_p}:
3679 set {_p} tab name to "&6&lP.ADMIN &e%{_p}%"
3680 else:
3681 set {_p} tab name to "&4&lADMIN &e%{_p}%"
3682 set {mineplex.displaya.%{_p}%} to "&4Admin"
3683 set {mineplex.colora.%{_p}%} to "§4"
3684 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."
3685 return "&4Admin"
3686 if {mineplex.rank.%{_p}%} is "&9&lAPEX ":
3687 execute console command "/rank set %{_p}% APEX"
3688 set {_p} tab name to "&9&lAPEX &e%{_p}%"
3689 set {mineplex.displaya.%{_p}%} to "&9Apex"
3690 set {mineplex.colora.%{_p}%} to "§4"
3691 set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!"
3692 return "&9Apex"
3693 if {mineplex.rank.%{_p}%} is "&4&lLEADER ":
3694 execute console command "/rank set %{_p}% LEADER"
3695 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3696 if loop-value is {_p}:
3697 set {_p} tab name to "&6&lP.LEADER &e%{_p}%"
3698 else:
3699 set {_p} tab name to "&4&lLEADER &e%{_p}%"
3700 set {mineplex.displaya.%{_p}%} to "&4Leader"
3701 set {mineplex.colora.%{_p}%} to "§4"
3702 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."
3703 return "&4Leader"
3704 if {mineplex.rank.%{_p}%} is "&4&lOWNER ":
3705 execute console command "/rank set %{_p}% OWNER"
3706 loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
3707 if loop-value is {_p}:
3708 set {_p} tab name to "&6&lP.OWNER &e%{_p}%"
3709 else:
3710 set {_p} tab name to "&4&lOWNER &e%{_p}%"
3711 set {mineplex.displaya.%{_p}%} to "&4Owner"
3712 set {mineplex.colora.%{_p}%} to "§4"
3713 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."
3714 return "&4Owner"
3715 if {mineplex.rank.%{_p}%} is "&9&lBUILDER ":
3716 execute console command "/rank set %{_p}% BUILDER"
3717 set {_p} tab name to "&9&lBUIDLER &e%{_p}%"
3718 set {mineplex.displaya.%{_p}%} to "&9Mapper"
3719 set {mineplex.colora.%{_p}%} to "§9"
3720 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."
3721 return "&9Builder"
3722 if {mineplex.rank.%{_p}%} is "&9&lMAPPER ":
3723 execute console command "/rank set %{_p}% MAPPER"
3724 set {_p} tab name to "&9&lMAPPER &e%{_p}%"
3725 set {mineplex.displaya.%{_p}%} to "&9Mapper"
3726 set {mineplex.colora.%{_p}%} to "§9"
3727 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!"
3728 return "&9Mapper"
3729 if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ":
3730 execute console command "/rank set %{_p}% MAPLEAD"
3731 set {_p} tab name to "&9&lMAPLEAD &e%{_p}%"
3732 set {mineplex.displaya.%{_p}%} to "&9MapLead"
3733 set {mineplex.colora.%{_p}%} to "§9"
3734 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."
3735 return "&9MapLead"
3736 if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ":
3737 execute console command "/rank set %{_p}% JNR_DEV"
3738 set {mineplex.displaya.%{_p}%} to "&6Jr.Dev"
3739 set {mineplex.colora.%{_p}%} to "§c"
3740 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."
3741 return "&6Jr.Dev"
3742 if {mineplex.rank.%{_p}%} is "&4&lDEV ":
3743 execute console command "/rank set %{_p}% DEVELOPER"
3744 set {_p} tab name to "&4&lDEV &e%{_p}%"
3745 set {mineplex.displaya.%{_p}%} to "&4Dev"
3746 set {mineplex.colora.%{_p}%} to "§4"
3747 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."
3748 return "&4Dev"
3749 if {mineplex.rank.%{_p}%} is "&5&lTWITCH ":
3750 execute console command "/rank set %{_p}% TWITCH"
3751 set {_p} tab name to "&5&lTWITCH &e%{_p}%"
3752 set {mineplex.displaya.%{_p}%} to "&5Twitch"
3753 set {mineplex.colora.%{_p}%} to "§5"
3754 set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams."
3755 return "&5Twitch"
3756 if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ":
3757 execute console command "/rank set %{_p}% YOUTUBE"
3758 set {_p} tab name to "&c&lYOUTUBE &e%{_p}%"
3759 set {mineplex.displaya.%{_p}%} to "&cYouTube"
3760 set {mineplex.colora.%{_p}%} to "§c"
3761 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."
3762 return "&cYouTube"
3763 if {mineplex.rank.%{_p}%} is "&f&lEVENT ":
3764 execute console command "/rank set %{_p}% EVENT"
3765 set {_p} tab name to "&f&lEVENT &e%{_p}%"
3766 set {mineplex.displaya.%{_p}%} to "&fEvent"
3767 set {mineplex.colora.%{_p}%} to "§f"
3768 set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???"
3769 return "&fEvent"
3770 if {mineplex.rank.%{_p}%} is "&5&lYT ":
3771 execute console command "/rank set %{_p}% YT"
3772 set {_p} tab name to "&5&lYT &e%{_p}%"
3773 set {mineplex.displaya.%{_p}%} to "&5YT"
3774 set {mineplex.colora.%{_p}%} to "§5"
3775 set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex."
3776 return "&5YT"
3777 if {mineplex.rank.%{_p}%} is "&3&lETERNAL ":
3778 execute console command "/rank set %{_p}% ETERNAL"
3779 set {_p} tab name to "&3&lETERNAL &e%{_p}%"
3780 set {mineplex.displaya.%{_p}%} to "&3Eternal"
3781 set {mineplex.colora.%{_p}%} to "§3"
3782 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}%"
3783 return "&3Eternal"
3784 if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ":
3785 execute console command "/rank set %{_p}% SUPPORT"
3786 set {mineplex.displaya.%{_p}%} to "&9Support"
3787 set {mineplex.colora.%{_p}%} to "§9"
3788 set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service."
3789 return "&9Support"
3790 if {mineplex.rank.%{_p}%} is "&9&lARTIST ":
3791 execute console command "/rank set %{_p}% ARTIST"
3792 set {mineplex.displaya.%{_p}%} to "&9Artist"
3793 set {mineplex.colora.%{_p}%} to "§9"
3794 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."
3795 return "&9Artist"
3796 else if {_n} is 2:
3797 if {mineplex.testrank.%{_p}%} is set:
3798 if {_t} is 0:
3799 set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%}
3800 delete {mineplex.testrank.%{_p}%}
3801 if {mineplex.rank.%{_p}%} is not set:
3802 set {mineplex.rank.%{_p}%} to ""
3803 if {mineplex.rank.%{_p}%} is "":
3804 set {_p} tab name to "&e%{_p}%"
3805 set {mineplex.displaya.%{_p}%} to "&fPlayer"
3806 set {mineplex.colora.%{_p}%} to "§f"
3807 return "&fPlayer"
3808 if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
3809 set {_p} tab name to "&b&lULTRA &e%{_p}%"
3810 set {mineplex.displaya.%{_p}%} to "&bUltra"
3811 set {mineplex.colora.%{_p}%} to "§b"
3812 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}%"
3813 return "&bUltra"
3814 if {mineplex.rank.%{_p}%} is "&d&lHERO ":
3815 set {_p} tab name to "&d&lHERO &e%{_p}%"
3816 set {mineplex.displaya.%{_p}%} to "&dHero"
3817 set {mineplex.colora.%{_p}%} to "§d"
3818 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}%"
3819 return "&dHero"
3820 if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
3821 set {_p} tab name to "&a&lLEGEND &e%{_p}%"
3822 set {mineplex.displaya.%{_p}%} to "&aLegend"
3823 set {mineplex.colora.%{_p}%} to "§a"
3824 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}%"
3825 return "&aLegend"
3826 if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
3827 set {_p} tab name to "&c&lTITAN &e%{_p}%"
3828 set {mineplex.displaya.%{_p}%} to "&cTitan"
3829 set {mineplex.colora.%{_p}%} to "§c"
3830 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}%"
3831 return "&cTitan"
3832 if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ":
3833 set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
3834 set {mineplex.displaya.%{_p}%} to "&6Trainee"
3835 set {mineplex.colora.%{_p}%} to "§6"
3836 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."
3837 return "&6Trainee"
3838 if {mineplex.rank.%{_p}%} is "&6&lMOD ":
3839 set {_p} tab name to "&6&lMOD &e%{_p}%"
3840 set {mineplex.displaya.%{_p}%} to "&6Mod"
3841 set {mineplex.colora.%{_p}%} to "§6"
3842 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."
3843 return "&6Mod"
3844 if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ":
3845 set {_p} tab name to "&6&lSR.MOD &e%{_p}%"
3846 set {mineplex.displaya.%{_p}%} to "&6Sr.Mod"
3847 set {mineplex.colora.%{_p}%} to "§6"
3848 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."
3849 return "&6Sr.Mod"
3850 if {mineplex.rank.%{_p}%} is "&6&lC.MOD ":
3851 set {_p} tab name to "&6&lC.MOD &e%{_p}%"
3852 set {mineplex.displaya.%{_p}%} to "&6C.Mod"
3853 set {mineplex.colora.%{_p}%} to "§6"
3854 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."
3855 return "&6C.Mod"
3856 if {mineplex.rank.%{_p}%} is "&4&lADMIN ":
3857 set {_p} tab name to "&4&lADMIN &e%{_p}%"
3858 set {mineplex.displaya.%{_p}%} to "&4Admin"
3859 set {mineplex.colora.%{_p}%} to "§4"
3860 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."
3861 return "&4Admin"
3862 if {mineplex.rank.%{_p}%} is "&9&lAPEX ":
3863 set {_p} tab name to "&9&lAPEX &e%{_p}%"
3864 set {mineplex.displaya.%{_p}%} to "&9Apex"
3865 set {mineplex.colora.%{_p}%} to "§4"
3866 set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!"
3867 return "&9Apex"
3868 if {mineplex.rank.%{_p}%} is "&4&lLEADER ":
3869 set {_p} tab name to "&4&lLEADER &e%{_p}%"
3870 set {mineplex.displaya.%{_p}%} to "&4Leader"
3871 set {mineplex.colora.%{_p}%} to "§4"
3872 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."
3873 return "&4Leader"
3874 if {mineplex.rank.%{_p}%} is "&4&lOWNER ":
3875 set {_p} tab name to "&4&lOWNER &e%{_p}%"
3876 set {mineplex.displaya.%{_p}%} to "&4Owner"
3877 set {mineplex.colora.%{_p}%} to "§4"
3878 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."
3879 return "&4Owner"
3880 if {mineplex.rank.%{_p}%} is "&9&lBUILDER ":
3881 set {_p} tab name to "&9&lBUIDLER &e%{_p}%"
3882 set {mineplex.displaya.%{_p}%} to "&8Builder"
3883 set {mineplex.colora.%{_p}%} to "§9"
3884 set {mineplex.hover.%{_p}%} to "&9&lBUILDER%nl%&fThese creative staff members help build maps for your favorite games!"
3885 return "&9Builder"
3886 if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ":
3887 set {_p} tab name to "&9&lMAPLEAD &e%{_p}%"
3888 set {mineplex.displaya.%{_p}%} to "&9MapLead"
3889 set {mineplex.colora.%{_p}%} to "§9"
3890 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."
3891 return "&9MapLead"
3892 if {mineplex.rank.%{_p}%} is "&9&lMAPPER ":
3893 set {_p} tab name to "&9&lMAPPER &e%{_p}%"
3894 set {mineplex.displaya.%{_p}%} to "&9Mapper"
3895 set {mineplex.colora.%{_p}%} to "§9"
3896 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!"
3897 return "&9Mapper"
3898 if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ":
3899 set {mineplex.displaya.%{_p}%} to "&6Jr.Dev"
3900 set {mineplex.colora.%{_p}%} to "§c"
3901 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."
3902 return "&6Jr.Dev"
3903 if {mineplex.rank.%{_p}%} is "&4&lDEV ":
3904 set {_p} tab name to "&4&lDEV &e%{_p}%"
3905 set {mineplex.displaya.%{_p}%} to "&4Dev"
3906 set {mineplex.colora.%{_p}%} to "§4"
3907 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."
3908 return "&4Dev"
3909 if {mineplex.rank.%{_p}%} is "&5&lTWITCH ":
3910 set {_p} tab name to "&5&lTWITCH &e%{_p}%"
3911 set {mineplex.displaya.%{_p}%} to "&5Twitch"
3912 set {mineplex.colora.%{_p}%} to "§5"
3913 set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams."
3914 return "&5Twitch"
3915 if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ":
3916 set {_p} tab name to "&c&lYOUTUBE &e%{_p}%"
3917 set {mineplex.displaya.%{_p}%} to "&cYouTube"
3918 set {mineplex.colora.%{_p}%} to "§c"
3919 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."
3920 return "&cYouTube"
3921 if {mineplex.rank.%{_p}%} is "&f&lEVENT ":
3922 set {_p} tab name to "&f&lEVENT &e%{_p}%"
3923 set {mineplex.displaya.%{_p}%} to "&fEvent"
3924 set {mineplex.colora.%{_p}%} to "§f"
3925 set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???"
3926 return "&fEvent"
3927 if {mineplex.rank.%{_p}%} is "&5&lYT ":
3928 set {_p} tab name to "&5&lYT &e%{_p}%"
3929 set {mineplex.displaya.%{_p}%} to "&5YT"
3930 set {mineplex.colora.%{_p}%} to "§5"
3931 set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex."
3932 return "&5YT"
3933 if {mineplex.rank.%{_p}%} is "&3&lETERNAL ":
3934 set {_p} tab name to "&3&lETERNAL &e%{_p}%"
3935 set {mineplex.displaya.%{_p}%} to "&3Eternal"
3936 set {mineplex.colora.%{_p}%} to "§3"
3937 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}%"
3938 return "&3Eternal"
3939 if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ":
3940 set {mineplex.displaya.%{_p}%} to "&9Support"
3941 set {mineplex.colora.%{_p}%} to "§9"
3942 set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service."
3943 return "&9Support"
3944 if {mineplex.rank.%{_p}%} is "&9&lARTIST ":
3945 set {mineplex.displaya.%{_p}%} to "&9Artist"
3946 set {mineplex.colora.%{_p}%} to "§9"
3947 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."
3948 return "&9Artist"
3949
3950on death of player:
3951 if attacker is a player:
3952 if projectile is set:
3953 set the death message to "&9Death> &e%victim% &7killed by &e%attacker% &7with &eArchery&7."
3954 if attacker is not a player:
3955 if attacker is set:
3956 set {_dm} to 1st char in each word of "%attacker%" to caps
3957 set the death message to "&9Death> &e%victim% &7killed by &e%{_dm}%&7."
3958
3959on join:
3960 wait 2 ticks
3961 rankLoad(player, 1, 0)
3962 loop all players:
3963 updateRankAPI(loop-player)
3964
3965on flight toggle:
3966 if {mineplex.config.doublejump} is "true":
3967 if {doublejump.%uuid of player%} is set:
3968 if player's gamemode is not creative:
3969 cancel event
3970 delete {doublejump.%uuid of player%}
3971 wait 0.1 tick
3972 set player's flight state to false
3973 push player upward at speed 0.3
3974 push player forward at speed 0.9
3975 play raw sound "mob.ghast.fireball" at player with pitch 2 volume 0.99
3976 else:
3977 stop
3978 else:
3979 stop
3980 else:
3981 stop
3982
3983on jump:
3984 if player's gamemode is not creative:
3985 if {doublejump.%uuid of player%} is not set:
3986 if block below player is not air or water:
3987 set player's flight state to true
3988 set {doublejump.%uuid of player%} to true
3989 else:
3990 stop
3991 else:
3992 stop
3993 else:
3994 stop
3995
3996on quit:
3997 set {mineplex.rank.uuid.%uuid of player%} to {mineplex.rank.%player%}
3998
3999#Chat System
4000
4001on chat:
4002 set {_get} to getPlayerdata(player, "muted")
4003 if {_get} is "yes":
4004 if {muted::%player%::type} is "perm":
4005 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
4006 cancel event
4007 stop
4008 if {muted::%player%::type} is "temp":
4009 set {_waited} to difference between now and {muted::%player%::when}
4010 if {_waited} is less than {muted::%player%::time}:
4011 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
4012 cancel event
4013 stop
4014 if message contains "hack" or "hax":
4015 cancel event
4016 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}%"
4017 stop
4018 if {mineplex.vanish.%player%} is false:
4019 if {mineplex.chatslow} is set:
4020 if player has permission "mineplex.mod":
4021 set {_check} to mcs((player), (message))
4022 if {_check} is less than 0:
4023 cancel event
4024 delete {_check}
4025 else:
4026 if difference between {lastChat::%player%} and now < {mineplex.chatslow}:
4027 cancel event
4028 send "&9Chat> &7Chat slow enabled. Please wait."
4029 else:
4030 set {lastChat::%player%} to now
4031 set {_check} to mcs((player), (message))
4032 if {_check} is less than 0:
4033 cancel event
4034 delete {_check}
4035 else if {mineplex.chatsilence} is set:
4036 if player has permission "mineplex.trainee":
4037 set {_check} to mcs((player), (message))
4038 if {_check} is less than 0:
4039 cancel event
4040 delete {_check}
4041 else:
4042 cancel event
4043 send "&9Chat> &7The chat is silenced."
4044 else:
4045 if {party.%player%.chat} is true:
4046 if length of message is greater than 1:
4047 if first character of message is "@":
4048 cancel event
4049 set message to "%subtext of message from characters 2 to (length of message)%"
4050 loop {party.%{party.%player%}%::*}:
4051 message "&5&lParty &f&l%player% &d%message%" to loop-value
4052 else:
4053 set {_check} to mcs((player), (message))
4054 if {_check} is less than 0:
4055 cancel event
4056 delete {_check}
4057 else:
4058 set {_check} to mcs((player), (message))
4059 if {_check} is less than 0:
4060 cancel event
4061 delete {_check}
4062 else:
4063 set {_check} to mcs((player), (message))
4064 if {_check} is less than 0:
4065 cancel event
4066 delete {_check}
4067 else if {mineplex.vanish.%player%} is true:
4068 send "&eYou can not chat while incognito."
4069 cancel event
4070 else:
4071 set {mineplex.vanish.%player%} to false
4072 set {_check} to mcs((player), (message))
4073 if {_check} is less than 0:
4074 cancel event
4075 delete {_check}
4076
4077#Join, Quit, and Load Handlers
4078
4079on join:
4080 if player has permission "mineplex.admin":
4081 $ thread
4082 set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number
4083 set {_c} to "{@MCRVER}" parsed as a number
4084 if {_c} is greater than {_ver}:
4085 send "&9MCR> &7You must be using some fancy indev version!"
4086 send "&9MCR> &7or you're retarded and changed the version in the config!"
4087 stop
4088 else if {_c} is less than {_ver}:
4089 send "&9MCR> &7Version &e%{_ver}% &7is ready for download"
4090 else:
4091 send "&9MCR> &7Your version of MCR is currently up to date!"
4092 stop
4093 send "&9MCR> &7Changelog:"
4094 $ thread
4095 set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v"
4096 loop {_var1::*}:
4097 send "%loop-value%"
4098
4099 loop {_var::*}:
4100 send "&9MCR> &7Version &e%loop-value% &7is ready for download"
4101 send "&9MCR> &7End of Changelog!"
4102 if {mineplex.gadget.enabled} is not set:
4103 set {mineplex.gadget.enabled} to true
4104 if {mineplex.report.id} is not set:
4105 set {mineplex.report.id} to 1
4106 if {mineplex.dj} is not set:
4107 set {mineplex.dj} to true
4108 if {mineplex.tntlauncher} is not set:
4109 set {mineplex.tntlauncher} to true
4110 if {poll.id.last} is not set:
4111 set {poll.id.last} to 0
4112 if {mineplex.ff.list::%player%} is set:
4113 if player does not have permission "mineplex.trainee":
4114 delete {mineplex.ff.list::%player%}
4115 delete {mineplex.pref.ff.%player%}
4116 if {mineplex.totalaccounts.%ip address of player%::*} does not contain "%player%":
4117 add "%player%" to {mineplex.totalaccounts.%ip address of player%::*}
4118
4119on load:
4120 #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
4121 set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number
4122 set {_c} to "{@MCRVER}" parsed as a number
4123 if {_c} is more than {_ver}:
4124 broadcast "&9MCR> &7You must be using some fancy indev version!"
4125 broadcast "&9MCR> &7or you're retarded and changed the version in the config!"
4126 stop
4127 else if {_c} is less than {_ver}:
4128 broadcast "&9MCR> &7Version &e%{_ver}% &7is ready for download"
4129 else:
4130 broadcast "&9MCR> &7Your version of MCR is currently up to date!"
4131 broadcast "&9MCR> &7Client Version: {@MCRVER}"
4132 broadcast "&9MCR> &7Server Version: %{_ver}%"
4133 stop
4134 broadcast "&9MCR> &7Changelog:"
4135 $ thread
4136 set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v"
4137 loop {_var1::*}:
4138 broadcast "%loop-value%"
4139
4140 loop {_var::*}:
4141 broadcast "&9MCR> &7Version &e%loop-value% &7is ready for download"
4142 broadcast "&9MCR> &7End of Changelog!"
4143 if {mineplex.gadget.enabled} is not set:
4144 set {mineplex.gadget.enabled} to true
4145 if {mineplex.report.id} is not set:
4146 set {mineplex.report.id} to 1
4147 if {mineplex.dj} is not set:
4148 set {mineplex.dj} to true
4149 if {mineplex.tntlauncher} is not set:
4150 set {mineplex.tntlauncher} to true
4151 if {poll.id.last} is not set:
4152 set {poll.id.last} to 0
4153
4154function runNews(p: player) :: boolean:
4155 set {_sn} to convert string {mineplex.config.servername} to uppercase
4156 send title from "&6&l%{_sn}%" and "%{mineplex.news.line1}%" to {_p} for 5, 70, 0
4157 wait 3 seconds
4158 send title from "&6&l%{_sn}%" and "%{mineplex.news.line2}%" to {_p} for 1, 70, 0
4159 wait 3 seconds
4160 send title from "&6&l%{_sn}%" and "%{mineplex.news.line3}%" to {_p} for 1, 70, 0
4161 wait 3 seconds
4162 send title from "&6&l%{_sn}%" and "%{mineplex.news.line4}%" to {_p} for 1, 60, 5
4163
4164on join:
4165 set join message to "&8Join> &7%player%"
4166 updateRankAPI(player)
4167 delete {mineplex.disguise.%player%}
4168 execute console command "/ud %player%"
4169 delete {mineplex.lastm.%player%}
4170 delete {mineplex.lasta.%player%}
4171 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
4172 if {mineplex.news.allow} is true:
4173 runNews(player)
4174 if {mineplex.vanish.%player%} is not set:
4175 set {mineplex.vanish.%player%} to false
4176 if {mineplex.overridechat} is not set:
4177 set {mineplex.overridechat} to true
4178 if {mineplex.vanish.%player%} is true:
4179 send ""
4180 send ""
4181 send "&6&lYou are currently incognito"
4182 send "&eThis means you are invisible to all except for those who are"
4183 send "&4&lAdmin&f+"
4184 send ""
4185 send ""
4186 if {mineplex.pref.hpv.%player%} is false:
4187 hide all players from player
4188 if {mineplex.pref.hpv.%player%} is not set:
4189 set {mineplex.pref.hpv.%player%} to true
4190 if {mineplex.pref.ff.%player%} is not set:
4191 set {mineplex.pref.ff.%player%} to false
4192 if {mineplex.ff.%player%} is not set:
4193 set {mineplex.ff.%player%} to false
4194 if {mineplex.pref.pm.%player%} is not set:
4195 set {mineplex.pref.pm.%player%} to true
4196 if {mineplex.pref.pc.%player%} is not set:
4197 set {mineplex.pref.pc.%player%} to true
4198 if {mineplex.pref.gwen.%player%} is not set:
4199 set {mineplex.pref.gwen.%player%} to true
4200 if {mineplex.pref.report.%player%} is not set:
4201 set {mineplex.pref.report.%player%} to true
4202 if {mineplex.shards.%player%} is not set:
4203 set {mineplex.shards.%player%} to 0
4204 if {mineplex.gems.%player%} is not set:
4205 set {mineplex.gems.%player%} to 0
4206 if {mineplex.particle.active.%player%} is not set:
4207 set {mineplex.particle.active.%player%} to false
4208 if {mineplex.arrorw.active} is not set:
4209 set {mineplex.arrow.active} to false
4210 if {mineplex.adminmode.%player%} is true:
4211 set {mineplex.adminmode.%player%} to false
4212 loop all players:
4213 if {mineplex.vanish.%loop-player%} is true:
4214 add loop-player to {%player%.vanishlist::*}
4215 loop all players:
4216 if loop-player does not have permission "mineplex.admin":
4217 hide {%player%.vanishlist::*} from all players
4218 delete {%player%.vanishlist::*}
4219 delete {mineplex.tp.back.%player%}
4220 if {mineplex.config.autoop} is "true":
4221 if player has permission "mineplex.admin":
4222 op the player
4223 else:
4224 deop the player
4225
4226function newsinit(i: integer) :: number:
4227 if {mineplex.mode} is "sql":
4228 set {_get} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
4229 if {_get} is not set:
4230 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('1', '§b§lMineplex Core Remake')"
4231 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('2', '§a§lThe best remake for Mineplex Commands')"
4232 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('3', '§3§lRate this on Spigot!')"
4233 update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('4', '§c§lCheck me out on SkUnity!')"
4234 set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
4235 set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'"
4236 set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'"
4237 set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'"
4238 set {mineplex.news.allow} to true
4239 else:
4240 set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
4241 set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'"
4242 set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'"
4243 set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'"
4244 else:
4245 if {mineplex.news.line1} is not set:
4246 set {mineplex.news.line1} to "§b§lMineplex Core Remake"
4247 set {mineplex.news.line2} to "§a§lThe best remake for Mineplex Commands"
4248 set {mineplex.news.line3} to "§3§lRate this on Spigot!"
4249 set {mineplex.news.line4} to "§c§lCheck me out on SkUnity!"
4250 set {mineplex.news.allow} to true
4251
4252#NewsINIT
4253on load:
4254 newsinit(1)
4255
4256on quit:
4257 set quit message to "&8Quit> &7%player%"
4258 delete {mineplex.tp.back.%player%}
4259
4260every second:
4261 loop all players:
4262 add 1 to {mineplex.time.%loop-player%}
4263
4264#Forcefield
4265
4266every 2 ticks:
4267 loop all players:
4268 if {mineplex.ff.list::%loop-player%} is set:
4269 loop players in radius 4 of loop-player:
4270 if {mineplex.pref.ff.%loop-player-2%} is false:
4271 if loop-player-2 is not loop-player-1:
4272 play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
4273 push the loop-player-2 upwards at speed 0.3
4274 push the loop-player-2 backwards at speed 0.45
4275 play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
4276
4277#2 Factor
4278
4279command /2fareset <player>:
4280 permission: op
4281 trigger:
4282 delete {mineplex.newauth.%uuid of arg-1%}
4283 set {mineplex.authlock.%arg-1%} to false
4284 delete {mineplex.newauthlast.%uuid of arg-1%}
4285
4286on join:
4287 wait 5 ticks
4288 if player has permission "mineplex.2fa":
4289 if {mineplex.newauth.%uuid of player%} is set:
4290 set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now
4291 set {_tc} to "1 day" parsed as a timespan
4292 if {_t} is less than {_tc}:
4293 send "&92FA> &7Authorized!"
4294 else:
4295 set {mineplex.authlock.%player%} to true
4296 apply slowness 999 to player for 999 seconds
4297 apply blindness 999 to player for 999 seconds
4298 send "&92FA> &7Please enter your two-factor auth code"
4299 send "&92FA> &c/2fa (code)"
4300 else:
4301 stop
4302
4303on command:
4304 if {mineplex.authlock.%player%} is true:
4305 if executor is player:
4306 if command is not "2fa":
4307 cancel event
4308 send "&92FA> &7Please enter your two-factor auth code"
4309 send "&92FA> &c/2fa (code)"
4310
4311on chat:
4312 if {mineplex.authlock.%player%} is true:
4313 cancel event
4314 send "&92FA> &7Please enter your two-factor auth code"
4315 send "&92FA> &c/2fa (code)"
4316
4317on quit:
4318 delete {autowarn.%player%}
4319
4320#Mineplex Commands
4321command /2fa [<string>] [<string>]:
4322 permission: mineplex.2fa
4323 permission message: &9Permissions> &7You do not have permission to do that.
4324 trigger:
4325 if {mineplex.newauth.%uuid of player%} is not set:
4326 if {authwarn.%player%} is not set:
4327 send "&92FA> &7Hey There! This sets a code that you will have to remember for the rest of your life!"
4328 send "&92FA> &7Do &e/2fa &7if you are 100%% sure!"
4329 set {authwarn.%player%} to true
4330 stop
4331 else:
4332 send "&92FA> &7Generating secret..."
4333 set {_clientSecret} to a new two-factor base-32 secret code
4334 send "&92FA> &7Saving secret..."
4335 set {mineplex.newauth.%uuid of player%} to {_clientSecret}
4336 send "&92FA> &7Secret key saved."
4337 send "&92FA> &7You must enter this code into your Two-Factor App:%nl%&92FA> &e%{_clientSecret}%"
4338 send "&92FA> &7Then redo /2fa with your code"
4339 set {mineplex.authlock.%player%} to false
4340 set {_t} to arg 1 parsed as an integer
4341 if {_t} is a number:
4342 send "&92FA> &7Authorized for 24 hours."
4343 send "&92FA> &7Saving secret..."
4344 wait 5 ticks
4345 set {mineplex.newauth.%uuid of player%} to hashed arg 1
4346 set {mineplex.authlock.%player%} to false
4347 send "&92FA> &7Secret key saved."
4348 else:
4349 send "&92FA> &7Invalid authentication code (not a number)."
4350 else:
4351 set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now
4352 set {_tc} to "1 day" parsed as a timespan
4353 if {_t} is less than {_tc}:
4354 send "&92FA> &7Authorized for 24 hours."
4355 else:
4356 set {_c} to the current two-factor code of secret code {mineplex.newauth.%uuid of player%}
4357 set {_t} to arg 1 parsed as an integer
4358 if {_t} is a number:
4359 if {_c} is arg-1:
4360 send "&92FA> &7Authorized for 24 hours."
4361 send "&92FA> &7Saving secret..."
4362 wait 5 ticks
4363 remove slowness from the player
4364 remove blindness from the player
4365 set {mineplex.newauthlast.%uuid of player%} to now
4366 set {mineplex.authlock.%player%} to false
4367 send "&92FA> &7Secret key saved."
4368 else:
4369 send "&92FA> &7Invalid authentication code"
4370 else:
4371 send "&92FA> &7Invalid authentication code (not a number)."
4372
4373command /tp [<text>] [<text>] [<text>] [<text>] [<text>]:
4374 aliases: /teleport
4375 permission: mineplex.mod
4376 permission message: &9Permissions> &7You do not have permission to do that.
4377 trigger:
4378 if arg-1 is not set:
4379 send "&9Teleport> &7Commands List:"
4380 send "&6/tp <target> &7Teleport to Player &6Mod"
4381 send "&6/tp b(ack) &7Undo Teleports &6Mod"
4382 send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin"
4383 send "&4/tp <player> <target> &7Teleport Player to Player &4Admin"
4384 send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin"
4385 send "&4/tp all &7Teleport All to Self &4Owner"
4386 else:
4387 if arg-2 is not set:
4388 if arg-1 is set:
4389 if arg-1 is not "all":
4390 if arg-1 is not "here" or "h" or "back" or "b":
4391 if arg-1 parsed as player is online:
4392 set {mineplex.tp.back.%player%} to location of player
4393 teleport player to arg-1 parsed as player's location
4394 set {_t} to arg-1 parsed as player
4395 send "&9Teleport> &7Teleported to &e%{_t}%&7."
4396 stop
4397 else:
4398 send "&9Teleport> &7Locating &e%arg-1%&7..."
4399 wait 5 seconds
4400 send "&9Teleport> &7Could not locate &e%arg-1%&7."
4401 stop
4402 if arg-1 is "all":
4403 if player has permission "mineplex.owner":
4404 teleport all players to player
4405 send "&9Teleport> &7You teleported &e%amount of players% Players &7to yourself."
4406 broadcast "&9Teleport> &7You teleported to &e%player%&7."
4407 stop
4408 else:
4409 send "&9Permissions> &7You do not have permission to do that."
4410 stop
4411 if arg 4 is set:
4412 if arg-1 parsed as player is online:
4413 set {_p} to arg-1 parsed as a player
4414 set {_x} to arg-2 parsed as a number
4415 set {_y} to arg-3 parsed as a number
4416 set {_z} to arg-4 parsed as a number
4417 if {_x} is not set:
4418 send "&9Teleport> &7Invalid X-Coordinate [&e%arg-2%&7]."
4419 stop
4420 if {_y} is not set:
4421 send "&9Teleport> &7Invalid Y-Coordinate [&e%arg-3%&7]."
4422 stop
4423 if {_z} is not set:
4424 send "&9Teleport> &7Invalid Z-Coordinate [&e%arg-4%&7]."
4425 stop
4426 teleport {_p} to the location at {_x}, {_y}, {_z}
4427 send "&9Teleport> &7Teleported &e%{_p}% &7%{_x}%, %{_y}%, %{_z}%."
4428 else:
4429 send "&9Teleport> &7Locating &e%arg-1%&7..."
4430 wait 5 seconds
4431 send "&9Teleport> &7Could not locate &e%arg-1%&7."
4432
4433 if arg-1 is "here" or "h":
4434 if player has permission "mineplex.admin":
4435 if arg-3 is not set:
4436 if arg-2 is set:
4437 if arg-2 parsed as player is online:
4438 teleport arg-2 parsed as player to player's location
4439 send "&9Teleport> &7%player% teleported you to self." to arg-2 parsed as player
4440 set {_t} to arg-2 parsed as player
4441 send "&9Teleport> &7Teleported &e%arg-2% &7to self."
4442 stop
4443 else:
4444 send "&9Teleport> &7Locating &e%arg-2%&7..."
4445 wait 5 seconds
4446 send "&9Teleport> &7Could not locate &e%arg-2%&7."
4447 stop
4448 else:
4449 send "&9Permissions> &7You do not have permission to do that."
4450 stop
4451 if arg-2 is not set:
4452 send "&9Teleport> &7Commands List:"
4453 send "&6/tp <target> &7Teleport to Player &6Mod"
4454 send "&6/tp b(ack) &7Undo Teleports &6Mod"
4455 send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin"
4456 send "&4/tp <player> <target> &7Teleport Player to Player &4Admin"
4457 send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin"
4458 send "&4/tp all &7Teleport All to Self &4Owner"
4459 if arg-1 is "back" or "b":
4460 if {mineplex.tp.back.%player%} is set:
4461 set {_new} to {mineplex.tp.back.%player%}
4462 set {mineplex.tp.back.%player%} to location of player
4463 teleport player to {_new}
4464 send "&9Teleport> &7You have been teleported to your previous location."
4465 else:
4466 send "&9Teleport> &7There is no place to teleport you back to."
4467 stop
4468 if arg-3 is not set:
4469 if arg-2 is set:
4470 if player has permission "mineplex.admin":
4471 if arg-2 parsed as player is online:
4472 if arg-1 parsed as player is online:
4473 set {mineplex.tp.back.%player%} to location of player
4474 teleport arg-1 parsed as player to arg-2 parsed as player
4475 set {_t1} to arg-1 parsed as player
4476 set {_t} to arg-2 parsed as player
4477 send "&9Teleport> &e%{_t1}% &7was teleported to you." to arg-2 parsed as player
4478 send "&9Teleport> &7You were teleported to &e%{_t}%&7." to arg-1 parsed as player
4479 stop
4480 else:
4481 send "&9Teleport> &7Locating &e%arg-1%&7..."
4482 wait 5 seconds
4483 send "&9Teleport> &7Could not locate &e%arg-1%&7."
4484 stop
4485 else:
4486 send "&9Teleport> &7Locating &e%arg-2%&7..."
4487 wait 5 seconds
4488 send "&9Teleport> &7Could not locate &e%arg-2%&7."
4489 stop
4490 else:
4491 send "&9Permissions> &7You do not have permission to do that."
4492 stop
4493
4494command /time [<offline player>] [<string>]:
4495 permission: mineplex.mod
4496 permission message: &9Permissions> &7You do not have permission to do that.
4497 trigger:
4498 if arg 1 is not set:
4499 send "&9Time> &7Usage: /time <playerName>"
4500 else:
4501 if {mineplex.time.%arg-1%} is not set:
4502 set {mineplex.time.%arg-1%} to 0
4503 send "&9Time> &e%arg-1% &7has spent &e%{mineplex.time.%arg-1%}%.0 Seconds &7in game"
4504 else:
4505 set {_tm} to {mineplex.time.%arg-1%}
4506 if {_tm} is less than 60:
4507 send "&9Time> &e%arg-1% &7has spent &e%{_tm}%.0 Seconds &7in game"
4508 stop
4509 else if {_tm} is less than 3600:
4510 set {_final} to {_tm} / 60
4511 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Minutes &7in game"
4512 stop
4513 else if {_tm} is less than 86400:
4514 set {_final} to {_tm} / 3600
4515 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Hours &7in game"
4516 stop
4517 else if {_tm} is less than 604800:
4518 set {_final} to {_tm} / 86400
4519 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Days &7in game"
4520 stop
4521 else:
4522 set {_final} to {_tm} / 604800
4523 send "&9Time> &e%arg-1% &7has spent &e%{_final}% Weeks &7in game"
4524
4525command /disguise [<string>] [<string>]:
4526 permission: mineplex.youtube
4527 permission message: &9Permissions> &7You do not have permission to do that.
4528 trigger:
4529 if arg 1 is not set:
4530 if {mineplex.disguise.%player%} is set:
4531 send "&9Disguise> &7You are no longer disguised!"
4532 execute console command "/ud %player%"
4533 delete {mineplex.disguise.%player%}
4534 set player tab name to "%{mineplex.rank.%player%}%&e%player%"
4535 updateRankAPI(player)
4536 else:
4537 send "&9Disguise> &7Command List:%nl%&4/disguise <player> &7Makes you appear as target player in chat and tab &4Admin"
4538 else:
4539 if {mineplex.disguise.%player%} is set:
4540 send "&9Disguise> &7You are already disguised. Please undisguise by using /disguise"
4541 else:
4542 set {_n} to the length of arg 1
4543 if {_n} is greater than 16:
4544 send "&9Disguise> &7That disguise name is not permitted!"
4545 stop
4546 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 "\":
4547 send "&9Disguise> &7That disguise name is not permitted!"
4548 stop
4549 set {_p1} to "%arg-1%" parsed as offline player
4550 if {_p1} is online:
4551 send "&9Disguise> &7this name already in use!"
4552 stop
4553 set {_ban} to getPlayerdata({_p1}, "banned")
4554 set {_mute} to getPlayerdata({_p1}, "muted")
4555 if {_ban} or {_muted} is "yes":
4556 send "&9Disguise> &7You may not disguise as people who are muted or banned."
4557 stop
4558 set {_rank} to getPlayerdata({_p1}, "rank")
4559 if {_rank} is not "All" or "Ultra" or "Hero" or "Legend" or "Titan" or "Eternal":
4560 send "&9Disguise> &7You may not disguise as users who are staff, youtubers, or twitchers."
4561 stop
4562 send "&9Disguise> &7Disguise Active: &f%arg-1%"
4563 set {_localp} to arg 1 parsed as a player
4564 rankLoad({_localp} , 2, 1)
4565 if {mineplex.level.%arg-1%} is not set:
4566 set {mineplex.level.%arg-1%} to "&70"
4567 if {mineplex.rank.%arg-1%} is not set:
4568 set {mineplex.rank.%arg-1%} to ""
4569 execute console command "/odisguise %player% player %arg-1%"
4570 set {mineplex.disguise.%player%} to "%arg-1%" parsed as offline player
4571 set {_player} to arg 1
4572 if {mineplex.rank.%{_player}%} is not set:
4573 set {mineplex.rank.%{_player}%} to ""
4574 set player tab name to "%{mineplex.rank.%{_player}%}%&e%arg-1%"
4575 updateRankAPI(player)
4576
4577command /api [<string>] [<string>] [<string>]:
4578 trigger:
4579 if arg 1 is not set:
4580 send "&9API> &7Mineplex Core API"
4581 send "&9API> &7/api (api name)"
4582 send "&9API> &7Current API's; &adisplayrank&7, &adisplayname"
4583 send "&9API> &7Use /api (api name) (player) to view a different players's api output"
4584 else:
4585 if arg 2 is set:
4586 set {_p} to "%arg-2%"
4587 else:
4588 set {_p} to "%player%"
4589 if arg 1 is "displayrank":
4590 if {mineplex.api.displayrank.%{_p}%} is not set:
4591 set {mineplex.api.displayrank.%{_p}%} to "null"
4592 send "&9API> &7Raw API Output; &f%{mineplex.api.displayrank.%{_p}%}%"
4593 else if arg 1 is "displayname":
4594 if {mineplex.api.displayname.%{_p}%} is not set:
4595 set {mineplex.api.displayname.%{_p}%} to "null"
4596 send "&9API> &7Raw API Output; &f%{mineplex.api.displayname.%{_p}%}%"
4597 else:
4598 send "&9API> &7Invalid API!"
4599
4600command /give [<string>] [<string>] [<string>] [<string>] [<string>]:
4601 aliases: /g, /item, /i
4602 permission: mineplex.admin
4603 permission message: &9Permissions> &7This requires Permission Rank [&9ADMIN&7].
4604 trigger:
4605 if arg 1 is not set:
4606 send "&9Give: &7Listing Commands:"
4607 send "&4/give (item) Admin"
4608 send "&4/give (player) (item) (amount) Admin"
4609 send "&4/give (player) (item) (amount) (Enchantment:level) Admin"
4610 send "&4/give all (item) (amount) Admin"
4611 send "&4/give all (item) (amount) (Enchantment:level) Admin"
4612 else if arg 5 is set:
4613 send "&9Give: &7Listing Commands:"
4614 send "&4/give (item) Admin"
4615 send "&4/give (player) (item) (amount) Admin"
4616 send "&4/give (player) (item) (amount) (Enchantment:level) Admin"
4617 send "&4/give all (item) (amount) Admin"
4618 send "&4/give all (item) (amount) (Enchantment:level) Admin"
4619 else:
4620 if arg 2 is not set:
4621 set {_i1} to "%arg-1%"
4622 replace all "_" with " " in {_i1}
4623 set {_i} to "%{_i1}%" parsed as an item
4624 if {_i} is an item:
4625 send "&9Give> &7You gave &e1 %{_i}% &7to &e%player%&7."
4626 give player {_i}
4627 else:
4628 send "&9Item Search> &e0 &7matches for [&e%arg-1%&7]."
4629 send "&9Item(s) Search> &7Invalid [&e%arg-1%&7]."
4630 if arg 2 is set:
4631 if arg 3 is set:
4632 if arg 1 is "all":
4633 set {_i1} to "%arg-2%"
4634 replace all "_" with " " in {_i1}
4635 set {_i} to "%{_i1}%" parsed as an item
4636 set {_a} to "%arg-3%" parsed as a number
4637 if {_i} is an item:
4638 if {_a} is a number:
4639 if arg 4 is set:
4640 set {_e} to "%arg-4%" parsed as text
4641 set {_oe} to "%arg-4%" parsed as text
4642 replace all "_" with " " in {_e}
4643 replace all ":" with " " in {_e}
4644 if "%{_e}%" parsed as an enchantment type is an enchantment type:
4645 set {_e} to "%{_e}%" parsed as an enchantment type
4646 enchant {_i} with "%{_e}%" parsed as a enchantment type
4647 else:
4648 send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]."
4649 send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &eALL&7."
4650 send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to all players
4651 loop all players:
4652 loop {_a} times:
4653 give loop-player {_i}
4654 else:
4655 send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]."
4656 send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7."
4657 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players
4658 loop all players:
4659 give loop-player {_i}
4660 else:
4661 send "&9Item Search> &e0 &7matches for [&e%{_i1}%&7]."
4662 send "&9Item(s) Search> &7Invalid [&e%{_i}%&7]."
4663 else:
4664 set {_i1} to "%arg-2%"
4665 replace all "_" with " " in {_i1}
4666 set {_i} to "%{_i1}%" parsed as an item
4667 set {_a} to "%arg-3%" parsed as a number
4668 set {_p} to "%arg-1%" parsed as a player
4669 if {_i} is an item:
4670 if {_p} is online:
4671 if {_a} is a number:
4672 if arg 4 is set:
4673 set {_e} to "%arg-4%" parsed as text
4674 set {_oe} to "%arg-4%" parsed as text
4675 replace all "_" with " " in {_e}
4676 replace all ":" with " " in {_e}
4677 if "%{_e}%" parsed as an enchantment type is an enchantment type:
4678 set {_e} to "%{_e}%" parsed as an enchantment type
4679 enchant {_i} with "%{_e}%" parsed as a enchantment type
4680 else:
4681 send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]."
4682 send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &e%{_p}%&7."
4683 send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to {_p}
4684 loop {_a} times:
4685 give {_p} {_i}
4686 else:
4687 send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]."
4688 send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7."
4689 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p}
4690 give {_p} {_i}
4691 else:
4692 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
4693 send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]."
4694 stop
4695 else:
4696 send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
4697 send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
4698 else:
4699 if arg 1 is "all":
4700 set {_i1} to "%arg-2%"
4701 replace all "_" with " " in {_i1}
4702 set {_i} to "%{_i1}%" parsed as an item
4703 if {_i} is an item:
4704 send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7."
4705 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players
4706 loop all players:
4707 give loop-player {_i}
4708 else:
4709 send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
4710 send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
4711 else:
4712 set {_i1} to "%arg-2%"
4713 replace all "_" with " " in {_i1}
4714 set {_i} to "%{_i1}%" parsed as an item
4715 set {_p} to "%arg-1%" parsed as a player
4716 if {_i} is an item:
4717 if {_p} is online:
4718 send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7."
4719 send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p}
4720 give {_p} {_i}
4721 else:
4722 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
4723 send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]."
4724 stop
4725 else:
4726 send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
4727 send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
4728
4729#/givestat player stat amount
4730command /givestat [<offline player>] [<string>] [<string>] [<string>]:
4731 permission: mineplex.admin
4732 permission message: &9Permissions> &7You do not have permission to do that.
4733 trigger:
4734 if arg 1 is not set:
4735 send "&9Stats> &e/givestat (player) (stat) (amount)"
4736 else if arg 1 is set:
4737 if arg 2 is set:
4738 if arg 3 parsed as a number is set:
4739 if arg 2 is "Global.ExpEarned":
4740 set {_lvl} to arg 3 parsed as a number
4741 if {_lvl} is less than 0:
4742 send "&9Stats> &7Unknown value for &eGlobal.ExpEarned&7!"
4743 stop
4744 else if {_lvl} is less than 20:
4745 set {_temp} to "&7%{_lvl}%"
4746 set {mineplex.level.%arg-1%} to "%{_temp}%"
4747 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4748 setPlayerdata(arg-1, "level", "%{_lvl}%")
4749 stop
4750 else if {_lvl} is less than 40:
4751 set {_temp} to "&9%{_lvl}%"
4752 set {mineplex.level.%arg-1%} to "%{_temp}%"
4753 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4754 setPlayerdata(arg-1, "level", "%{_lvl}%")
4755 stop
4756 else if {_lvl} is less than 60:
4757 set {_temp} to "&2%{_lvl}%"
4758 set {mineplex.level.%arg-1%} to "%{_temp}%"
4759 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4760 setPlayerdata(arg-1, "level", "%{_lvl}%")
4761 stop
4762 else if {_lvl} is less than 80:
4763 set {_temp} to "&6%{_lvl}%"
4764 set {mineplex.level.%arg-1%} to "%{_temp}%"
4765 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4766 setPlayerdata(arg-1, "level", "%{_lvl}%")
4767 stop
4768 else if {_lvl} is less than or equal to 100:
4769 set {_temp} to "&c%{_lvl}%"
4770 set {mineplex.level.%arg-1%} to "%{_temp}%"
4771 send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
4772 setPlayerdata(arg-1, "level", "%{_lvl}%")
4773 stop
4774 else if arg 2 is "Global.GemsEarned":
4775 set {_num} to arg 3 parsed as a number
4776 set {_get} to getPlayerdata(arg-1, "stats.global.gems")
4777 set {_cur} to {_get} parsed as a number
4778 add {_num} to {_cur}
4779 setPlayerdata(arg-1, "stats.global.gems", "%{_cur}%")
4780 send "&9Stats> &7Applied &e%{_num}% Global.GemsEarned &7to &e%arg-1%&7."
4781 else if arg 2 is "Global.GamesPlayed":
4782 set {_num} to arg 3 parsed as a number
4783 set {_get} to getPlayerdata(arg-1, "stats.global.games")
4784 set {_cur} to {_get} parsed as a number
4785 add {_num} to {_cur}
4786 setPlayerdata(arg-1, "stats.global.games", "%{_cur}%")
4787 send "&9Stats> &7Applied &e%{_num}% Global.GamesPlayed &7to &e%arg-1%&7."
4788 else if arg 2 is "Global.DailyRewards":
4789 set {_num} to arg 3 parsed as a number
4790 set {_get} to getPlayerdata(arg-1, "stats.global.dailyr")
4791 set {_cur} to {_get} parsed as a number
4792 add {_num} to {_cur}
4793 setPlayerdata(arg-1, "stats.global.dailyr", "%{_cur}%")
4794 send "&9Stats> &7Applied &e%{_num}% Global.DailyRewards &7to &e%arg-1%&7."
4795 else if arg 2 is "Global.TimesVoted":
4796 set {_num} to arg 3 parsed as a number
4797 set {_get} to getPlayerdata(arg-1, "stats.global.voted")
4798 set {_cur} to {_get} parsed as a number
4799 add {_num} to {_cur}
4800 setPlayerdata(arg-1, "stats.global.voted", "%{_cur}%")
4801 send "&9Stats> &7Applied &e%{_num}% Global.TimesVoted &7to &e%arg-1%&7."
4802 else if arg 2 is "Global.ChestsOpened":
4803 set {_num} to arg 3 parsed as a number
4804 set {_get} to getPlayerdata(arg-1, "stats.global.chests")
4805 set {_cur} to {_get} parsed as a number
4806 add {_num} to {_cur}
4807 setPlayerdata(arg-1, "stats.global.chests", "%{_cur}%")
4808 send "&9Stats> &7Applied &e%{_num}% Global.ChestsOpened &7to &e%arg-1%&7."
4809 else:
4810 send "&9Stats> &e/givestat (player) (stat) (amount)"
4811 else:
4812 send "&9Stats> &e/givestat (player) (stat) (amount)"
4813 else:
4814 send "&9Stats> &e/givestat (player) (stat) (amount)"
4815
4816command /stats [<offline player>] [<string>]:
4817 trigger:
4818 if arg 1 is not set:
4819 set {_p} to player
4820 set {_good} to true
4821 else:
4822 if arg 1 is online:
4823 set {_p} to arg 1
4824 set {_good} to true
4825 else:
4826 send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
4827 if {_good} is true:
4828 open chest with 5 rows named "%{_p}%'s Stats" to player
4829 wait 1 tick
4830 set {_tm} to {mineplex.time.%{_p}%}
4831 if {_tm} is less than 60:
4832 set {_global.time} to "%{_final}%.0 Seconds"
4833 else if {_tm} is less than 3600:
4834 set {_final} to {_tm} / 60
4835 set {_global.time} to "%{_final}% Minutes"
4836 else if {_tm} is less than 86400:
4837 set {_final} to {_tm} / 3600
4838 set {_global.time} to "%{_final}% Hours"
4839 else if {_tm} is less than 604800:
4840 set {_final} to {_tm} / 86400
4841 set {_global.time} to "%{_final}% Days"
4842 else:
4843 set {_final} to {_tm} / 604800
4844 set {_global.time} to "%{_final}% Weeks"
4845 set {_global.gems} to getPlayerdata({_p}, "stats.global.gems")
4846 set {_global.games} to getPlayerdata({_p}, "stats.global.games")
4847 set {_global.dailyr} to getPlayerdata({_p}, "stats.global.dailyr")
4848 set {_global.voted} to getPlayerdata({_p}, "stats.global.voted")
4849 set {_global.chests} to getPlayerdata({_p}, "stats.global.chests")
4850 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
4851
4852command /mcr:
4853 trigger:
4854 send "&9Plugin> &7Mineplex Core"
4855 send "&9Plugin> &7Running MCR: &e{@MCRVER}"
4856 send "&9Plugin> &7Hotfix/Release Cycle: &e{@MCRHOTFIX}"
4857 send "&9Plugin> &7by &aWheezyGold7931&7, &eTheSkripterDK&7, &eTorksi&7, &7and &eItzRenderman"
4858 send "&9Plugin> &7Special thanks to TonyMaster21, LimeGlass, Rezz, Citrin_, Boobah, SomethingPlayzMC, Ottelino, and SoftBreeze"
4859 send "&9Plugin> &7Also, special thanks to our moderation team."
4860 send ""
4861 send "&9Patreon> &7Huge Thanks to my Patreons:"
4862 send "&9Patreon> &eNone, anymore"
4863 send "&9Patreon> &7If you want to be listed there than support me on Patreon!:"
4864 send "&9Patreon> &bhttps://www.patreon.com/WheezyGold7931"
4865
4866command /a [<text>]:
4867 aliases: /admin
4868 trigger:
4869 if arg 1 is not set:
4870 send "&9Admin> &7Corect Usage: /a (message)"
4871 stop
4872 if {mineplex.disguise.%player%} is set:
4873 send "&9Admin> &7Disguised users cannot use /a while disguised!"
4874 stop
4875 else:
4876 set {_p} to player
4877 set {_get} to getPlayerdata(player, "muted")
4878 if {_get} is "yes":
4879 if {muted::%player%::type} is "perm":
4880 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
4881 stop
4882 if {muted::%player%::type} is "temp":
4883 set {_waited} to difference between {muted::%player%::when} and now
4884 if {_waited} is less than {muted::%player%::time}:
4885 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
4886 stop
4887 if {mineplex.rank.%{_p}%} is "":
4888 set {_display} to "Player %{_p}%"
4889 else:
4890 set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
4891 if player has permission "mineplex.trainee":
4892 loop all players:
4893 if loop-player has permission "mineplex.trainee":
4894 send "%{_display}% &d%arg-1%" to loop-player
4895 play "NOTE_PLING" to loop-player at volume 0.5
4896 else:
4897 send "%{_display}% &d%arg-1%"
4898 play "NOTE_PLING" to player at volume 0.5
4899 loop all players:
4900 if loop-player has permission "mineplex.trainee":
4901 send "%{_display}% &d%arg-1%" to loop-player
4902 play "NOTE_PLING" to loop-player at volume 0.5
4903
4904command /ma [<player>] [<text>]:
4905 permission: mineplex.trainee
4906 permission message: &9Permissions> &7You do not have permission to do that.
4907 trigger:
4908 if {mineplex.disguise.%player%} is set:
4909 send "&9Admin> &7Disguised users cannot use /a while disguised!"
4910 stop
4911 else:
4912 set {_p} to player
4913 if {mineplex.rank.%{_p}%} is "":
4914 set {_display} to "&fPlayer %{_p}%"
4915 else:
4916 set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
4917 if {mineplex.rank.%arg-1%} is "":
4918 set {_display2} to "&fPlayer %arg-1%"
4919 else:
4920 set {_display2} to "%{mineplex.displaya.%arg-1%}% %arg-1%"
4921 if player has permission "mineplex.trainee":
4922 if argument 1 and argument 2 is set:
4923 send "&d-> %{_display2}% &d%arg 2%"
4924 send "&d<- %{_display}% &d%arg 2%" to arg-1
4925 set {mineplex.lasta.%player%} to arg-1
4926 play "NOTE_PLING" to player at volume 0.5
4927 play "NOTE_PLING" to arg-1 at volume 0.5
4928 loop all players:
4929 if loop-player has permission "mineplex.trainee":
4930 if loop-player is not player or arg-1:
4931 send "%{_display}% &d-> %{_display2}% &d%arg 2%" to loop-player
4932 else:
4933 send "&9Message> &cErr...something went wrong?"
4934 else:
4935 send "&9Permissions> &7You do not have permission to do that."
4936
4937command /ra [<text>]:
4938 permission: mineplex.trainee
4939 permission message: &9Permissions> &7You do not have permission to do that.
4940 trigger:
4941 if {mineplex.disguise.%player%} is set:
4942 set {_p} to {mineplex.disguise.%player%}
4943 else:
4944 set {_p} to player
4945 if {mineplex.rank.%{_p}%} is "":
4946 set {_display} to "&fPlayer %{_p}%"
4947 else:
4948 set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
4949 if {mineplex.rank.%{mineplex.lasta.%player%}%} is "":
4950 set {_display2} to "&fPlayer %{mineplex.lasta.%player%}%"
4951 else:
4952 set {_display2} to "%{mineplex.displaya.%{mineplex.lasta.%player%}%}% %{mineplex.lasta.%player%}%"
4953 if {mineplex.lasta.%player%} is not set:
4954 send "&9Message> &7You have not messaged anyone recently."
4955 stop
4956 else:
4957 if argument 1 is set:
4958 send "&d-> %{_display2}% &d%arg 1%"
4959 send "&d<- %{_display}% &d%arg-1%" to {mineplex.lasta.%player%}
4960 play "NOTE_PLING" to player at volume 0.5
4961 play "NOTE_PLING" to {mineplex.lasta.%player%} at volume 0.5
4962 loop all players:
4963 if loop-player has permission "mineplex.trainee":
4964 if loop-player is not player or {mineplex.lasta.%player%}:
4965 send "%{_display}% &d-> %{_display2}% &d%arg 1%" to loop-player
4966 else:
4967 send "&9Message> &cErr...something went wrong?"
4968
4969command /vanish:
4970 aliases: /incognito
4971 permission: mineplex.trainee
4972 permission message: &9Permissions> &7You do not have permission to do that.
4973 trigger:
4974 if {mineplex.vanish.%player%} is true:
4975 loop all players:
4976 loop-value doesn't have permission "mineplex.admin"
4977 add loop-value to {_vanishto::*}
4978
4979 reveal player from all players
4980 set {mineplex.vanish.%player%} to false
4981 send "&9Moderation> &7Disabled moderator mode."
4982 send "&9Incognito> &7You are no longer incognito. Your status will only change when you run &e/vanish &7again."
4983 else:
4984 loop all players:
4985 loop-value doesn't have permission "mineplex.admin"
4986 add loop-value to {_vanishto::*}
4987
4988 hide player from {_vanishto::*}
4989 set {mineplex.vanish.%player%} to true
4990 send "&9Moderation> &7Enabled moderator mode."
4991 send "&9Incognito> &7You are now incognito. Your status will only change when you run &e/vanish &7again."
4992
4993function friendButtons(p: player) :: number:
4994 set {_t} to "Steve" parsed as an offline player
4995 set slot 0 of {_p}'s current inventory to {_t}'s skull named "&fFriends" with lore ""
4996 set slot 2 of {_p}'s current inventory to rose named "&fFriend Requests" with lore ""
4997 set slot 4 of {_p}'s current inventory to tnt named "&fDelete Friends" with lore ""
4998 set slot 6 of {_p}'s current inventory to book and quill named "&fSend Friend Request" with lore ""
4999 set slot 8 of {_p}'s current inventory to sign item named "&7Toggle friends to display in chat" with lore ""
5000
5001function friendClean(p: player) :: number:
5002 set {_s} to 18
5003 loop 27 times:
5004 set slot {_s} of {_p}'s current inventory to air
5005 add 1 to {_s}
5006 if {_s} = 44:
5007 exit loop
5008 friendButtons({_p})
5009
5010function friendMain(p: player) :: number:
5011 open chest with 6 rows named "Friends" to {_p}
5012 friendClean({_p})
5013 set {_s} to 18
5014 loop {friends.list.%{_p}%::*}:
5015 set {_t} to "%loop-value%" parsed as offline player
5016 if {_t} is online:
5017 set {_a} to "&2Online"
5018 set {_w} to "&e%{_t}'s world%"
5019 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"
5020 else:
5021 set {_a} to "&cOffline"
5022 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"
5023 add 1 to {_s}
5024 if {_s} = 44:
5025 exit loop
5026
5027function friendDel(p: player) :: number:
5028 open chest with 6 rows named "Delete Friends" to {_p}
5029 friendClean({_p})
5030 set {_s} to 18
5031 loop {friends.list.%{_p}%::*}:
5032 set {_t} to "%loop-value%" parsed as offline player
5033 if {_t} is online:
5034 set {_a} to "&2Online"
5035 set {_w} to "&e%{_t}'s world%"
5036 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"
5037 else:
5038 set {_a} to "&cOffline"
5039 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"
5040 add 1 to {_s}
5041 if {_s} = 44:
5042 exit loop
5043
5044function friendReq(p: player) :: number:
5045 open chest with 6 rows named "Friend Requests" to {_p}
5046 friendClean({_p})
5047 set {_s} to 18
5048 loop {friends.request.%{_p}%::*}:
5049 set {_t} to "%loop-value%" parsed as offline player
5050 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"
5051 add 1 to {_s}
5052 if {_s} = 44:
5053 exit loop
5054
5055command /friend [<string>] [<string>]:
5056 aliases: /f
5057 trigger:
5058 if arg 1 is not set:
5059 friendMain(player)
5060 else:
5061 if arg 1 is "%player%":
5062 send "&9Friends> &7You cannot friend yourself!"
5063 stop
5064 stop
5065 loop {friends.list.%arg-1%::*}:
5066 if loop-value is "%player%":
5067 set {_f} to true
5068 loop {friends.request.%arg-1%::*}:
5069 if loop-value is "%player%":
5070 set {_a} to true
5071 if {_a} is true:
5072 send "&9Friends> &a%arg-1% &7has yet to respond to your friend request."
5073 else if {_f} is true:
5074 send "&9Friends> &7You are already friends with &a%arg-1%"
5075 else:
5076 add "%player%" to {friends.request.%arg-1%::*}
5077 send "&9Friends> &7Added &a%arg-1% &7to your friends list!"
5078
5079on inventory click:
5080 if inventory name of player's current inventory is "Friends":
5081 if clicked slot is 2:
5082 friendReq(player)
5083 if clicked slot is 4:
5084 friendDel(player)
5085 cancel event
5086 if inventory name of player's current inventory is "Friend Requests":
5087 if clicked slot is 0:
5088 friendMain(player)
5089 if clicked slot is 4:
5090 friendDel(player)
5091 else:
5092 set {_n} to name of clicked item
5093 if {_n} contains "&7Friend request from ":
5094 replace all "&7Friend request from " with "" in {_n}
5095 set {_f} to uncolored {_n}
5096 remove {_f} from {friends.request.%player%::*}
5097 add {_f} to {friends.list.%player%::*}
5098 add "%player%" to {friends.list.%{_f}%::*}
5099 send "&9Friends> &aYou &7and &a%{_f}% &7are now friends!"
5100 friendReq(player)
5101 cancel event
5102 if inventory name of player's current inventory is "Delete Friends":
5103 if clicked slot is 0:
5104 friendMain(player)
5105 if clicked slot is 2:
5106 friendReq(player)
5107 else:
5108 if "%clicked item%" is "player head":
5109 if clicked slot is not 0:
5110 set {_n} to name of clicked item
5111 set {_f} to uncolored {_n}
5112 replace all " " with "" in {_f}
5113 remove {_f} from {friends.list.%player%::*}
5114 remove {_f} from {friends.list.%{_l}%::*}
5115 send "&9Friends> &7Deleted &a%{_f}% &7from your friends list!"
5116 friendDel(player)
5117 cancel event
5118
5119command /chatslow [<integer>]:
5120 aliases: /cs
5121 permission: mineplex.srmod
5122 permission message: &9Permissions> &7You do not have permission to do that.
5123 trigger:
5124 if {mineplex.disguise.%player%} is set:
5125 set {_p} to {mineplex.disguise.%player%}
5126 else:
5127 set {_p} to player
5128 if argument 1 is set:
5129 if {mineplex.chatsilence} is set:
5130 send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat."
5131 stop
5132 else:
5133 if {mineplex.chatslow} is not set:
5134 set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan
5135 send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players
5136 else:
5137 set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan
5138 send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players
5139 send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players
5140 else:
5141 if {mineplex.chatsilence} is set:
5142 send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat."
5143 stop
5144 else:
5145 if {mineplex.chatslow} is set:
5146 delete {mineplex.chatslow}
5147 send "&9Chat> &6%{_p}% &7has disabled chat slow." to all players
5148 else:
5149 send "&9Message> &cYou didn't enter a time limit! Defaulting to 10 seconds."
5150 set {mineplex.chatslow} to "10 seconds" parsed as timespan
5151 send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players
5152 send "&9Chat> &6%{_p}% &7has set the chat delay to &610 &7seconds." to all players
5153command /silence:
5154 permission: mineplex.admin
5155 permission message: &9Permissions> &7You do not have permission to do that.
5156 trigger:
5157 if {mineplex.chatslow} is set:
5158 delete {mineplex.chatslow}
5159 send "&9Chat> &6%player% &7has disabled chat slow." to all players
5160 set {mineplex.chatsilence} to true
5161 send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players
5162 stop
5163 if {mineplex.chatsilence} is set:
5164 delete {mineplex.chatsilence}
5165 send "&9Chat> &7The chat is no longer silenced." to all players
5166 else:
5167 set {mineplex.chatsilence} to true
5168 send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players
5169
5170command /locate [<string>]:
5171 aliases: /find, /where
5172 permission: mineplex.trainee
5173 permission message: &9Permissions> &7You do not have permission to do that.
5174 trigger:
5175 if argument 1 is set:
5176 set {_tmp} to arg 1 parsed as an offline player
5177 if {_tmp} is online:
5178 set {_mineplex.locate.temp} to "%{_tmp}'s world%"
5179 send "&9Locate> &7Located [&e%arg-1%&7] at &9%{_mineplex.locate.temp}%"
5180 else:
5181 send "&9Locate> &7Failed to locate [&e%arg-1%&7]."
5182 else:
5183 send "&9Locate> &7Player argument missing."
5184
5185command /rank [<string>] [<offline player>] [<string>]:
5186 permission: mineplex.admin
5187 permission message: &9Permissions> &7You do not have permission to do that.
5188 trigger:
5189 if argument 1 is not set:
5190 send "&9Client Manager> &7Listing Commands:"
5191 send "&4/rank set <player> <rank>: &fSets the target users' rank"
5192 send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank"
5193 stop
5194 if argument 1 is not "set" or "test":
5195 send "&9Client Manager> &7Listing Commands:"
5196 send "&4/rank set <player> <rank>: &fSets the target users' rank"
5197 send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank"
5198 stop
5199 if argument 1 is "set":
5200 if argument 2 or argument 3 is not set:
5201 send "&9Client Manager> &7Listing Rank Update Commands:"
5202 send "&f/rank set (player) (rank): &eupdates chosen player's rank to the chosen rank"
5203 send ""
5204 send "&9Rank Update> &7Listing Rank List:"
5205 send "&9Ranks> &7ALL"
5206 send "&9Ranks> &7ULTRA"
5207 send "&9Ranks> &7HERO"
5208 send "&9Ranks> &7LEGEND"
5209 send "&9Ranks> &7TITAN"
5210 send "&9Ranks> &7ETERNAL"
5211 send "&9Ranks> &7TRAINEE"
5212 send "&9Ranks> &7MODERATOR"
5213 send "&9Ranks> &7SNR_MODERATOR"
5214 send "&9Ranks> &7CLANS_MOD"
5215 send "&9Ranks> &7JNR_DEV"
5216 send "&9Ranks> &7SUPPORT"
5217 send "&9Ranks> &7ADMIN"
5218 send "&9Ranks> &7LEADER"
5219 send "&9Ranks> &7DEVELOPER"
5220 send "&9Ranks> &7OWNER"
5221 send "&9Ranks> &7ARTIST"
5222 send "&9Ranks> &7MAPLEAD"
5223 send "&9Ranks> &7BUILDER"
5224 send "&9Ranks> &7MAPPER"
5225 send "&9Ranks> &7EVENT"
5226 send "&9Ranks> &7TWITCH"
5227 send "&9Ranks> &7YOUTUBE"
5228 send "&9Ranks> &7YT"
5229 set {_uuid} to uuid of arg-2
5230 set {_allcap} to convert "%arg-3%" to all caps
5231 if argument 3 is "ALL":
5232 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5233 if {_c} is true:
5234 set {mineplex.rank.%arg-2%} to ""
5235 execute console command "/__mp__dp__ %arg-2%"
5236 send "&9Client Manager> &7%arg-2%'s rank has been updated to None!"
5237 send "&9Client Manager> &7Your rank has been updated to None!" to arg 2
5238 set arg-2 tab name to "&e%arg-2%"
5239 updateRankAPI(arg-2)
5240 setPlayerdata(arg-2, "rank", "All")
5241 else:
5242 send "&9Client Manager> &c&lInvalid rank!"
5243 else if argument 3 is "ULTRA":
5244 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5245 if {_c} is true:
5246 set {mineplex.rank.%arg-2%} to "&b&lULTRA "
5247 execute console command "/__mp__dp__ %arg-2%"
5248 send "&9Client Manager> &7%arg-2%'s rank has been updated to Ultra!"
5249 send "&9Client Manager> &7Your rank has been updated to Ultra!" to arg 2
5250 set arg-2 tab name to "&b&lULTRA &e%arg-2%"
5251 updateRankAPI(arg-2)
5252 setPlayerdata(arg-2, "rank", "Ultra")
5253 else:
5254 send "&9Client Manager> &c&lInvalid rank!"
5255 else if argument 3 is "HERO":
5256 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5257 if {_c} is true:
5258 set {mineplex.rank.%arg-2%} to "&d&lHERO "
5259 execute console command "/__mp__dp__ %arg-2%"
5260 send "&9Client Manager> &7%arg-2%'s rank has been updated to Hero!"
5261 send "&9Client Manager> &7Your rank has been updated to Hero!" to arg 2
5262 set arg-2 tab name to "&d&lHERO &e%arg-2%"
5263 updateRankAPI(arg-2)
5264 setPlayerdata(arg-2, "rank", "Hero")
5265 else:
5266 send "&9Client Manager> &c&lInvalid rank!"
5267 else if argument 3 is "LEGEND":
5268 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5269 if {_c} is true:
5270 set {mineplex.rank.%arg-2%} to "&a&lLEGEND "
5271 execute console command "/__mp__dp__ %arg-2%"
5272 add "mineplex.legend" to arg-2's permissions
5273 send "&9Client Manager> &7%arg-2%'s rank has been updated to Legend!"
5274 send "&9Client Manager> &7Your rank has been updated to Legend!" to arg 2
5275 set arg-2 tab name to "&a&lLEGEND &e%arg-2%"
5276 updateRankAPI(arg-2)
5277 setPlayerdata(arg-2, "rank", "Legend")
5278 else:
5279 send "&9Client Manager> &c&lInvalid rank!"
5280 else if argument 3 is "TITAN":
5281 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5282 if {_c} is true:
5283 set {mineplex.rank.%arg-2%} to "&c&lTITAN "
5284 execute console command "/__mp__dp__ %arg-2%"
5285 add "mineplex.legend" to arg-2's permissions
5286 add "mineplex.titan" to arg-2's permissions
5287 send "&9Client Manager> &7%arg-2%'s rank has been updated to Titan!"
5288 send "&9Client Manager> &7Your rank has been updated to Titan!" to arg 2
5289 set arg-2 tab name to "&c&lTITAN &e%arg-2%"
5290 updateRankAPI(arg-2)
5291 setPlayerdata(arg-2, "rank", "Titan")
5292 else:
5293 send "&9Client Manager> &c&lInvalid rank!"
5294 else if argument 3 is "ETERNAL":
5295 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5296 if {_c} is true:
5297 set {mineplex.rank.%arg-2%} to "&3&lETERNAL "
5298 execute console command "/__mp__dp__ %arg-2%"
5299 add "mineplex.legend" to arg-2's permissions
5300 add "mineplex.titan" to arg-2's permissions
5301 send "&9Client Manager> &7%arg-2%'s rank has been updated to Eternal!"
5302 send "&9Client Manager> &7Your rank has been updated to Eternal!" to arg 2
5303 set arg-2 tab name to "&3&lETERNAL &e%arg-2%"
5304 updateRankAPI(arg-2)
5305 setPlayerdata(arg-2, "rank", "Eternal")
5306 else:
5307 send "&9Client Manager> &c&lInvalid rank!"
5308 else if argument 3 is "TRAINEE":
5309 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5310 if {_c} is true:
5311 set {mineplex.rank.%arg-2%} to "&6&lTRAINEE "
5312 execute console command "/__mp__dp__ %arg-2%"
5313 add "mineplex.trainee" to arg-2's permissions
5314 add "mineplex.legend" to arg-2's permissions
5315 add "mineplex.titan" to arg-2's permissions
5316 add "mineplex.2fa" to arg-2's permissions
5317 send "&9Client Manager> &7%arg-2%'s rank has been updated to Trainee!"
5318 send "&9Client Manager> &7Your rank has been updated to Trainee!" to arg 2
5319 set arg-2 tab name to "&6&lTRAINEE &e%arg-2%"
5320 updateRankAPI(arg-2)
5321 setPlayerdata(arg-2, "rank", "Trainee")
5322 else:
5323 send "&9Client Manager> &c&lInvalid rank!"
5324 else if argument 3 is "MODERATOR":
5325 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5326 if {_c} is true:
5327 set {mineplex.rank.%arg-2%} to "&6&lMOD "
5328 execute console command "/__mp__dp__ %arg-2%"
5329 add "mineplex.trainee" to arg-2's permissions
5330 add "mineplex.mod" to arg-2's permissions
5331 add "mineplex.legend" to arg-2's permissions
5332 add "mineplex.2fa" to arg-2's permissions
5333 add "mineplex.titan" to arg-2's permissions
5334 send "&9Client Manager> &7%arg-2%'s rank has been updated to Mod!"
5335 send "&9Client Manager> &7Your rank has been updated to Mod!" to arg 2
5336 set arg-2 tab name to "&6&lMOD &e%arg-2%"
5337 updateRankAPI(arg-2)
5338 setPlayerdata(arg-2, "rank", "Mod")
5339 else:
5340 send "&9Client Manager> &c&lInvalid rank!"
5341 else if argument 3 is "SNR_MODERATOR":
5342 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5343 if {_c} is true:
5344 set {mineplex.rank.%arg-2%} to "&6&lSR.MOD "
5345 execute console command "/__mp__dp__ %arg-2%"
5346 add "mineplex.trainee" to arg-2's permissions
5347 add "mineplex.mod" to arg-2's permissions
5348 add "mineplex.srmod" to arg-2's permissions
5349 add "mineplex.legend" to arg-2's permissions
5350 add "mineplex.2fa" to arg-2's permissions
5351 add "mineplex.titan" to arg-2's permissions
5352 send "&9Client Manager> &7%arg-2%'s rank has been updated to Sr.Mod!"
5353 send "&9Client Manager> &7Your rank has been updated to Sr.Mod!" to arg 2
5354 set arg-2 tab name to "&6&lSR.MOD &e%arg-2%"
5355 updateRankAPI(arg-2)
5356 set "rank" to "SrMod" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
5357 setPlayerdata(arg-2, "rank", "SrMod")
5358 else:
5359 send "&9Client Manager> &c&lInvalid rank!"
5360 else if argument 3 is "CLANS_MOD":
5361 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5362 if {_c} is true:
5363 set {mineplex.rank.%arg-2%} to "&6&lC.MOD "
5364 execute console command "/__mp__dp__ %arg-2%"
5365 add "mineplex.trainee" to arg-2's permissions
5366 add "mineplex.mod" to arg-2's permissions
5367 add "mineplex.srmod" to arg-2's permissions
5368 add "mineplex.legend" to arg-2's permissions
5369 add "mineplex.2fa" to arg-2's permissions
5370 add "mineplex.titan" to arg-2's permissions
5371 send "&9Client Manager> &7%arg-2%'s rank has been updated to C.Mod!"
5372 send "&9Client Manager> &7Your rank has been updated to C.Mod!" to arg 2
5373 set arg-2 tab name to "&6&lC.MOD &e%arg-2%"
5374 updateRankAPI(arg-2)
5375 setPlayerdata(arg-2, "rank", "CMod")
5376 else:
5377 send "&9Client Manager> &c&lInvalid rank!"
5378 else if argument 3 is "ADMIN":
5379 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5380 if {_c} is true:
5381 set {mineplex.rank.%arg-2%} to "&4&lADMIN "
5382 execute console command "/__mp__dp__ %arg-2%"
5383 add "mineplex.trainee" to arg-2's permissions
5384 add "mineplex.legend" to arg-2's permissions
5385 add "mineplex.mod" to arg-2's permissions
5386 add "mineplex.jrdev" to arg-2's permissions
5387 add "mineplex.youtube" to arg-2's permissions
5388 add "mineplex.builder" to arg-2's permissions
5389 add "mineplex.srmod" to arg-2's permissions
5390 add "mineplex.admin" to arg-2's permissions
5391 add "mineplex.titan" to arg-2's permissions
5392 add "mineplex.2fa" to arg-2's permissions
5393 send "&9Client Manager> &7%arg-2%'s rank has been updated to Admin!"
5394 send "&9Client Manager> &7Your rank has been updated to Admin!" to arg 2
5395 set arg-2 tab name to "&4&lADMIN &e%arg-2%"
5396 updateRankAPI(arg-2)
5397 setPlayerdata(arg-2, "rank", "Admin")
5398 else:
5399 send "&9Client Manager> &c&lInvalid rank!"
5400 else if argument 3 is "APEX":
5401 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5402 if {_c} is true:
5403 set {mineplex.rank.%arg-2%} to "&9&lAPEX "
5404 execute console command "/__mp__dp__ %arg-2%"
5405 add "mineplex.trainee" to arg-2's permissions
5406 add "mineplex.legend" to arg-2's permissions
5407 add "mineplex.mod" to arg-2's permissions
5408 add "mineplex.jrdev" to arg-2's permissions
5409 add "mineplex.youtube" to arg-2's permissions
5410 add "mineplex.builder" to arg-2's permissions
5411 add "mineplex.srmod" to arg-2's permissions
5412 add "mineplex.admin" to arg-2's permissions
5413 add "mineplex.titan" to arg-2's permissions
5414 add "mineplex.2fa" to arg-2's permissions
5415 send "&9Client Manager> &7%arg-2%'s rank has been updated to Apex Minecraft Hosting!"
5416 send "&9Client Manager> &7Your rank has been updated to Apex Minecraft Hosting!" to arg 2
5417 set arg-2 tab name to "&9&lAPEX &e%arg-2%"
5418 updateRankAPI(arg-2)
5419 setPlayerdata(arg-2, "rank", "Apex")
5420 else:
5421 send "&9Client Manager> &c&lInvalid rank!"
5422 else if argument 3 is "LEADER":
5423 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5424 if {_c} is true:
5425 set {mineplex.rank.%arg-2%} to "&4&lLEADER "
5426 execute console command "/__mp__dp__ %arg-2%"
5427 add "mineplex.trainee" to arg-2's permissions
5428 add "mineplex.mod" to arg-2's permissions
5429 add "mineplex.jrdev" to arg-2's permissions
5430 add "mineplex.builder" to arg-2's permissions
5431 add "mineplex.srmod" to arg-2's permissions
5432 add "mineplex.admin" to arg-2's permissions
5433 add "mineplex.youtube" to arg-2's permissions
5434 add "mineplex.legend" to arg-2's permissions
5435 add "mineplex.2fa" to arg-2's permissions
5436 add "mineplex.leader" to arg-2's permissions
5437 add "mineplex.titan" to arg-2's permissions
5438 send "&9Client Manager> &7%arg-2%'s rank has been updated to Leader!"
5439 send "&9Client Manager> &7Your rank has been updated to Leader!" to arg 2
5440 set arg-2 tab name to "&4&lLEADER &e%arg-2%"
5441 updateRankAPI(arg-2)
5442 setPlayerdata(arg-2, "rank", "Leader")
5443 else:
5444 send "&9Client Manager> &c&lInvalid rank!"
5445 else if argument 3 is "OWNER":
5446 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5447 if {_c} is true:
5448 set {mineplex.rank.%arg-2%} to "&4&lOWNER "
5449 execute console command "/__mp__dp__ %arg-2%"
5450 add "mineplex.trainee" to arg-2's permissions
5451 add "mineplex.mod" to arg-2's permissions
5452 add "mineplex.srmod" to arg-2's permissions
5453 add "mineplex.admin" to arg-2's permissions
5454 add "mineplex.jrdev" to arg-2's permissions
5455 add "mineplex.dev" to arg-2's permissions
5456 add "mineplex.youtube" to arg-2's permissions
5457 add "mineplex.builder" to arg-2's permissions
5458 add "mineplex.leader" to arg-2's permissions
5459 add "mineplex.jrdev" to arg-2's permissions
5460 add "mineplex.2fa" to arg-2's permissions
5461 add "mineplex.owner" to arg-2's permissions
5462 add "mineplex.legend" to arg-2's permissions
5463 add "mineplex.titan" to arg-2's permissions
5464 send "&9Client Manager> &7%arg-2%'s rank has been updated to Owner!"
5465 send "&9Client Manager> &7Your rank has been updated to Owner!" to arg 2
5466 set arg-2 tab name to "&4&lOWNER &e%arg-2%"
5467 updateRankAPI(arg-2)
5468 setPlayerdata(arg-2, "rank", "Owner")
5469 else:
5470 send "&9Client Manager> &c&lInvalid rank!"
5471 else if argument 3 is "BUILDER":
5472 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5473 if {_c} is true:
5474 set {mineplex.rank.%arg-2%} to "&9&lBUILDER "
5475 execute console command "/__mp__dp__ %arg-2%"
5476 add "mineplex.titan" to arg-2's permissions
5477 add "mineplex.legend" to arg-2's permissions
5478 add "mineplex.2fa" to arg-2's permissions
5479 send "&9Client Manager> &7%arg-2%'s rank has been updated to Builder!"
5480 send "&9Client Manager> &7Your rank has been updated to Builder!" to arg 2
5481 set arg-2 tab name to "&9&lBUIDLER &e%arg-2%"
5482 updateRankAPI(arg-2)
5483 setPlayerdata(arg-2, "rank", "Builder")
5484 else:
5485 send "&9Client Manager> &c&lInvalid rank!"
5486 else if argument 3 is "MAPPER":
5487 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5488 if {_c} is true:
5489 set {mineplex.rank.%arg-2%} to "&9&lMAPPER "
5490 execute console command "/__mp__dp__ %arg-2%"
5491 add "mineplex.builder" to arg-2's permissions
5492 add "mineplex.titan" to arg-2's permissions
5493 add "mineplex.legend" to arg-2's permissions
5494 add "mineplex.2fa" to arg-2's permissions
5495 send "&9Client Manager> &7%arg-2%'s rank has been updated to Mapper!"
5496 send "&9Client Manager> &7Your rank has been updated to Mapper!" to arg 2
5497 set arg-2 tab name to "&9&lMAPPER &e%arg-2%"
5498 updateRankAPI(arg-2)
5499 setPlayerdata(arg-2, "rank", "Mapper")
5500 else:
5501 send "&9Client Manager> &c&lInvalid rank!"
5502 else if argument 3 is "SUPPORT":
5503 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5504 if {_c} is true:
5505 set {mineplex.rank.%arg-2%} to "&9&lSUPPORT "
5506 execute console command "/__mp__dp__ %arg-2%"
5507 add "mineplex.trainee" to arg-2's permissions
5508 add "mineplex.legend" to arg-2's permissions
5509 add "mineplex.jrdev" to arg-2's permissions
5510 add "mineplex.2fa" to arg-2's permissions
5511 add "mineplex.mod" to arg-2's permissions
5512 add "mineplex.youtube" to arg-2's permissions
5513 add "mineplex.builder" to arg-2's permissions
5514 add "mineplex.srmod" to arg-2's permissions
5515 add "mineplex.admin" to arg-2's permissions
5516 add "mineplex.titan" to arg-2's permissions
5517 send "&9Client Manager> &7%arg-2%'s rank has been updated to Support!"
5518 send "&9Client Manager> &7Your rank has been updated to Support!" to arg 2
5519 set arg-2 tab name to "&9&lSUPPORT &e%arg-2%"
5520 updateRankAPI(arg-2)
5521 setPlayerdata(arg-2, "rank", "Support")
5522 else:
5523 send "&9Client Manager> &c&lInvalid rank!"
5524 else if argument 3 is "ARTIST":
5525 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5526 if {_c} is true:
5527 set {mineplex.rank.%arg-2%} to "&9&lARTIST "
5528 execute console command "/__mp__dp__ %arg-2%"
5529 add "mineplex.legend" to arg-2's permissions
5530 add "mineplex.titan" to arg-2's permissions
5531 send "&9Client Manager> &7%arg-2%'s rank has been updated to Artist!"
5532 send "&9Client Manager> &7Your rank has been updated to Artist!" to arg 2
5533 set arg-2 tab name to "&9&lARTIST &e%arg-2%"
5534 updateRankAPI(arg-2)
5535 setPlayerdata(arg-2, "rank", "Artist")
5536 else:
5537 send "&9Client Manager> &c&lInvalid rank!"
5538 else if argument 3 is "MAPLEAD":
5539 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5540 if {_c} is true:
5541 set {mineplex.rank.%arg-2%} to "&9&lMAPLEAD "
5542 execute console command "/__mp__dp__ %arg-2%"
5543 add "mineplex.builder" to arg-2's permissions
5544 add "mineplex.2fa" to arg-2's permissions
5545 add "mineplex.titan" to arg-2's permissions
5546 add "mineplex.legend" to arg-2's permissions
5547 send "&9Client Manager> &7%arg-2%'s rank has been updated to MapLead!"
5548 send "&9Client Manager> &7Your rank has been updated to MapLead!" to arg 2
5549 set arg-2 tab name to "&9&lMAPLEAD &e%arg-2%"
5550 updateRankAPI(arg-2)
5551 setPlayerdata(arg-2, "rank", "Maplead")
5552 else:
5553 send "&9Client Manager> &c&lInvalid rank!"
5554 else if argument 3 is "JNR_DEV":
5555 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5556 if {_c} is true:
5557 set {mineplex.rank.%arg-2%} to "&6&lJR.DEV "
5558 execute console command "/__mp__dp__ %arg-2%"
5559 add "mineplex.trainee" to arg-2's permissions
5560 add "mineplex.mod" to arg-2's permissions
5561 add "mineplex.srmod" to arg-2's permissions
5562 add "mineplex.2fa" to arg-2's permissions
5563 add "mineplex.builder" to arg-2's permissions
5564 add "mineplex.jrdev" to arg-2's permissions
5565 add "mineplex.legend" to arg-2's permissions
5566 add "mineplex.titan" to arg-2's permissions
5567 send "&9Client Manager> &7%arg-2%'s rank has been updated to Jr.Dev!"
5568 send "&9Client Manager> &7Your rank has been updated to Jr.Dev!" to arg 2
5569 set arg-2 tab name to "&6&lJR.DEV &e%arg-2%"
5570 updateRankAPI(arg-2)
5571 setPlayerdata(arg-2, "rank", "JrDev")
5572 else:
5573 send "&9Client Manager> &c&lInvalid rank!"
5574 else if argument 3 is "DEVELOPER":
5575 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5576 if {_c} is true:
5577 set {mineplex.rank.%arg-2%} to "&4&lDEV "
5578 execute console command "/__mp__dp__ %arg-2%"
5579 add "mineplex.trainee" to arg-2's permissions
5580 add "mineplex.mod" to arg-2's permissions
5581 add "mineplex.srmod" to arg-2's permissions
5582 add "mineplex.jrdev" to arg-2's permissions
5583 add "mineplex.2fa" to arg-2's permissions
5584 add "mineplex.admin" to arg-2's permissions
5585 add "mineplex.leader" to arg-2's permissions
5586 add "mineplex.owner" to arg-2's permissions
5587 add "mineplex.builder" to arg-2's permissions
5588 add "mineplex.dev" to arg-2's permissions
5589 add "mineplex.youtube" to arg-2's permissions
5590 add "mineplex.admin" to arg-2's permissions
5591 add "mineplex.legend" to arg-2's permissions
5592 add "mineplex.titan" to arg-2's permissions
5593 send "&9Client Manager> &7%arg-2%'s rank has been updated to Dev!"
5594 send "&9Client Manager> &7Your rank has been updated to Dev!" to arg 2
5595 set arg-2 tab name to "&4&lDEV &e%arg-2%"
5596 updateRankAPI(arg-2)
5597 setPlayerdata(arg-2, "rank", "Dev")
5598 else:
5599 send "&9Client Manager> &c&lInvalid rank!"
5600 else if argument 3 is "TWITCH":
5601 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5602 if {_c} is true:
5603 set {mineplex.rank.%arg-2%} to "&5&lTWITCH "
5604 execute console command "/__mp__dp__ %arg-2%"
5605 add "mineplex.twitch" to arg-2's permissions
5606 add "mineplex.legend" to arg-2's permissions
5607 add "mineplex.titan" to arg-2's permissions
5608 add "mineplex.youtube" to arg-2's permissions
5609 send "&9Client Manager> &7%arg-2%'s rank has been updated to Twitch!"
5610 send "&9Client Manager> &7Your rank has been updated to Twitch!" to arg 2
5611 set arg-2 tab name to "&5&lTWITCH &e%arg-2%"
5612 updateRankAPI(arg-2)
5613 setPlayerdata(arg-2, "rank", "Twitch")
5614 else:
5615 send "&9Client Manager> &c&lInvalid rank!"
5616 else if argument 3 is "YOUTUBE":
5617 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5618 if {_c} is true:
5619 set {mineplex.rank.%arg-2%} to "&c&lYOUTUBE "
5620 execute console command "/__mp__dp__ %arg-2%"
5621 add "mineplex.youtube" to arg-2's permissions
5622 add "mineplex.legend" to arg-2's permissions
5623 add "mineplex.titan" to arg-2's permissions
5624 send "&9Client Manager> &7%arg-2%'s rank has been updated to YouTube!"
5625 send "&9Client Manager> &7Your rank has been updated to YouTube!" to arg 2
5626 set arg-2 tab name to "&c&lYOUTUBE &e%arg-2%"
5627 updateRankAPI(arg-2)
5628 setPlayerdata(arg-2, "rank", "Youtube")
5629 else:
5630 send "&9Client Manager> &c&lInvalid rank!"
5631 else if argument 3 is "EVENT":
5632 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5633 if {_c} is true:
5634 set {mineplex.rank.%arg-2%} to "&f&lEVENT "
5635 execute console command "/__mp__dp__ %arg-2%"
5636 add "mineplex.youtube" to arg-2's permissions
5637 add "mineplex.legend" to arg-2's permissions
5638 add "mineplex.titan" to arg-2's permissions
5639 send "&9Client Manager> &7%arg-2%'s rank has been updated to Event!"
5640 send "&9Client Manager> &7Your rank has been updated to Event!" to arg 2
5641 set arg-2 tab name to "&f&lEVENT &e%arg-2%"
5642 updateRankAPI(arg-2)
5643 setPlayerdata(arg-2, "rank", "Event")
5644 else:
5645 send "&9Client Manager> &c&lInvalid rank!"
5646 else if argument 3 is "YT":
5647 set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
5648 if {_c} is true:
5649 set {mineplex.rank.%arg-2%} to "&5&lYT "
5650 execute console command "/__mp__dp__ %arg-2%"
5651 add "mineplex.youtube" to arg-2's permissions
5652 add "mineplex.legend" to arg-2's permissions
5653 add "mineplex.titan" to arg-2's permissions
5654 send "&9Client Manager> &7%arg-2%'s rank has been updated to YT!"
5655 send "&9Client Manager> &7Your rank has been updated to YT!" to arg 2
5656 set arg-2 tab name to "&5&lYT &e%arg-2%"
5657 updateRankAPI(arg-2)
5658 setPlayerdata(arg-2, "rank", "Yt")
5659 else:
5660 send "&9Client Manager> &c&lInvalid rank!"
5661 else:
5662 send "&9Client Manager> &c&lInvalid rank!"
5663 rankLoad(arg-2, 2, 0)
5664 else if argument 1 is "test":
5665 if arg-2 or arg-3 is not set:
5666 send "&9/rank test <player> <rank>: Temporarily sets the target users' rank"
5667 else:
5668 if arg 2 is online:
5669 if {mineplex.testrank.%arg-2%} is not set:
5670 if arg 3 is "ULTRA":
5671 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5672 set {mineplex.rank.%arg-2%} to "&b&lULTRA "
5673 execute console command "/__mp__dp__ %arg-2%"
5674 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5675 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5676 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5677 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5678 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5679 set arg-2 tab name to "&b&lULTRA &e%arg-2%"
5680 updateRankAPI(arg-2)
5681 wait 5 ticks
5682 rankLoad(arg-2, 2, 1)
5683 else if arg 3 is "HERO":
5684 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5685 set {mineplex.rank.%arg-2%} to "&d&lHERO "
5686 execute console command "/__mp__dp__ %arg-2%"
5687 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5688 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5689 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5690 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5691 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5692 set arg-2 tab name to "&d&lHERO &e%arg-2%"
5693 updateRankAPI(arg-2)
5694 wait 5 ticks
5695 rankLoad(arg-2, 2, 1)
5696 else if arg 3 is "LEGEND":
5697 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5698 set {mineplex.rank.%arg-2%} to "&a&lLEGEND "
5699 execute console command "/__mp__dp__ %arg-2%"
5700 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5701 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5702 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5703 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5704 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5705 set arg-2 tab name to "&a&lLEGEND &e%arg-2%"
5706 updateRankAPI(arg-2)
5707 wait 5 ticks
5708 rankLoad(arg-2, 2, 1)
5709 else if arg 3 is "TITAN":
5710 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5711 set {mineplex.rank.%arg-2%} to "&c&lTITAN "
5712 execute console command "/__mp__dp__ %arg-1%"
5713 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5714 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5715 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5716 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5717 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5718 set arg-2 tab name to "&c&lTITAN &e%arg-2%"
5719 updateRankAPI(arg-2)
5720 wait 5 ticks
5721 rankLoad(arg-2, 2, 1)
5722 else if arg 3 is "ETERNAL":
5723 set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
5724 set {mineplex.rank.%arg-2%} to "&3&lETERNAL "
5725 execute console command "/__mp__dp__ %arg-2%"
5726 set {_or} to uncolored {mineplex.testrank.%arg-2%}
5727 send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
5728 send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
5729 send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
5730 send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
5731 set arg-2 tab name to "&3&lETERNAL &e%arg-2%"
5732 updateRankAPI(arg-2)
5733 wait 5 ticks
5734 rankLoad(arg-2, 2, 1)
5735 else:
5736 send "&9Client Manager> &c&lInvalid rank!"
5737 else:
5738 send "&9Client Manager> &c&lThis player already has a test rank!"
5739 else:
5740 send "&9Online Player Search> &e0 &7matches for [&e%arg-2%&7]."
5741
5742
5743
5744
5745command /powerplay [<offline player>]:
5746 permission: mineplex.jrdev
5747 permission message: &9Permissions> &7You do not have permission to do that.
5748 trigger:
5749 if arg 1 is set:
5750 if {mineplex.ppc.%arg-1%} is not set:
5751 set {mineplex.ppc.%arg-1%} to true
5752 send "&9PPC> &7%arg-1% Power Play: &aTrue"
5753 else:
5754 delete {mineplex.ppc.%arg-1%}
5755 send "&9PPC> &7%arg-1% Power Play: &cFalse"
5756 else:
5757 send "&9PPC> &7/powerplay (player)"
5758
5759command /shard [<offline player>] [<string>] [<string>]:
5760 permission: mineplex.admin
5761 permission message: &9Permissions> &7You do not have permission to do that.
5762 trigger:
5763 if arg 1 is not set:
5764 send "&9Shard> &7Missing Args: &e/shard <player> <amount>"
5765 else:
5766 if arg 2 is not set:
5767 send "&9Shard> &7Missing Args: &e/shard <player> <amount>"
5768 else:
5769 if arg 1 is not online:
5770 send "&9Shard> &7Could not find player &e%arg-1%"
5771 else:
5772 set {_num} to arg 2 parsed as an integer
5773 if {_num} is an integer:
5774 add {_num} to {mineplex.shards.%arg-1%}
5775 send "&9Shard> &7You gave &e%arg-2% Shards &7to &e%arg-1%&7."
5776 send "&9Shard> &e%player% &7gave you &e%arg-2% Shards&7." to arg-1
5777 addShards(arg-1, {_num})
5778 else:
5779 send "&9Shard> &7Invalid Shards Amount"
5780
5781command /gem [<offline player>] [<string>] [<string>]:
5782 permission: mineplex.admin
5783 permission message: &9Permissions> &7You do not have permission to do that.
5784 trigger:
5785 if arg 1 is not set:
5786 send "&9Gem> &7Missing Args: &e/gem <player> <amount>"
5787 else:
5788 if arg 2 is not set:
5789 send "&9Gem> &7Missing Args: &e/gem <player> <amount>"
5790 else:
5791 if arg 1 is not online:
5792 send "&9Gem> &7Could not find player &e%arg-1%"
5793 else:
5794 set {_num} to arg 2 parsed as an integer
5795 if {_num} is an integer:
5796 addGems(arg-1, {_num})
5797 send "&9Gem> &7You gave &e%arg-2% Gems &7to &e%arg-1%&7."
5798 send "&9Gem> &e%player% &7gave you &e%arg-2% Gems&7." to arg-1
5799 else:
5800 send "&9Gem> &7Invalid Gems Amount"
5801
5802command /getadmin:
5803 permission: mineplex.jrdev
5804 permission message: &9Permissions> &7You do not have permission to do that.
5805 trigger:
5806 if {mineplex.rank.%player%} is "&6&lJR.DEV ":
5807 if {mineplex.disguise.%player%} is set:
5808 set {_p} to {mineplex.disguise.%player%}
5809 else:
5810 set {_p} to player
5811 if {mineplex.adminmode.%player%} is true:
5812 remove "mineplex.admin" from player's permissions
5813 remove "mineplex.builder" from player's permissions
5814 remove "mineplex.youtube" from player's permissions
5815 set {mineplex.adminmode.%player%} to false
5816 send "&9Admin Mode> &7%{_p}% Admin Mode: &cFalse"
5817 else:
5818 set {mineplex.adminmode.%player%} to true
5819 add "mineplex.admin" to player's permissions
5820 add "mineplex.builder" to player's permissions
5821 add "mineplex.youtube" to player's permissions
5822 send "&9Admin Mode> &7%{_p}% Admin Mode: &aTrue"
5823 else:
5824 send "&9Admin Mode> &7/getadmin is only for JR.DEV!"
5825
5826command /__mp__dp__ <player>:
5827 executable by: console
5828 trigger:
5829 remove "mineplex.trainee" from arg-1's permissions
5830 remove "mineplex.legend" from arg-1's permissions
5831 remove "mineplex.titan" from arg-1's permissions
5832 remove "mineplex.mod" from arg-1's permissions
5833 remove "mineplex.srmod" from arg-1's permissions
5834 remove "mineplex.admin" from arg-1's permissions
5835 remove "mineplex.leader" from arg-1's permissions
5836 remove "mineplex.owner" from arg-1's permissions
5837 remove "mineplex.jrdev" from arg-1's permissions
5838 remove "mineplex.2fa" from arg-1's permissions
5839 remove "mineplex.dev" from arg-1's permissions
5840 remove "mineplex.twitch" from arg-1's permissions
5841 remove "mineplex.youtube" from arg-1's permissions
5842 remove "mineplex.builder" from arg-1's permissions
5843
5844function rawreport(arg1: player , arg2: player , arg3: text , arg4: text , arg5: text) :: string:
5845 if {_arg3} is "Hacking":
5846 set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
5847 set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
5848 set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
5849 set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
5850 set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
5851 set {mineplex.report.open.%{mineplex.report.id}%} to true
5852 send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
5853 else if {_arg3} is "Chat-Abuse":
5854 set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
5855 set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
5856 set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
5857 set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
5858 set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
5859 set {mineplex.report.open.%{mineplex.report.id}%} to true
5860 send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
5861 else if {_arg3} is "Gameplay":
5862 set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
5863 set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
5864 set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
5865 set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
5866 set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
5867 set {mineplex.report.open.%{mineplex.report.id}%} to true
5868 send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
5869 else:
5870 stop
5871 loop all players:
5872 if loop-player has permission "mineplex.trainee":
5873 if {mineplex.pref.report.%loop-player%} is true:
5874 send "&9[Report ##%{mineplex.report.id}%] &7%{_arg2}% has reported %{_arg1}% for a &e%{_arg3}% &7offence with reason &e%{_arg5}%&7!" to loop-player
5875 add 1 to {mineplex.report.id}
5876
5877command /report [<offline player>] [<text>]:
5878 permission: mineplex.titan
5879 permission message: &9Report> &cThe report feature is currently in a trial phase for Titan players
5880 trigger:
5881 if arg-2 is set:
5882 if arg-1 is player:
5883 send "&9Report> &cYou cannot report yourself."
5884 stop
5885 open chest with 3 rows named "Report %arg-1%" to player
5886 format slot 11 of player with iron sword 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)]
5887 format slot 13 of player with book and quill named "&3&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)]
5888 format slot 15 of player with ender pearl named "&fGameplay" 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)]
5889 else:
5890 send "&9Report> &cInvalid Usage: &e/report <player> <reason>"
5891
5892command /reporthandle [<string>] [<string>]:
5893 aliases: /rh
5894 permission: mineplex.mod
5895 permission message: &9Permissions> &7You do not have permission to do that.
5896 trigger:
5897 if arg 1 is not set:
5898 send "&9Report> &7Corect Usage: &e/reporthandle <report id>"
5899 else:
5900 set {_id} to arg-1 parsed as a number
5901 if {_id} is a number:
5902 if {mineplex.report.open.%{_id}%} is true:
5903 if {mineplex.report.hand.%{_id}%} is not set:
5904 set {mineplex.report.hand.%{_id}%} to player
5905 set {_sus} to {mineplex.report.player.%{_id}%} parsed as an offline player
5906 set {_ip} to ip address of {_sus}
5907 loop {mineplex.totalaccounts.%{_ip}%::*}:
5908 add 1 to {_accounts}
5909 if {_accounts} is not set:
5910 set {_accounts} to 1
5911 send ""
5912 send "&9Report ##%{_id}%> &bReport Overview"
5913 send "&9Report ##%{_id}%> &bSuspect - &6%{mineplex.report.player.%{_id}%}%"
5914 send "&9Report ##%{_id}%> &bType - &6%{mineplex.report.type.%{_id}%}%"
5915 send "&9Report ##%{_id}%> &bTeam - &6None"
5916 send "&9Report ##%{_id}%>"
5917 send "&9Report ##%{_id}%> &6SoonTM &btotal reports"
5918 send "&9Report ##%{_id}%>"
5919 send "&9Report ##%{_id}%> &7(1) &6%{mineplex.report.reporter.%{_id}%}% ##1 &7- ""&b%{mineplex.report.reason.%{_id}%}%&7"""
5920 send "&9Report ##%{_id}%>"
5921 send "&9Report ##%{_id}%> &bView chat log"
5922 mcrjson("%player%", "&9Report ##%{_id}%> ||&bClose this report||ttp:&bClick to close this report||cmd:/reportclose %{_id}% undetermined")
5923 loop all players:
5924 if loop-player has permission "mineplex.trainee":
5925 if {mineplex.pref.report.%loop-player%} is true:
5926 send "&9[Report %{_id}%] &e%player% &7is handling this report." to loop-player
5927 else:
5928 send "&9Report> &7This report is already being handling!"
5929 else:
5930 send "&9Report> &7This report has already been closed or does not exsit!"
5931 else:
5932 send "&9Report> &cYour arguments are inappropriate for this command!"
5933 send "&9Report> &e/reporthandle (id)"
5934
5935command /reportclose [<string>] [<string>] [<string>]:
5936 aliases: /rc
5937 permission: mineplex.mod
5938 permission message: &9Permissions> &7You do not have permission to do that.
5939 trigger:
5940 if arg 1 is not set:
5941 send "&9Report> &7Corect Usage: &e/reportclose (report id)"
5942 send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
5943 stop
5944 if arg 2 is not set:
5945 send "&9Report> &7Corect Usage: &e/reportclose (report id)"
5946 send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
5947 stop
5948 else:
5949 set {_id} to arg-1 parsed as a number
5950 if {mineplex.report.hand.%{_id}%} is not player:
5951 send "&9Report> &cYou can only close your own report!"
5952 stop
5953 if {_id} is a number:
5954 if {mineplex.report.open.%{_id}%} is true:
5955 if arg 2 is "UNDETERMINED":
5956 set {_r} to "&f&lCould not determine"
5957 set {mineplex.report.open.%{_id}%} to false
5958 loop all players:
5959 if loop-player has permission "mineplex.trainee":
5960 if {mineplex.pref.report.%loop-player%} is true:
5961 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
5962 else if arg 2 is "MUTED":
5963 set {_r} to "&e&lMuted"
5964 set {mineplex.report.open.%{_id}%} to false
5965 loop all players:
5966 if loop-player has permission "mineplex.trainee":
5967 if {mineplex.pref.report.%loop-player%} is true:
5968 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
5969 else if arg 2 is "BANNED":
5970 set {_r} to "&c&lBanned"
5971 set {mineplex.report.open.%{_id}%} to false
5972 loop all players:
5973 if loop-player has permission "mineplex.trainee":
5974 if {mineplex.pref.report.%loop-player%} is true:
5975 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
5976 else if arg 2 is "ABUSE":
5977 set {_r} to "&4&lAbuse of report system"
5978 set {mineplex.report.open.%{_id}%} to false
5979 loop all players:
5980 if loop-player has permission "mineplex.trainee":
5981 if {mineplex.pref.report.%loop-player%} is true:
5982 send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
5983 else:
5984 send "&9Report> &cInvalid report reason!"
5985 else:
5986 send "&9Report> &7This report has already been closed or does not exsit!"
5987 else:
5988 send "&9Report> &cYour arguments are inappropriate for this command!"
5989 send "&9Report> &e/reportclose (report id) (reason)"
5990 send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
5991
5992command /s [<text>]:
5993 permission: mineplex.mod
5994 permission message: &9Permissions> &7You do not have permission to do that.
5995 trigger:
5996 if {mineplex.disguise.%player%} is set:
5997 set {_p} to {mineplex.disguise.%player%}
5998 else:
5999 set {_p} to player
6000 if argument 1 is set:
6001 broadcast "&f&l%{_p}% &b%arg-1%"
6002 else:
6003 send "&9Broadcast> &7Corect Usage: /s <message>."
6004
6005command /gm [<player>]:
6006 permission: mineplex.builder
6007 permission message: &9Permissions> &7You do not have permission to do that.
6008 trigger:
6009 if {mineplex.disguise.%player%} is set:
6010 set {_p} to {mineplex.disguise.%player%}
6011 else:
6012 set {_p} to player
6013 if argument 1 is not set:
6014 if player's gamemode is survival:
6015 set the player's gamemode to creative
6016 send "&9Game Mode> &7%{_p}% Creative Mode: &aTrue"
6017 else:
6018 set the player's gamemode to survival
6019 send "&9Game Mode> &7%{_p}% Creative Mode: &cFalse"
6020 else:
6021 if player has permission "mineplex.admin":
6022 if arg-1's gamemode is survival:
6023 set the arg-1's gamemode to creative
6024 send "&9Game Mode> &7%arg-1% Creative Mode: &aTrue"
6025 else:
6026 set the arg-1's gamemode to survival
6027 send "&9Game Mode> &7%arg-1% Creative Mode: &cFalse"
6028 else:
6029 send "&9Permissions> &7You do not have permission to do that."
6030
6031command /ignore [<offline player>] [<string>]:
6032 trigger:
6033 if arg 1 is not set:
6034 if {mineplex.ignorelist.%player%::*} is not set:
6035 send "&b&m=====================[&f&lIgnoring&b&m]======================"
6036 send ""
6037 send "&fWelcome to your Ignore List!"
6038 send ""
6039 send "&fTo ignore people, type &a/ignore <Player Name>"
6040 send ""
6041 send "&fType &a/ignore &fat any time to view the ignored!"
6042 send ""
6043 send "&b&m====================================================="
6044 else:
6045 send "&b&m=====================[&f&lIgnoring&b&m]======================"
6046 loop {mineplex.ignorelist.%player%::*}:
6047 mcrjson("%player%", "&7Ignoring %loop-value% &f - ||&c&lUnignore||ttp:&fStop ignoring %loop-value%||cmd:/unignore %loop-value%||")
6048 send "&b&m====================================================="
6049 else:
6050 loop {mineplex.ignorelist.%player%::*}:
6051 if loop-value is "%arg-1%":
6052 set {_pre} to true
6053 if {_pre} is true:
6054 send "&9Ignore> &a%arg-1% &7has already been ignored."
6055 else:
6056 add "%arg-1%" to {mineplex.ignorelist.%player%::*}
6057 send "&9Ignore> &7Now ignoring &a%arg-1%"
6058
6059command /unignore [<offline player>] [<string>]:
6060 trigger:
6061 if arg 1 is set:
6062 send "&9Ignore> &7No longer ignoring &a%arg-1%"
6063 remove "%arg-1%" from {mineplex.ignorelist.%player%::*}
6064
6065command /message [<player>] [<text>]:
6066 aliases: /tell, /m, /w, /msg, /whisper
6067 trigger:
6068 if {mineplex.disguise.%player%} is set:
6069 set {_p} to {mineplex.disguise.%player%}
6070 else:
6071 set {_p} to player
6072 set {_get} to getPlayerdata(player, "muted")
6073 if {_get} is "yes":
6074 if {muted::%player%::type} is "perm":
6075 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
6076 stop
6077 if {muted::%player%::type} is "temp":
6078 set {_waited} to difference between {muted::%player%::when} and now
6079 if {_waited} is less than {muted::%player%::time}:
6080 send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
6081 stop
6082 if argument 1 is set:
6083 if argument 2 is set:
6084 if {mineplex.pref.pm.%arg-1%} is false:
6085 send "&d%arg-1% has private messaging disabled."
6086 stop
6087 loop {mineplex.ignorelist.%player%::*}:
6088 if loop-value is "%arg-1%":
6089 send "&9Ignore> &7You are ignoring that player"
6090 stop
6091 loop {mineplex.ignorelist.%arg-1%::*}:
6092 if loop-value is "%player%":
6093 send "&9Ignore> &7That player is ignoring you"
6094 stop
6095 send "&6&l%{_p}% > %arg-1% &e&l%arg-2%"
6096 send "&6&l%{_p}% > %arg-1% &e&l%arg-2%" to arg-1
6097 play "NOTE_PLING" to player at volume 0.5
6098 play "NOTE_PLING" to arg-1 at volume 0.5
6099 set {mineplex.lastm.%player%} to "%arg-1%" parsed as player
6100 if {mineplex.rank.%arg-1%} is "&4&lDEV ":
6101 send "&d%arg-1% is often AFK or minimized, due to plugin development."
6102 send "&dPlease be patient if they do not reply instantly."
6103 else:
6104 send "&9Message> &cErr...something went wrong?"
6105 else:
6106 send "&9Message> &cErr...something went wrong?"
6107
6108command /ping:
6109 trigger:
6110 send "&9Chat> &7PONG!"
6111
6112on command:
6113 command is "minecraft:me":
6114 send "&9Chat> &7Nope, not allowed!"
6115 cancel event
6116
6117command /me [<string>]:
6118 aliases: /minecraft:me
6119 trigger:
6120 if arg 1 is not set:
6121 send "&cUsage: /me <action...>"
6122 else:
6123 send "&9Chat> &7Nope, not allowed!"
6124
6125command /newsconfirm <number>:
6126 permission: mineplex.admin
6127 permission message: &9Permissions> &7You do not have permission to do that.
6128 trigger:
6129 mcrjson("%player%", "&9Hub Manager>|| &a[CONFIRM]||ttp:Are you absolutely sure???||cmd:/news delete %arg-1%|| &6News Entry %arg-1% &7deletion?")
6130
6131command /news [<string>] [<string>] [<string>]:
6132 permission: mineplex.admin
6133 permission message: &9Permissions> &7You do not have permission to do that.
6134 trigger:
6135 if arg 1 is not set:
6136 send "&9News Manager> &7Available news arguments for this command:"
6137 send "&6/news list &7Lists (numbered) stored news messages from database. &4Admin"
6138 send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &4Admin"
6139 send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &4Admin"
6140 send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &4Admin"
6141 send "&4*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &4Admin"
6142 else:
6143 if arg 1 is "list":
6144 send "&9Hub Manager> &7Current server news messages:"
6145 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 1 : %{mineplex.news.line1}%||cmd:/newsconfirm 1|| &6News 1 &7: &f%{mineplex.news.line1}%")
6146 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 2 : %{mineplex.news.line2}%||cmd:/newsconfirm 2|| &6News 2 &7: &f%{mineplex.news.line2}%")
6147 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 3 : %{mineplex.news.line3}%||cmd:/newsconfirm 3|| &6News 3 &7: &f%{mineplex.news.line3}%")
6148 mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 4 : %{mineplex.news.line4}%||cmd:/newsconfirm 4|| &6News 4 &7: &f%{mineplex.news.line4}%")
6149 else if arg 1 is "add":
6150 if arg 2 is set:
6151 set {_news} to "%arg-2%"
6152 if arg 3 is set:
6153 set {_news} to "%arg-2% %arg-3%"
6154 replace all "&" with "§" in {_news}
6155 if {mineplex.news.line1}'s length is 0:
6156 if {mineplex.mode} is "sql":
6157 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'"
6158 set {mineplex.news.line1} to {_news}
6159 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6160 else if {mineplex.news.line2}'s length is 0:
6161 if {mineplex.mode} is "sql":
6162 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'"
6163 set {mineplex.news.line2} to {_news}
6164 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6165 else if {mineplex.news.line3}'s length is 0:
6166 if {mineplex.mode} is "sql":
6167 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'"
6168 set {mineplex.news.line3} to {_news}
6169 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6170 else if {mineplex.news.line4}'s length is 0:
6171 if {mineplex.mode} is "sql":
6172 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'"
6173 set {mineplex.news.line4} to {_news}
6174 send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
6175 else:
6176 send "&9Hub Manager> &c&lNo free news slots!"
6177 else:
6178 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6179 else if arg 1 is "delete":
6180 if arg 2 is set:
6181 if arg 2 is "1":
6182 set {mineplex.news.line1} to ""
6183 if {mineplex.mode} is "sql":
6184 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '1'"
6185 send "&9Hub Manager> &7The news entry at position &61 &7has been deleted!"
6186 else if arg 2 is "2":
6187 if {mineplex.mode} is "sql":
6188 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '2'"
6189 set {mineplex.news.line2} to ""
6190 send "&9Hub Manager> &7The news entry at position &62 &7has been deleted!"
6191 else if arg 2 is "3":
6192 if {mineplex.mode} is "sql":
6193 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '3'"
6194 set {mineplex.news.line3} to ""
6195 send "&9Hub Manager> &7The news entry at position &63 &7has been deleted!"
6196 else if arg 2 is "4":
6197 if {mineplex.mode} is "sql":
6198 update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '4'"
6199 set {mineplex.news.line4} to ""
6200 send "&9Hub Manager> &7The news entry at position &64 &7has been deleted!"
6201 else:
6202 send "&9Hub Manager> &cThe specified new position is invalid!"
6203 else:
6204 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6205 else if arg 1 is "set":
6206 if arg 2 is set:
6207 if arg 3 is set:
6208 set {_news} to arg 3
6209 replace all "&" with "§" in {_news}
6210 if arg 2 is "1":
6211 if {mineplex.mode} is "sql":
6212 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'"
6213 set {mineplex.news.line1} to {_news}
6214 send "&9Hub Manager> &7The news entry at position &61 &7has been updated to: %{_news}%"
6215 else if arg 2 is "2":
6216 if {mineplex.mode} is "sql":
6217 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'"
6218 set {mineplex.news.line2} to {_news}
6219 send "&9Hub Manager> &7The news entry at position &62 &7has been updated to: %{_news}%"
6220 else if arg 2 is "3":
6221 if {mineplex.mode} is "sql":
6222 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'"
6223 set {mineplex.news.line3} to {_news}
6224 send "&9Hub Manager> &7The news entry at position &63 &7has been updated to: %{_news}%"
6225 else if arg 2 is "4":
6226 if {mineplex.mode} is "sql":
6227 update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'"
6228 set {mineplex.news.line4} to {_news}
6229 send "&9Hub Manager> &7The news entry at position &64 &7has been updated to: %{_news}%"
6230 else:
6231 send "&9Hub Manager> &cThe specified new position is invalid!"
6232 else:
6233 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6234 else:
6235 send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
6236 else:
6237 send "&9News Manager> &7Available news arguments for this command:"
6238 send "&6/news list &7Lists (numbered) stored news messages from database. &cAdmin"
6239 send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &cAdmin"
6240 send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &cAdmin"
6241 send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &cAdmin"
6242 send "&c*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &cAdmin"
6243
6244command /r [<text>]:
6245 aliases: /reply
6246 trigger:
6247 if {mineplex.disguise.%player%} is set:
6248 set {_p} to {mineplex.disguise.%player%}
6249 else:
6250 set {_p} to player
6251 if {mineplex.lastm.%player%} is set:
6252 if argument 1 is set:
6253 if {mineplex.lastm.%player%} is online:
6254 send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%"
6255 send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%" to {mineplex.lastm.%player%}
6256 else:
6257 send "&9Message> &e%{mineplex.lastm.%player%}% &7is no longer online!"
6258 else:
6259 send "&9Message> &cErr...something went wrong?"
6260 else:
6261 send "&9Message> &7You have not messaged anyone recently."
6262
6263command /party [<string>] [<player>]:
6264 aliases: /z
6265 trigger:
6266 if argument 1 is not set:
6267 send "&9Party> &7Listing Party Commands:"
6268 send "&f/party <Player>: &eJoin/Create/Invite Player"
6269 send "&f/party leave: &eLeave your current party"
6270 send "&f/party kick <Player>: &eKick player from your Party"
6271 send "&f/party info: &eDisplays info on the current Party."
6272 else:
6273 if argument 1 is "kick":
6274 if {party.%player%} is not set:
6275 message "&9Party> &7You don't have a party"
6276 else:
6277 if {party.%player%} is not player:
6278 message "&9Party> &7You have to be a party leader to do this"
6279 stop
6280 if player arg is not set:
6281 message "&9Party> &7Player needed. /party kick <player>"
6282 else:
6283 if {party.%player%::*} doesn't contain player arg:
6284 message "&9Party> &7The player needs to be in your party"
6285 stop
6286 message "&9Party> &7You kicked %player arg% from the party"
6287 message "&9Party> &7You've been kicked by %player% from his party" to player arg
6288 loop {party.%player%::*}:
6289 if loop-value = player arg:
6290 delete {party.%player%::%loop-index%}
6291 delete {party.%player arg%}
6292 delete {party.%player arg%.chat}
6293 else if arg 1 is "leave":
6294 if {party.%player%} is not set:
6295 message "&9Party> &7You don't have a party"
6296 else:
6297 if {party.%player%} is player:
6298 message "&9Party> &7You can't leave if you are the leader. Do /party disband"
6299 stop
6300 message "&9Party> &7You left your party"
6301 message "&9Party> &7%player% left your party" to {party.%player%}
6302 set {party.%player%.chat} to false
6303 loop {party.%{party.%player%}%::*}:
6304 if loop-value = player:
6305 delete {party.%{party.%player%}%::%loop-index%}
6306 delete {party.%player%}
6307 delete {party.%player%.chat}
6308 else if arg 1 is "disband":
6309 if {party.%player%} is not set:
6310 message "&9Party> &cYou don't have a party"
6311 else:
6312 if {party.%player%} is not player:
6313 message "&9Party> &7You have to be a party leader to do this"
6314 stop
6315 message "&9Party> &7You disband your party"
6316 loop {party.%player%::*}:
6317 loop-value is not player:
6318 message "&9Party> &7Your party has been disbanded" to loop-value
6319 delete {party.%loop-value%.chat}
6320 delete {party.%loop-value%}
6321 delete {party.%player%}
6322 delete {party.%player%.chat}
6323 delete {party.%player%::*}
6324 else if arg 1 is "info":
6325 if {party.%player%} is not set:
6326 message "&9Party> &7You don't have a party"
6327 else:
6328 message "&9Party> &7Party Details:"
6329 message "Party Leader: &7%{party.%player%}%"
6330 set {_partyMember} to ""
6331 loop {party.%{party.%player%}%::*}:
6332 set {_partyMember} to "%{_partyMember}% %loop-value%"
6333 message "Your Party: &7%{_partyMember}%"
6334 else:
6335 set {_mineplex.last.party} to "%arg-1%" parsed as player
6336 if {_mineplex.last.party} is online:
6337 if {party.%player%} is set:
6338 add {_mineplex.last.party} to {party.%player%::*}
6339 set {party.%player%.chat} to true
6340 set {party.%arg-1%.chat} to true
6341 set {party.%{_mineplex.last.party}%} to player
6342 message "&9Party> &7You invited %{_mineplex.last.party}% to the party."
6343 else:
6344 set {party.%player%} to player
6345 message "&9Party> &7Created a party."
6346 add player to {party.%player%::*}
6347 make player execute command "/party %arg-1%"
6348 else:
6349 send "&9Party> &7That player is not online."
6350
6351command /announce [<text>]:
6352 permission: mineplex.admin
6353 permission message: &9Permissions> &7You do not have permission to do that.
6354 trigger:
6355 if argument 1 is set:
6356 send all players title "&eAnnouncement" with subtitle "&f%arg-1%" for 10 seconds
6357 broadcast "&9Announcement> &b%arg-1%"
6358 else:
6359 send "&9Message> &cErr...something went wrong?"
6360
6361command /global [<text>]:
6362 permission: mineplex.jrdev
6363 permission message: &9Permissions> &7You do not have permission to do that.
6364 trigger:
6365 if arg 1 is not set:
6366 send "&9Message> &cErr...something went wrong?"
6367 else:
6368 broadcast "&9Announcement> &b%arg-1%"
6369
6370every 3 seconds:
6371 set {mineplex.lag.avg.1} to tps
6372 wait 1 second
6373 set {mineplex.lag.avg.2} to tps
6374 wait 1 second
6375 set {mineplex.lag.avg.3} to tps
6376
6377command /lag:
6378 trigger:
6379 if player has permission "mineplex.jrdev":
6380 set {_avg} to {mineplex.lag.avg.1} + {mineplex.lag.avg.2} + {mineplex.lag.avg.3}
6381 set {_avg} to {_avg} / 3
6382 set {_tps} to tps
6383 set {_f} to free ram
6384 set {_m} to max ram
6385 send "&9LagMeter> &7Live-------&e%{_tps}%"
6386 send "&9LagMeter> &7Avg--------&e%{_avg}%"
6387 send "&9LagMeter> &eMEM (RAM)"
6388 send "&9LagMeter> &7Free-------&e%{_f}%MB"
6389 send "&9LagMeter> &7Max--------&e%{_m}%MB"
6390 else:
6391 send "&9Chat> &7PONG!"
6392
6393#Punish Systems/Commands
6394
6395function punishWarn(s: player , p: offline player , r: text) :: player:
6396 send "&9Punish> &7%{_s}% issued a friendly warning to you." to {_p}
6397 send "&9Punish> &7&lReason: &7%{_r}%" to {_p}
6398 add 1 to {mineplex.punish.past.warn.%{_p}%}
6399 loop all players:
6400 if loop-player has permission "mineplex.trainee":
6401 send "&9Punish> &7%{_s}% issued a friendly warning to %{_p}%." to loop-player
6402
6403function punishReportBan(s: player , p: offline player , r: text) :: player:
6404 set {banned::%{_p}%} to true
6405 set {banned::%{_p}%::type} to "report"
6406 set {banned::%{_p}%::reason} to {_r}
6407 set {banned::%{_p}%::staff} to {_s}
6408 set {banned::%{_p}%::now} to now
6409 setPlayerdata({_p}, "banned", "yes")
6410 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}%"
6411 add 1 to {mineplex.punish.past.reportban.%{_p}%}
6412 loop all players:
6413 if loop-player has permission "mineplex.trainee":
6414 send "&9Punish> &7%{_s}% report banned %{_p}% for Permanent." to loop-player
6415
6416function punishBan(s: player , p: offline player , r: text) :: player:
6417 set {banned::%{_p}%} to true
6418 set {banned::%{_p}%::type} to "perm"
6419 set {banned::%{_p}%::reason} to {_r}
6420 set {banned::%{_p}%::staff} to {_s}
6421 set {banned::%{_p}%::now} to now
6422 setPlayerdata({_p}, "banned", "yes")
6423 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}%"
6424 add 1 to {mineplex.punish.past.permban.%{_p}%}
6425 loop all players:
6426 if loop-player has permission "mineplex.trainee":
6427 send "&9Punish> &7%{_s}% banned %{_p}% for Permanent." to loop-player
6428
6429function punishDTempBan(s: player , p: offline player, r: text, d: number) :: player:
6430 set {_duration} to "%{_d}% days" parsed as timespan
6431 set {banned::%{_p}%} to true
6432 set {banned::%{_p}%::type} to "temp"
6433 set {banned::%{_p}%::time} to {_duration}
6434 set {banned::%{_p}%::reason} to {_r}
6435 set {banned::%{_p}%::staff} to {_s}
6436 set {banned::%{_p}%::when} to now
6437 add 1 to {mineplex.punish.past.tempban.%{_p}%}
6438 setPlayerdata({_p}, "banned", "yes")
6439 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}%"
6440 loop all players:
6441 if loop-player has permission "mineplex.trainee":
6442 send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player
6443
6444function punishHTempBan(s: player , p: offline player, r: text, d: number) :: player:
6445 set {_duration} to "%{_d}% hours" parsed as timespan
6446 set {banned::%{_p}%} to true
6447 set {banned::%{_p}%::type} to "temp"
6448 set {banned::%{_p}%::time} to {_duration}
6449 set {banned::%{_p}%::reason} to {_r}
6450 set {banned::%{_p}%::staff} to {_s}
6451 set {banned::%{_p}%::when} to now
6452 setPlayerdata({_p}, "banned", "yes")
6453 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}%"
6454 add 1 to {mineplex.punish.past.tempban.%{_p}%}
6455 loop all players:
6456 if loop-player has permission "mineplex.trainee":
6457 send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player
6458
6459function punishMute(s: player, p: offline player, r: text) :: player:
6460 set {muted::%{_p}%} to true
6461 set {muted::%{_p}%::type} to "perm"
6462 set {muted::%{_p}%::reason} to {_r}
6463 set {muted::%{_p}%::by} to {_s}
6464 add 1 to {mineplex.punish.past.permmute.%{_p}%}
6465 setPlayerdata({_p}, "muted", "yes")
6466 send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
6467 send "&9Punish> &7%{muted::%{_p}%::by}% muted %{_p}% for Permanent." to {_p}
6468 loop all players:
6469 if loop-player has permission "mineplex.trainee":
6470 send "&9Punish> &7%{_s}% muted %{_p}% for Permanent." to loop-player
6471
6472function punishHTempMute(s: player, p: offline player, r: text, d: number) :: player:
6473 set {_duration} to "%{_d}% hours" parsed as timespan
6474 set {muted::%{_p}%} to true
6475 set {muted::%{_p}%::type} to "temp"
6476 set {muted::%{_p}%::reason} to {_r}
6477 set {muted::%{_p}%::time} to {_duration}
6478 set {muted::%{_p}%::by} to {_s}
6479 set {muted::%{_p}%::when} to now
6480 add 1 to {mineplex.punish.past.permmute.%{_p}%}
6481 setPlayerdata({_p}, "muted", "yes")
6482 send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p}
6483 send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
6484 loop all players:
6485 if loop-player has permission "mineplex.trainee":
6486 send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player
6487
6488function punishDTempMute(s: player, p: offline player, r: text, d: number) :: player:
6489 set {_duration} to "%{_d}% days" parsed as timespan
6490 set {muted::%{_p}%} to true
6491 set {muted::%{_p}%::type} to "temp"
6492 set {muted::%{_p}%::reason} to {_r}
6493 set {muted::%{_p}%::time} to {_duration}
6494 set {muted::%{_p}%::by} to {_s}
6495 set {muted::%{_p}%::when} to now
6496 add 1 to {mineplex.punish.past.permmute.%{_p}%}
6497 setPlayerdata({_p}, "muted", "yes")
6498 send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p}
6499 send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
6500 loop all players:
6501 if loop-player has permission "mineplex.trainee":
6502 send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player
6503
6504function punishUnban(s: string, p: string) :: player:
6505 delete {banned::%{_p}%}
6506 delete {banned::%{_p}%::*}
6507 setPlayerdata({_p}, "banned", "no")
6508
6509function punishUnmute(s: player, p: string) :: player:
6510 delete {muted::%{_p}%}
6511 delete {muted::%{_p}%::*}
6512 setPlayerdata({_p}, "muted", "no")
6513 loop all players:
6514 if loop-player has permission "mineplex.trainee":
6515 send "&9Punish> &7%{_s}% unmuted %{_p}%" to loop-player
6516
6517on connect:
6518 set {_get} to getPlayerdata(player, "banned")
6519 if {_get} is "yes":
6520 if player has permission "mineplex.admin":
6521 if {mineplex.config.unbanadmin} is "true":
6522 punishUnban("Expired", "%player%")
6523 stop
6524 if {banned::%player%::type} is "perm":
6525 kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6526 stop
6527 if {banned::%player%::type} is "report":
6528 kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
6529 stop
6530 if {banned::%player%::type} is "temp":
6531 set {_waited} to difference between {banned::%player%::when} and now
6532 if {_waited} is less than {banned::%player%::time}:
6533 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}%"
6534 else:
6535 punishUnban("Expired", "%player%")
6536
6537on inventory click:
6538 if inventory name of player's current inventory is " Punish":
6539 cancel event
6540 clicked slot >= 45
6541 set {_clickedslot.%player%} to (clicked slot - 44)
6542 if {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} is set:
6543 if "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}%" contains "&eRemoved by: ":
6544 send "" to console
6545 else:
6546 set {_reasonchanger.%player%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}% ||||&eRemoved by: &f%player%||&eRemove Reason: &f%{punishgui.%player%::2}%"
6547 set {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} to "%{_reasonchanger.%player%}%"
6548 close player's inventory
6549 delete {p.%{punishgui.%player%::1}%::history::*}
6550 set {_slot} to 0
6551 loop {reversed.p.%{punishgui.%player%::1}%::history::*}:
6552 add 1 to {_slot}
6553 set {_reversedslot} to 1
6554 loop {reversed.p.%{punishgui.%player%::1}%::history::*}:
6555 set {p.%{punishgui.%player%::1}%::history::%{_reversedslot}%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_slot}%}%"
6556 remove 1 from {_slot}
6557 add 1 to {_reversedslot}
6558 if "%{_reasonchanger.%player%}%" contains "ChatOffense":
6559 punishUnmute(player, {punishgui.%player%::1})
6560 if "%{_reasonchanger.%player%}%" contains "Hacking" or "Exploiting" or "Other":
6561 punishUnban("memes", {punishgui.%player%::1})
6562 if "%{_reasonchanger.%player%}%" contains "Warning":
6563 stop
6564
6565command /p [<offline player>] [<text>]:
6566 aliases: /punish
6567 permission: mineplex.trainee
6568 permission message: &9Permissions> &7You do not have permission to do that.
6569 trigger:
6570 if arg-2 is not set:
6571 send "&9Punish> &7Commands List:"
6572 send "&6/punish &7<player> <reason> &6Mod"
6573 if arg-2 is set:
6574 if {p.%arg-1%::Chat1} is not set:
6575 set {p.%arg-1%::Client3} to "__mp__tempban__ %arg-1% %player% 30"
6576 set {p.%arg-1%::ClientL3} to "&fBan Duration: &e30.0 Days"
6577 set {p.%arg-1%::Client2} to "__mp__tempban__ %arg-1% %player% 30"
6578 set {p.%arg-1%::ClientL2} to "&fBan Duration: &e30.0 Days"
6579 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e1.0 Days"
6580 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 1"
6581 set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% 4 %player%"
6582 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e4.0 Hours"
6583 set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 2 %player%"
6584 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.0 Hours"
6585 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 1 %player%"
6586 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e1.0 Days"
6587 set {p.%arg-1%::Chat3} to "__mp__tempmute__ %arg-1% 30 %player%"
6588 set {p.%arg-1%::ChatL3} to "&fMute Duration: &e30.0 Days"
6589 if {p.%arg-1%::pOffences.Chat1} is 1:
6590 set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 4 %player%"
6591 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e4.0 Hours"
6592 if {p.%arg-1%::pOffences.Chat1} is 2:
6593 set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 10 %player%"
6594 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e10.0 Hours"
6595 if {p.%arg-1%::pOffences.Chat1} is 3:
6596 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%"
6597 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.0 Days"
6598 if {p.%arg-1%::pOffences.Chat1} is 4:
6599 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%"
6600 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.4 Days"
6601 if {p.%arg-1%::pOffences.Chat1} is 5:
6602 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 3 %player%"
6603 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.8 Days"
6604 if {p.%arg-1%::pOffences.Chat1} is 6:
6605 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 7 %player%"
6606 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e7.0 Days"
6607 if {p.%arg-1%::pOffences.Chat1} is 7:
6608 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 14 %player%"
6609 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e14.0 Days"
6610 if {p.%arg-1%::pOffences.Chat1} is 8:
6611 set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 30 %player%"
6612 set {p.%arg-1%::ChatL1} to "&fMute Duration: &e30.0 Days"
6613 if {p.%arg-1%::pOffences.Chat1} is 9:
6614 set {p.%arg-1%::Chat1} to "__mp__mute__ %arg-1% %player%"
6615 set {p.%arg-1%::ChatL1} to "&fMute Duration: &ePermanent"
6616 if {p.%arg-1%::pOffences.Chat2} is 1:
6617 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 2 %player%"
6618 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e2.0 Days"
6619 if {p.%arg-1%::pOffences.Chat2} is 2:
6620 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 4 %player%"
6621 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e4.0 Days"
6622 if {p.%arg-1%::pOffences.Chat2} is 3:
6623 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 7 %player%"
6624 set {p.%arg-1%::ChatL2} to "__mp__tempmute__ %arg-1% 7 %player%"
6625 if {p.%arg-1%::pOffences.Chat2} is 4:
6626 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 14 %player%"
6627 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e14.0 Days"
6628 if {p.%arg-1%::pOffences.Chat2} is 5:
6629 set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 30 %player%"
6630 set {p.%arg-1%::ChatL2} to "&fMute Duration: &e30.0 Days"
6631 if {p.%arg-1%::pOffences.Chat2} is 6:
6632 set {p.%arg-1%::Chat2} to "__mp__mute__ %arg-1% %player%"
6633 set {p.%arg-1%::ChatL2} to "&fMute Duration: &ePermanent"
6634 if {p.%arg-1%::pOffences.Chat3} is 1:
6635 set {p.%arg-1%::Chat3} to "__mp__mute__ %arg-1% %player%"
6636 set {p.%arg-1%::ChatL3} to "&fMute Duration: &ePermanent"
6637 if {p.%arg-1%::pOffences.General} is 1:
6638 set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 8"
6639 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e8.0 Hours"
6640 if {p.%arg-1%::pOffences.General} is 2:
6641 set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 16"
6642 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e16.0 Hours"
6643 if {p.%arg-1%::pOffences.General} is 3:
6644 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 1"
6645 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e1.4 Days"
6646 if {p.%arg-1%::pOffences.General} is 4:
6647 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 3"
6648 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e3.0 Days"
6649 if {p.%arg-1%::pOffences.General} is 5:
6650 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 7"
6651 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e7.0 Days"
6652 if {p.%arg-1%::pOffences.General} is 6:
6653 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 14"
6654 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e14.0 Days"
6655 if {p.%arg-1%::pOffences.General} is 7:
6656 set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 30"
6657 set {p.%arg-1%::GeneralL} to "&fBan Duration: &e30.0 Days"
6658 if {p.%arg-1%::pOffences.General} is 8:
6659 set {p.%arg-1%::General} to "__mp__ban__ %arg-1% %player%"
6660 set {p.%arg-1%::GeneralL} to "&fBan Duration: &ePermanent"
6661
6662 if {p.%arg-1%::pOffences.Client1} is 1:
6663 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 2"
6664 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e2.0 Days"
6665 if {p.%arg-1%::pOffences.Client1} is 2:
6666 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 4"
6667 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e4.0 Days"
6668 if {p.%arg-1%::pOffences.Client1} is 3:
6669 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 7"
6670 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e7.0 Days"
6671 if {p.%arg-1%::pOffences.Client1} is 4:
6672 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 16"
6673 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e16.0 Days"
6674 if {p.%arg-1%::pOffences.Client1} is 5:
6675 set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 30"
6676 set {p.%arg-1%::ClientL1} to "&fBan Duration: &e30.0 Days"
6677 if {p.%arg-1%::pOffences.Client1} is 6:
6678 set {p.%arg-1%::Client1} to "__mp__ban__ %arg-1% %player%"
6679 set {p.%arg-1%::ClientL1} to "&fBan Duration: &ePermanent"
6680 if {p.%arg-1%::pOffences.Client2} is 1:
6681 set {p.%arg-1%::Client2} to "__mp__ban__ %arg-1% %player%"
6682 set {p.%arg-1%::ClientL2} to "&fBan Duration: &ePermanent"
6683 if {p.%arg-1%::pOffences.Client3} is 1:
6684 set {p.%arg-1%::Client3} to "__mp__ban__ %arg-1% %player%"
6685 set {p.%arg-1%::ClientL3} to "&fBan Duration: &ePermanent"
6686 if {p.%arg-1%::pOffences.Chat1} is not set:
6687 set {p.%arg-1%::pOffences.Chat1} to 0
6688 set {p.%arg-1%::pOffences.Chat2} to 0
6689 set {p.%arg-1%::pOffences.Chat3} to 0
6690 set {p.%arg-1%::pOffences.General} to 0
6691 set {p.%arg-1%::pOffences.Client1} to 0
6692 set {p.%arg-1%::pOffences.Client2} to 0
6693 set {p.%arg-1%::pOffences.Client3} to 0
6694 if player has permission "mineplex.trainee" or "mineplex.mod":
6695 delete {reversed.p.%arg-1%::history::*}
6696 set {_slot} to 0
6697 loop {p.%arg-1%::history::*}:
6698 add 1 to {_slot}
6699 set {_reversedslot} to 1
6700 loop {p.%arg-1%::history::*}:
6701 set {reversed.p.%arg-1%::history::%{_reversedslot}%} to "%{p.%arg-1%::history::%{_slot}%}%"
6702 remove 1 from {_slot}
6703 add 1 to {_reversedslot}
6704 open chest with 6 rows named " Punish" to player
6705 wait 1 tick
6706 format slot 4 of player with arg-1's skull named "&a&l%arg-1%" with lore "&r%arg-2%" to be unstealable
6707
6708 format slot 10 of player with book and quill named "&a&lChat Offense" with lore "&7Verbal Abuse, Spam, Harrassment, Trolling, etc" to be unstealable
6709 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}]
6710
6711 format slot 12 of player with hopper named "&a&lGeneral Offense" with lore "&7Command/Map/Class/Skill exploits, etc" to be unstealable
6712 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}]
6713 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
6714 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}]
6715 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::*}]
6716 if player has permission "mineplex.mod": #Access all punishments!
6717 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}]
6718 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}]
6719
6720 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}]
6721 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}]
6722
6723 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::*}]
6724 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::*}]
6725 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::*}]
6726 set {_banned} to getPlayerdata(arg-1, "banned")
6727 set {_muted} to getPlayerdata(arg-1, "muted")
6728 set {_slot} to 45
6729 loop {reversed.p.%arg-1%::history::*}:
6730 set {punishgui.%player%::*} to "%arg 1%"
6731 add "%arg 2%" to {punishgui.%player%::*}
6732 if "%loop-value%" contains "&ePunishment Type: &fChatOffense":
6733 if {_muted} is true:
6734 if "%loop-value%" does not contain "&eRemoved by: ":
6735 set slot {_slot} of player's current inventory to shiny book and quill named "&a&lChat Offense" with lore "%loop-value%"
6736 add 1 to {_slot}
6737 else:
6738 set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%"
6739 add 1 to {_slot}
6740 else:
6741 set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%"
6742 add 1 to {_slot}
6743 if "%loop-value%" contains "&ePunishment Type: &fHacking":
6744 if {_banned} is true:
6745 if "%loop-value%" does not contain "&eRemoved by: ":
6746 set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%"
6747 add 1 to {_slot}
6748 else:
6749 set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%"
6750 add 1 to {_slot}
6751 else:
6752 set slot {_slot} of player's current inventory to iron sword named "&a&lClient Mod" with lore "%loop-value%"
6753 add 1 to {_slot}
6754 if "%loop-value%" contains "&ePunishment Type: &fExploiting":
6755 if {_banned} is true:
6756 if "%loop-value%" does not contain "&eRemoved by: ":
6757 set slot {_slot} of player's current inventory to shiny hopper named "&a&lGeneral Offense" with lore "%loop-value%"
6758 add 1 to {_slot}
6759 else:
6760 set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%"
6761 add 1 to {_slot}
6762 else:
6763 set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%"
6764 add 1 to {_slot}
6765 if "%loop-value%" contains "&ePunishment Type: &fWarning":
6766 set slot {_slot} of player's current inventory to paper named "&a&lWarning" with lore "%loop-value%"
6767 add 1 to {_slot}
6768 if "%loop-value%" contains "&ePunishment Type: &fOther":
6769 if {_banned} is true:
6770 if "%loop-value%" does not contain "&eRemoved by: ":
6771 set slot {_slot} of player's current inventory to shiny redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
6772 add 1 to {_slot}
6773 else:
6774 set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
6775 add 1 to {_slot}
6776 else:
6777 set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
6778 add 1 to {_slot}
6779 if "%loop-value%" contains "&ePunishment Type: &rOther":
6780 set slot {_slot} of player's current inventory to enchanted book named "&a&lPermanent Report Ban" with lore "%loop-value%"
6781 add 1 to {_slot}
6782 if {_slot} = 54:
6783 exit loop
6784 if {mineplex.rank.%player%} is "&6&LJR.DEV " or "&4&lDEV ":
6785 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
6786
6787#Prefs System
6788
6789function prefsSystem(p: player , t: number) :: number:
6790 if {_t} is 1:
6791 if {mineplex.pref.hg.%{_p}%} is true:
6792 set {mineplex.pref.hg.%{_p}%} to false
6793 else:
6794 set {mineplex.pref.hg.%{_p}%} to true
6795 else if {_t} is 2:
6796 if {mineplex.pref.hpv.%{_p}%} is true:
6797 set {mineplex.pref.hpv.%{_p}%} to false
6798 hide all players from {_p}
6799 else:
6800 set {mineplex.pref.hpv.%{_p}%} to true
6801 reveal all players from {_p}
6802 loop all players:
6803 if {mineplex.vanish.%loop-player%} is true:
6804 add loop-player to {%{_p}%.vanishlist::*}
6805 loop all players:
6806 if loop-player does not have permission "mineplex.admin":
6807 hide {%{_p}%.vanishlist::*} from all players
6808 delete {%{_p}%.vanishlist::*}
6809 else if {_t} is 3:
6810 if {mineplex.pref.pc.%{_p}%} is true:
6811 set {mineplex.pref.pc.%{_p}%} to false
6812 else:
6813 set {mineplex.pref.pc.%{_p}%} to true
6814 else if {_t} is 4:
6815 if {mineplex.pref.pm.%{_p}%} is true:
6816 set {mineplex.pref.pm.%{_p}%} to false
6817 else:
6818 set {mineplex.pref.pm.%{_p}%} to true
6819 else if {_t} is 5:
6820 if {mineplex.pref.gwen.%{_p}%} is true:
6821 set {mineplex.pref.gwen.%{_p}%} to false
6822 else:
6823 set {mineplex.pref.gwen.%{_p}%} to true
6824 else if {_t} is 6:
6825 if {mineplex.pref.report.%{_p}%} is true:
6826 set {mineplex.pref.report.%{_p}%} to false
6827 else:
6828 set {mineplex.pref.report.%{_p}%} to true
6829 else if {_t} is 7:
6830 if {mineplex.pref.ff.%{_p}%} is true:
6831 set {mineplex.pref.ff.%{_p}%} to false
6832 else:
6833 set {mineplex.pref.ff.%{_p}%} to true
6834 else if {_t} is 8:
6835 if {mineplex.ff.%{_p}%} is true:
6836 set {mineplex.ff.%{_p}%} to false
6837 delete {mineplex.ff.list::%{_p}%}
6838 else:
6839 set {mineplex.ff.%{_p}%} to true
6840 set {mineplex.ff.list::%{_p}%} to true
6841 else if {_t} is 9:
6842 if {mineplex.pref.rm.%{_p}%} is true:
6843 set {mineplex.pref.rm.%{_p}%} to false
6844 else:
6845 set {mineplex.pref.rm.%{_p}%} to true
6846 else if {_t} is 10:
6847 if {mineplex.pref.aj.%{_p}%} is true:
6848 set {mineplex.pref.aj.%{_p}%} to false
6849 else:
6850 set {mineplex.pref.aj.%{_p}%} to true
6851 else if {_t} is 11:
6852 if {mineplex.pref.daw.%{_p}%} is true:
6853 set {mineplex.pref.daw.%{_p}%} to false
6854 else:
6855 set {mineplex.pref.daw.%{_p}%} to true
6856 else if {_t} is 12:
6857 if {mineplex.pref.cj.%{_p}%} is true:
6858 set {mineplex.pref.cj.%{_p}%} to false
6859 else:
6860 set {mineplex.pref.cj.%{_p}%} to true
6861 else if {_t} is 13:
6862 if {mineplex.pref.sct.%{_p}%} is true:
6863 set {mineplex.pref.sct.%{_p}%} to false
6864 else:
6865 set {mineplex.pref.sct.%{_p}%} to true
6866 else if {_t} is 14:
6867 if {mineplex.pref.hm.%{_p}%} is true:
6868 set {mineplex.pref.hm.%{_p}%} to false
6869 else:
6870 set {mineplex.pref.hm.%{_p}%} to true
6871 else if {_t} is 15:
6872 if {mineplex.pref.pr.%{_p}%} is true:
6873 set {mineplex.pref.pr.%{_p}%} to false
6874 else:
6875 set {mineplex.pref.pr.%{_p}%} to true
6876 else if {_t} is 16:
6877 if {mineplex.pref.spfr.%{_p}%} is true:
6878 set {mineplex.pref.spfr.%{_p}%} to false
6879 else:
6880 set {mineplex.pref.spfr.%{_p}%} to true
6881 else if {_t} is 17:
6882 if {mineplex.pref.dfg.%{_p}%} is true:
6883 set {mineplex.pref.dfg.%{_p}%} to false
6884 else:
6885 set {mineplex.pref.dfg.%{_p}%} to true
6886 else if {_t} is 18:
6887 if {mineplex.pref.sci.%{_p}%} is true:
6888 set {mineplex.pref.sci.%{_p}%} to false
6889 else:
6890 set {mineplex.pref.sci.%{_p}%} to true
6891 else if {_t} is 19:
6892 if {mineplex.pref.dpg.%{_p}%} is true:
6893 set {mineplex.pref.dpg.%{_p}%} to false
6894 else:
6895 set {mineplex.pref.dpg.%{_p}%} to true
6896 else if {_t} is 20:
6897 if {mineplex.pref.hif.%{_p}%} is true:
6898 set {mineplex.pref.hif.%{_p}%} to false
6899 else:
6900 set {mineplex.pref.hif.%{_p}%} to true
6901
6902function profile_system(arg1: text , arg2: text , p: player, p2: player) :: number:
6903 set {_wither} to "MHF_WSkeleton" parsed as a player
6904 if {_arg1} is "menu":
6905 if {_arg2} is "profile":
6906 wait 2 ticks
6907 open chest with 3 rows named "My Profile" to {_p}
6908 wait 4 ticks
6909 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})]
6910 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})]
6911 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
6912 if {_arg2} is "prefs":
6913 if {_p} has permission "mineplex.trainee":
6914 open chest with 6 rows named "My Preferences" to {_p}
6915 wait 3 tick
6916 format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable
6917 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
6918 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
6919 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
6920 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
6921 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
6922 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
6923 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
6924 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
6925 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
6926 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
6927 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
6928 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
6929 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
6930 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
6931 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
6932 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
6933 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
6934 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
6935 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
6936 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
6937 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
6938 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
6939 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
6940 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
6941 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
6942 format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})]
6943 format slot 21 of {_p} with diamond named "&eExclusive Preferences" to run [profile_system("menu", "staff", {_p}, {_p2})]
6944 format slot 23 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})]
6945 format slot 25 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})]
6946 format slot 31 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})]
6947 else:
6948 open chest with 5 rows named "My Preferences" to {_p}
6949 wait 3 tick
6950 format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable
6951 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
6952 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
6953 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
6954 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
6955 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
6956 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
6957 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
6958 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
6959 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
6960 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
6961 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
6962 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
6963 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
6964 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
6965 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
6966 format slot 37 of {_p} with light blue stained glass pane named "&f" to be unstealable
6967 format slot 38 of {_p} with light blue stained glass pane named "&f" to be unstealable
6968 format slot 39 of {_p} with light blue stained glass pane named "&f" to be unstealable
6969 format slot 40 of {_p} with light blue stained glass pane named "&f" to be unstealable
6970 format slot 41 of {_p} with light blue stained glass pane named "&f" to be unstealable
6971 format slot 42 of {_p} with light blue stained glass pane named "&f" to be unstealable
6972 format slot 43 of {_p} with light blue stained glass pane named "&f" to be unstealable
6973 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
6974 format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})]
6975 format slot 21 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})]
6976 format slot 23 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})]
6977 format slot 25 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})]
6978 if {_arg2} is "user":
6979 open chest with 6 rows named "User Preferences" to {_p}
6980 wait 3 tick
6981 format slot 0 of {_p} with bed item named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
6982 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
6983 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
6984 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
6985 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
6986 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
6987 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
6988 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
6989 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
6990 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
6991 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
6992 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
6993 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
6994 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
6995 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
6996 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
6997 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
6998 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
6999 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7000 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7001 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7002 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7003 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7004 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7005 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7006 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7007 if {mineplex.pref.hg.%{_p}%} is true:
7008 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})]
7009 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})]
7010 else:
7011 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})]
7012 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})]
7013 if {mineplex.pref.hpv.%{_p}%} is true:
7014 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})]
7015 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})]
7016 else:
7017 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})]
7018 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})]
7019 if {mineplex.pref.pc.%{_p}%} is true:
7020 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})]
7021 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})]
7022 else:
7023 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})]
7024 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})]
7025 if {mineplex.pref.pm.%{_p}%} is true:
7026 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})]
7027 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})]
7028 else:
7029 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})]
7030 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})]
7031 if {mineplex.pref.rm.%{_p}%} is true:
7032 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})]
7033 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})]
7034 else:
7035 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})]
7036 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})]
7037 if {_arg2} is "game":
7038 open chest with 6 rows named "Game Mechanic Preference" to {_p}
7039 wait 3 tick
7040 format slot 0 of {_p} with bed item named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7041 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7042 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7043 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7044 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7045 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7046 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7047 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7048 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7049 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7050 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7051 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7052 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7053 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7054 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7055 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7056 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7057 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7058 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7059 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7060 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7061 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7062 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7063 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7064 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7065 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7066 if {mineplex.pref.aj.%{_p}%} is true:
7067 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})]
7068 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})]
7069 else:
7070 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})]
7071 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})]
7072 if {mineplex.pref.daw.%{_p}%} is true:
7073 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})]
7074 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})]
7075 else:
7076 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})]
7077 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})]
7078 if {mineplex.pref.cj.%{_p}%} is true:
7079 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})]
7080 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})]
7081 else:
7082 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})]
7083 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})]
7084 if {_arg2} is "misc":
7085 open chest with 6 rows named "Miscellaneous Preference" to {_p}
7086 wait 3 tick
7087 format slot 0 of {_p} with bed item named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7088 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7089 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7090 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7091 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7092 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7093 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7094 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7095 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7096 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7097 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7098 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7099 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7100 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7101 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7102 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7103 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7104 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7105 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7106 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7107 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7108 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7109 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7110 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7111 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7112 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7113 if {mineplex.pref.sct.%{_p}%} is true:
7114 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})]
7115 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})]
7116 else:
7117 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})]
7118 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})]
7119 if {mineplex.pref.hm.%{_p}%} is true:
7120 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})]
7121 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})]
7122 else:
7123 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})]
7124 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})]
7125 if {_arg2} is "social":
7126 open chest with 6 rows named "Social Preferences" to {_p}
7127 wait 3 tick
7128 format slot 0 of {_p} with bed item named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7129 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7130 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7131 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7132 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7133 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7134 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7135 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7136 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7137 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7138 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7139 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7140 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7141 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7142 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7143 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7144 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7145 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7146 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7147 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7148 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7149 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7150 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7151 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7152 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7153 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7154 if {mineplex.pref.pr.%{_p}%} is true:
7155 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})]
7156 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})]
7157 else:
7158 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})]
7159 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})]
7160 if {mineplex.pref.spfr.%{_p}%} is true:
7161 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})]
7162 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})]
7163 else:
7164 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})]
7165 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})]
7166 if {mineplex.pref.dfg.%{_p}%} is true:
7167 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})]
7168 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})]
7169 else:
7170 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})]
7171 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})]
7172 if {mineplex.pref.sci.%{_p}%} is true:
7173 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})]
7174 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})]
7175 else:
7176 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})]
7177 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})]
7178 if {mineplex.pref.dpg.%{_p}%} is true:
7179 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})]
7180 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})]
7181 else:
7182 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})]
7183 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})]
7184 if {_arg2} is "staff":
7185 open chest with 6 rows named "Exclusive Preferences" to {_p}
7186 wait 3 tick
7187 format slot 0 of {_p} with bed item named "&7↠Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
7188 format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
7189 format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
7190 format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
7191 format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
7192 format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
7193 format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
7194 format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
7195 format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
7196 format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
7197 format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
7198 format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
7199 format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
7200 format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
7201 format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
7202 format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
7203 format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
7204 format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
7205 format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
7206 format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
7207 format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
7208 format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
7209 format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
7210 format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
7211 format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
7212 format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
7213 if {mineplex.pref.hif.%{_p}%} is true:
7214 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})]
7215 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})]
7216 else:
7217 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})]
7218 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})]
7219 if {mineplex.ff.%{_p}%} is true:
7220 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})]
7221 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})]
7222 else:
7223 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})]
7224 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})]
7225 if {mineplex.pref.gwen.%{_p}%} is true:
7226 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})]
7227 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})]
7228 else:
7229 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})]
7230 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})]
7231 if {mineplex.pref.report.%{_p}%} is true:
7232 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})]
7233 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})]
7234 else:
7235 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})]
7236 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})]
7237 if {mineplex.pref.ff.%{_p}%} is true:
7238 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})]
7239 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})]
7240 else:
7241 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})]
7242 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})]
7243
7244command /prefs:
7245 trigger:
7246 profile_system("menu", "prefs", player, player)
7247
7248#GWEN CODING!! (Using my old plugin Shield) (I took it down as I was ripping off json.sk but wtevr) lol
7249
7250on damage:
7251 if "%Victim's name%" is "BeamCow" or "BeamGuar":
7252 cancel event
7253on death:
7254 if "%Victim's name%" is "BeamCow" or "BeamGuar":
7255 clear drops
7256
7257on quit:
7258 delete {forcefield.past.%player%}
7259
7260function beamGo(p: player) :: number:
7261 apply slowness 255 to {_p} for 7 seconds
7262 set {_p2} to location 3 blocks in front of {_p}
7263 add 5 to y-coordinate of {_p2}
7264 set {_p3} to location 3 blocks behind {_p}
7265 add 5 to y-coordinate of {_p3}
7266 set {_p4} to location 3 blocks left of {_p}
7267 add 5 to y-coordinate of {_p4}
7268 set {_p5} to location 3 blocks right of {_p}
7269 add 5 to y-coordinate of {_p5}
7270 spawn a guardian at {_p2}
7271 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7272 set {_t2} to last spawned entity
7273 spawn a guardian at {_p3}
7274 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7275 set {_t3} to last spawned entity
7276 spawn a guardian at {_p4}
7277 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7278 set {_t4} to last spawned entity
7279 spawn a guardian at {_p5}
7280 add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
7281 set {_t5} to last spawned entity
7282 set {_player} to {_p}
7283 set {_r} to randomize "BHWFEAEG619"
7284 set {_s} to "Chiss" parsed as a player
7285 setPlayerdata({_p}, "banned", "yes")
7286 punishBan({_s} ,{_player} , "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%")
7287 set {banned::%{_player}%} to true
7288 set {banned::%{_player}%::type} to "perm"
7289 set {banned::%{_player}%::reason} to "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%"
7290 set {banned::%{_player}%::staff} to "Chiss"
7291 set {banned::%{_player}%::when} to now
7292 add "&ePunishment Type: &fOther||||&eReason: &f[GWEN] Token: %{_r}%||||&eStaff: &fChiss||||&eDate: &f%now%" to {p.%{_player}%::history::*}
7293 Beam({_p}, {_t2})
7294 Beam({_p}, {_t3})
7295 Beam({_p}, {_t4})
7296 Beam({_p}, {_t5})
7297 wait 5.2 seconds
7298 broadcast "&9GWEN> &7%{_p}% has been banned. I am always watching"
7299 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}%"
7300
7301command /gwenban <player>:
7302 permission: mineplex.admin
7303 permission message: &9Permissions> &7You do not have permission to do that.
7304 trigger:
7305 beamGo(arg-1)
7306
7307on shoot:
7308 if projectile is an arrow:
7309 if difference between {bow.%shooter%} and now is less than 2 ticks:
7310 gwenAlert((shooter), ("Fast Bow"))
7311 set {bow.%shooter%} to now
7312
7313every 4 second :
7314 set {autoclick.check} to true
7315 wait 3 second
7316 set {autoclick.check} to false
7317 loop all players :
7318 delete {player.click.%loop-player%}
7319
7320on left click :
7321 {autoclick.check} is true
7322 add 1 to {player.click.%player%}
7323 {player.click.%player%} > 69
7324 gwenAlert((player), ("High CPS (%{player.click.%player%} / 3% clicks/second)"))
7325
7326on walk on water:
7327 set {_loc} to location of player
7328 add 2 to y-coordinate of {_loc}
7329 if block at {_loc} is air:
7330 add 1 to {gwen.jesus.%player%}
7331 if {gwen.jesus.%player%} is greater than 6:
7332 gamemode of player is survival
7333 gwenAlert((player), ("Jesus"))
7334 delete {gwen.jesus.%player%}
7335
7336on consume:
7337 if difference between {fasteat.%player%} and now is less than 10 ticks:
7338 cancel event
7339 set {fasteat.%player%} to now
7340 gwenAlert((player), ("FastEat"))
7341 set {fasteat.%player%} to now
7342
7343on damage:
7344 if attacker is a player:
7345 if victim is a player:
7346 if attacker's gamemode is survival or adventure:
7347 damage wasn't caused by thorns or projectile:
7348 set {_reach.%attacker%} to distance between attacker and victim
7349 set {_ping} to attacker's ping
7350 if {_reach.%attacker%} is greater than 5.67:
7351 if {_ping} is greater than 350:
7352 gwenAlert((attacker), ("Reach"))
7353 if {_ping} is less than 350:
7354 gwenAlert((attacker), ("Reach"))
7355
7356on damage of a player :
7357 block at victim is not cobweb
7358 victim is not riding
7359 victim is not on fire
7360 victim's y-coordinate is greater than 5
7361 set {_loc9} to block north east victim
7362 set {_loc8} to block south west victim
7363 blocks within {_loc9} to {_loc8} is air
7364 set {_loc} to location of victim
7365 wait 10 ticks
7366 set {_loc2} to location of victim
7367 distance between {_loc} and {_loc2} = 0
7368 victim's ping < 250
7369 gwenAlert((victim), ("Velocity"))
7370
7371#Systems
7372
7373on leftclick holding tnt:
7374 if {mineplex.tntlauncher} is true:
7375 player has 1 tnt
7376 spawn a primed tnt 1 meter above the player
7377 add "{Fuse:60}" to nbt of the spawned entity
7378 push the spawned entity in direction of player at speed 0.9
7379 push the spawned entity upwards at speed 0.2
7380 remove 1 tnt from player
7381
7382on rightclick holding tnt:
7383 if {mineplex.tntlauncher} is true:
7384 player has 1 tnt
7385 spawn a primed tnt 1 meter above the player
7386 add "{Fuse:60}" to nbt of the spawned entity
7387 push the spawned entity in direction of player at speed 0.9
7388 push the spawned entity upwards at speed 0.2
7389 remove 1 tnt from player
7390
7391#Command Completers
7392
7393on tab completer for "/mineplex-core":
7394 if argument at 1 is set:
7395 if argument at 1 is "useChat" or "titleOnJoin" or "useScoreboard":
7396 add "true" to completions
7397 add "false" to completions
7398 else if argument at 1 is "chestPoint":
7399 add "1" to completions
7400 add "2" to completions
7401 add "3" to completions
7402 add "4" to completions
7403 else if argument at 1 is "chestPointSub":
7404 if argument at 2 is set:
7405 add "1" to completions
7406 add "2" to completions
7407 add "3" to completions
7408 add "4" to completions
7409 add "5" to completions
7410 add "6" to completions
7411 add "7" to completions
7412 add "8" to completions
7413 else:
7414 add "1" to completions
7415 add "2" to completions
7416 add "3" to completions
7417 add "4" to completions
7418 if argument at 1 is not set:
7419 add "help" to completions
7420 add "useChat" to completions
7421 add "setAdmin" to completions
7422 add "chestPoint" to completions
7423 add "chestPointSub" to completions
7424 add "titleOnJoin" to completions
7425 add "reload" to completions
7426 add "useScoreboard" to completions
7427 add "spawnCarl" to completions
7428 add "throwableTnt" to completions
7429
7430on tab completer for "/tp":
7431 add "here" to completions
7432 add "h" to completions
7433 add "back" to completions
7434 add "b" to completions
7435 add "all" to completions
7436 loop all players:
7437 add "%loop-player%" to completions
7438
7439on tab completer for "/give":
7440 if player has permission "mineplex.admin":
7441 loop all items:
7442 add "%loop-value%" to completions
7443 loop all players:
7444 add "%loop-player%" to completions
7445 add "ALL" to completions
7446
7447#Modules
7448
7449on load:
7450 delete {mineplex::modules::*}
7451 set {mineplex.modulesapi.online} to true
7452
7453on unload:
7454 delete {mineplex::modules::*}
7455 set {mineplex.modulesapi.online} to false
7456
7457command /modules:
7458 trigger:
7459 send "&9Modules> &7Modules API version 0.1"
7460 send "&9Modules> &7Going to *attempt* to list modules."
7461 send "&9Modules> &7This does not mean that your module is not loaded."
7462 loop {mineplex::modules::*}:
7463 send "&9Modules> &e%loop-value%"
7464
7465#add "Bungee Module" to {mineplex::modules::*}
7466#remove "Bungee Module" from {mineplex::modules::*}
7467
7468#MPS
7469
7470#on load:
7471# if {wget} is not set:
7472# download file from "" to file "./WheezyMap.zip"
7473
7474#command /mpsconfirm:
7475# permission: mineplex.op
7476# trigger:
7477# if {mineplex.mps.%player%} is not set:
7478# send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly."
7479# send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1."
7480# copy dir "./mps/Mineplex" to "./mps/%player%-1/"
7481# load world "./mps/%player%-1"
7482# set {mps.%player%-1} to "yes"
7483# wait 20 seconds
7484# else:
7485# 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."
7486#
7487#command /hostserver:
7488# permission: mineplex.op
7489# trigger:
7490# if {mineplex.mps.%player%} is not set:
7491# send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly."
7492# send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1."
7493# create folder "./mps/%player%-1"
7494# load world "./mps/%player%-1"
7495# wait 20 seconds
7496# teleport player to spawn of "./mps/%player%-1"
7497# else:
7498# 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."
7499
7500#command /endserver:
7501# trigger:
7502# loop all players:
7503# loop-player's world is "./mps/%player%-1":
7504# teleport player to spawn of "%arg-1%"
7505# unload world "./mps/%player%-1"
7506# wait 2 seconds
7507# delete folder "./mps/%player%-1/data/"
7508# delete folder "./mps/%player%-1/region/"
7509# delete file "./mps/%player%-1/level.dat"
7510# delete file "./mps/%player%-1/uid.dat"
7511# delete file "./mps/%player%-1/session.lock"
7512# delete dir "./mps/%player%-1"
7513
7514#command /tpwrd <text>:
7515# trigger:
7516# set {_w} to "world"
7517# teleport player to spawn of {_w}
7518
7519#command /menu:
7520# trigger:
7521# open chest with 3 rows named "Private Server Menu" to player
7522# wait 1 tick
7523# 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"]
7524# format slot 13 of player with lava bucket named "&aRemove Player" with lore "||&e" to close then run [execute console command "kick Citrin_ lol"]
7525# format slot 15 of player with redstone comparator item named "&aGame Options" with lore "||&e" to close then run [execute console command "say xd"]
7526# 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"]
7527# 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"]
7528# 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"]
7529
7530
7531#skPerms by LimeGlass
7532#Thanks for Letting Me Bake This In!
7533options:
7534 prefix: &6[&5SkPerms&6]
7535 maincolour: &6
7536 secondcolour: &7
7537 command: /skperms
7538 aliases: /perm, /permission
7539 permission: skperms.admin
7540
7541 #CMD protection is basically extra security for your server. Only players inside of a list variable can use SkPerms
7542 CMDprotection: false
7543 CMDprotectionMsg: Unknown command. Type ""/help"" for help
7544 #The player list is the list variable that contains players that can use SkPerms if CMDprotection is enabled
7545 PlayerList: {example::players::*}
7546
7547 UseChat: false #use prefix and suffix in the chat
7548 #Chat types:
7549 #Display - Changes the player's display name (Vault will hook if installed)
7550 #Override - !COMING SOON
7551 ChatType: "Display"
7552
7553 version: 1.0.5
7554
7555on script load:
7556 if file "plugins\SkPerms" exists:
7557 delete {skperms::config::*}
7558 else:
7559 set yaml value "version" from file "plugins\SkPerms\config.yml" to "{@version}"
7560 set yaml value "useYML" from file "plugins\SkPerms\config.yml" to false
7561 set {skperms::config::version} to yaml value "version" from file "plugins\SkPerms\config.yml"
7562 set {skperms::config::useYML} to yaml value "useYML" from file "plugins\SkPerms\config.yml"
7563 if {skperms::config::useYML} is true:
7564 if {skperms::players::*} is not set:
7565 stop
7566 delete file "plugins\SkPerms\players.yml"
7567 loop {skperms::players::*}:
7568 loop {skperms::player::%loop-value%::permissions::*}:
7569 add "%loop-value-2%" to yaml list "players.%loop-value-1%.permissions" from file "plugins\SkPerms\players.yml"
7570on script unload:
7571 loop {skperms::groups::*}:
7572 if {skperms::group::%loop-value%::*} is not set:
7573 loop {skperms::group::%loop-value-1%::permissions::*}:
7574 loop {skperms::players::*}:
7575 remove "%loop-value-2%" from {skperms::player::%loop-value-3%::permissions::*}
7576 loop {skperms::players::*}:
7577 remove "%loop-value-1%" from {skperms::player::%loop-value-2%::groups::*}
7578 if {skperms::player::%loop-value-2%::groups::*} is not empty:
7579 loop {skperms::player::%loop-value-2%::groups::*}:
7580 loop {skperms::group::%loop-value-1%::permissions::*}:
7581 set {_p} to "%loop-value-2%" parsed as player
7582 add "%loop-value-4%" to {_p}'s permissions
7583 remove "%loop-value%" from {skperms::groups::*}
7584command {@command} [<text>] [<text>] [<text>] [<text>] [<text>]:
7585 permission: {@permission}
7586 aliases: {@aliases}
7587 trigger:
7588 if {@CMDprotection} is true:
7589 if command sender is not console:
7590 if {@PlayerList} doesn't contain player or "%player%":
7591 message "{@CMDprotectionMsg}"
7592 stop
7593 if arg 1 is not set:
7594 message ""
7595 message "{@prefix} v{@version}:"
7596 message "{@maincolour}{@command} deleteDefault"
7597 message "{@secondcolour}Deletes default group setting (If set)"
7598 message "{@maincolour}{@command} (d|default) (group)"
7599 if {skperms::default} is set:
7600 message "{@secondcolour}Set the default group {@maincolour}(&7%{skperms::default}%{@maincolour})"
7601 else:
7602 message "{@secondcolour}Set the default group"
7603 message "{@maincolour}{@command} (p|player) (player) (add|remove|list) permission [permission]"
7604 message "{@secondcolour}Add/remove/list a players permissions"
7605 message "{@maincolour}{@command} (p|player) (player) (add|set|remove|list) group [group]"
7606 message "{@secondcolour}Add/remove/set/list a players group"
7607 message "{@maincolour}{@command} (g|group) (group) (add|remove|list) permission [permission]"
7608 message "{@secondcolour}Add/remove/list a group permission"
7609 message "{@maincolour}{@command} (g|group) (group) (add|remove|list) group [group]"
7610 message "{@secondcolour}Add/remove/list a groups connected groups"
7611 message "{@secondcolour}A group is created once it contains a permission"
7612 message "{@maincolour}{@command} (g|group) (group) (prefix|suffix) set (text)"
7613 message "{@secondcolour}Set a suffix or prefix to a group"
7614 message ""
7615 else if arg 1 is "deleteDefault":
7616 delete {skperms::default}
7617 message "{@prefix} {@maincolour}Removed default group (No group set)"
7618 else if arg 1 is "d", "setdefault" or "default":
7619 if arg 2 is set:
7620 set {skperms::default} to "%arg 2%"
7621 message "{@prefix} {@maincolour}Set default group to &l%arg 2%"
7622 else:
7623 message "{@prefix} {@maincolour}Error: Group not specified"
7624 else if arg 1 is "p" or "player":
7625 if arg 2 is not set:
7626 message "{@prefix} {@maincolour}Error: Player not specified"
7627 else if arg 2 is set:
7628 if arg 3 is "a" or "add":
7629 if arg 4 is "p", "permission" or "permissions":
7630 if arg 5 is set:
7631 if {skperms::groups::*} doesn't contain "%arg 2%":
7632 add "%arg 2%" to {skperms::groups::*}
7633 set {_player} to arg 2 parsed as player
7634 add "%arg 5%" to {_player}'s permissions
7635 set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions
7636 message "{@prefix} {@maincolour}Added %arg 5% to %arg 2%'s permissions"
7637 else:
7638 message "{@prefix} {@maincolour}Error: Permission not specified"
7639 else if arg 4 is "g", "group" or "groups":
7640 if arg 5 is set:
7641 if {skperms::groups::*} doesn't contain "%arg 2%":
7642 add "%arg 2%" to {skperms::groups::*}
7643 if {skperms::player::%arg 2%::groups::*} doesn't contain "%arg 5%":
7644 add "%arg 5%" to {skperms::player::%arg 2%::groups::*}
7645 else:
7646 message "{@prefix} {@secondcolour}%arg 2% already has group %arg 5%"
7647 stop
7648 message "{@prefix} {@maincolour}Added %arg 2% to group %arg 5%"
7649 if {@UseChat} is true:
7650 if {@ChatType} is "Display" or "display":
7651 loop all players:
7652 if {skperms::player::%player%::groups::*} contains "%arg 5%":
7653 if {skperms::group::%arg 5%::prefix} is set:
7654 if {skperms::group::%arg 5%::suffix} is set:
7655 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7656 else:
7657 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7658 else if {skperms::group::%arg 5%::suffix} is set:
7659 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7660 else:
7661 set loop-player's display name to "%player%"
7662 loop all players:
7663 if {skperms::player::%player%::groups::*} is not set:
7664 set loop-player's display name to "%player%"
7665 else:
7666 message "{@prefix} {@maincolour}Error: Group not specified"
7667 else:
7668 message "{@prefix} {@maincolour}Error: Type not specified"
7669 else if arg 3 is "s" or "set":
7670 if arg 4 is "g", "group" or "groups":
7671 if arg 5 is set:
7672 if {skperms::groups::*} doesn't contain "%arg 2%":
7673 add "%arg 2%" to {skperms::groups::*}
7674 delete {skperms::player::%arg 2%::groups::*}
7675 add "%arg 5%" to {skperms::player::%arg 2%::groups::*}
7676 message "{@prefix} {@maincolour}Set %arg 2% to group %arg 5%"
7677 if {@UseChat} is true:
7678 if {@ChatType} is "Display" or "display":
7679 loop all players:
7680 if {skperms::player::%player%::groups::*} contains "%arg 5%":
7681 if {skperms::group::%arg 5%::prefix} is set:
7682 if {skperms::group::%arg 5%::suffix} is set:
7683 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7684 else:
7685 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7686 else if {skperms::group::%arg 5%::suffix} is set:
7687 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7688 else:
7689 set loop-player's display name to "%player%"
7690 loop all players:
7691 if {skperms::player::%player%::groups::*} is not set:
7692 set loop-player's display name to "%player%"
7693 else:
7694 message "{@prefix} {@maincolour}Error: Group not specified"
7695 else:
7696 message "{@prefix} {@maincolour}Error: Type not specified"
7697 else if arg 3 is "r" or "remove":
7698 if arg 4 is "p", "permission" or "permissions":
7699 if arg 5 is set:
7700 set {_player} to arg 2 parsed as player
7701 remove "%arg 5%" from {_player}'s permissions
7702 set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions
7703 message "{@prefix} {@maincolour}Removed %arg 5% from %arg 2%'s permissions"
7704 else:
7705 message "{@prefix} {@maincolour}Error: Permission not specified"
7706 else if arg 4 is "g", "group" or "groups":
7707 if arg 5 is set:
7708 if {skperms::player::%arg 2%::groups::*} contains "%arg 5%":
7709 remove "%arg 5%" from {skperms::player::%arg 2%::groups::*}
7710 message "{@prefix} {@maincolour}Removed %arg 2% from group %arg 5%"
7711 if {@UseChat} is true:
7712 if {@ChatType} is "Display" or "display":
7713 loop all players:
7714 if {skperms::player::%player%::groups::*} contains "%arg 5%":
7715 if {skperms::group::%arg 5%::prefix} is set:
7716 if {skperms::group::%arg 5%::suffix} is set:
7717 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7718 else:
7719 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7720 else if {skperms::group::%arg 5%::suffix} is set:
7721 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7722 else:
7723 set loop-player's display name to "%player%"
7724 loop all players:
7725 if {skperms::player::%player%::groups::*} is not set:
7726 set loop-player's display name to "%player%"
7727 else:
7728 message "{@prefix} {@maincolour}Error: Player %arg 2% doesn't have that group"
7729 else:
7730 message "{@prefix} {@maincolour}Error: Group not specified"
7731 else:
7732 message "{@prefix} {@maincolour}Error: Type not specified"
7733 else if arg 3 is "l" or "list":
7734 if arg 4 is "p", "permission" or "permissions":
7735 set {_player} to arg 2 parsed as player
7736 message "{@prefix} {@maincolour}%{_player}'s permissions%"
7737 else if arg 4 is "g", "group" or "groups":
7738 message "{@prefix} {@maincolour}%{skperms::player::%arg 2%::groups::*}%"
7739 else:
7740 message "{@prefix} {@maincolour}Error: Type not specified"
7741 else if arg 1 is "g", "group" or "groups":
7742 if arg 2 is not set:
7743 message "{@prefix} {@maincolour}Error: Group not specified"
7744 else if arg 2 is set:
7745 if arg 3 is "a" or "add":
7746 if arg 4 is "p", "permission" or "permissions":
7747 if arg 5 is set:
7748 if {skperms::groups::*} doesn't contain "%arg 2%":
7749 add "%arg 2%" to {skperms::groups::*}
7750 add "%arg 5%" to {skperms::group::%arg 2%::permissions::*}
7751 message "{@prefix} {@maincolour}Added %arg 5% to group %arg 2%'s permissions"
7752 loop all players:
7753 if {skperms::player::%player%::groups::*} contains "%arg 2%":
7754 loop {skperms::group::%arg 2%::permissions::*}:
7755 add "%loop-value-2%" to loop-player's permissions
7756 else:
7757 message "{@prefix} {@maincolour}Error: Permission not specified"
7758 else if arg 4 is "g", "group" or "groups":
7759 if arg 5 is set:
7760 if {skperms::groups::*} doesn't contain "%arg 2%":
7761 add "%arg 2%" to {skperms::groups::*}
7762 loop {skperms::group::%arg 5%::permissions::*}:
7763 add "%loop-value%" to {skperms::group::%arg 2%::permissions::*}
7764 message "{@prefix} {@maincolour}Added %arg 5%'s permissions to group %arg 2%"
7765 loop all players:
7766 if {skperms::player::%player%::groups::*} contains "%arg 2%":
7767 loop {skperms::group::%arg 2%::permissions::*}:
7768 add "%loop-value-2%" to loop-player's permissions
7769 else:
7770 message "{@prefix} {@maincolour}Error: Group not specified"
7771 else:
7772 message "{@prefix} {@maincolour}Error: Type not specified"
7773 else if arg 3 is "r" or "remove":
7774 if arg 4 is "p", "permission" or "permissions":
7775 if arg 5 is set:
7776 loop all players:
7777 if {skperms::player::%player%::groups::*} contains "%arg 2%":
7778 loop {skperms::group::%arg 2%::permissions::*}:
7779 remove "%loop-value-2%" from loop-player's permissions
7780 remove "%arg 5%" from {skperms::group::%arg 2%::permissions::*}
7781 message "{@prefix} {@maincolour}Removed %arg 5% from group %arg 2%'s permissions"
7782 loop all players:
7783 if {skperms::player::%player%::groups::*} contains "%arg 2%":
7784 loop {skperms::group::%arg 2%::permissions::*}:
7785 add "%loop-value-2%" to loop-player's permissions
7786 else:
7787 message "{@prefix} {@maincolour}Error: Permission not specified"
7788 else if arg 4 is "g", "group" or "groups":
7789 if arg 5 is set:
7790 loop all players:
7791 if {skperms::player::%player%::groups::*} contains "%arg 2%":
7792 loop {skperms::group::%arg 2%::permissions::*}:
7793 remove "%loop-value-2%" from loop-player's permissions
7794 loop {skperms::group::%arg 5%::permissions::*}:
7795 remove "%loop-value%" from {skperms::group::%arg 2%::permissions::*}
7796 add 1 to {_l}
7797 message "{@prefix} {@maincolour}Removed %{_l}% of %arg 5%'s permissions from group %arg 2%"
7798 loop all players:
7799 if {skperms::player::%player%::groups::*} contains "%arg 2%":
7800 loop {skperms::group::%arg 2%::permissions::*}:
7801 add "%loop-value-2%" to loop-player's permissions
7802 else:
7803 message "{@prefix} {@maincolour}Error: Group not specified"
7804 else:
7805 message "{@prefix} {@maincolour}Error: Type not specified"
7806 else if arg 3 is "l" or "list":
7807 if arg 4 is "p", "permission" or "permissions":
7808 message "{@prefix} {@maincolour}%{skperms::group::%arg 2%::permissions::*}%"
7809 else:
7810 message "{@prefix} {@maincolour}Error: Type not specified"
7811 else if arg 3 is "prefix" or "suffix":
7812 if arg 4 is "set":
7813 if arg 5 is set:
7814 set {skperms::group::%arg 2%::%arg 3%} to "%arg 5%"
7815 message "{@prefix} {@maincolour}%arg 3% set to %arg 5%"
7816 if {@UseChat} is true:
7817 if {@ChatType} is "Display" or "display":
7818 loop all players:
7819 if {skperms::player::%player%::groups::*} contains "%arg 5%":
7820 if {skperms::group::%arg 5%::prefix} is set:
7821 if {skperms::group::%arg 5%::suffix} is set:
7822 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
7823 else:
7824 set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
7825 else if {skperms::group::%arg 5%::suffix} is set:
7826 set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
7827 else:
7828 set loop-player's display name to "%player%"
7829 loop all players:
7830 if {skperms::player::%player%::groups::*} is not set:
7831 set loop-player's display name to "%player%"
7832 else:
7833 message "{@prefix} {@maincolour}Prefix/Suffix not specified"
7834 else:
7835 message "{@prefix} {@maincolour}Error: Type not specified (Type ""set"")"
7836#on quit:
7837# set {skperms::player::%player%::permissions::*} to player's permissions
7838
7839on join:
7840 loop 2 times:
7841 remove "%player%" from {skperms::players::*}
7842 add "%player%" to {skperms::players::*}
7843 loop {skperms::groups::*}:
7844 if player has permission "skperms.group.%loop-value%":
7845 if {skperms::player::%player%::groups::*} doesn't contain "%loop-value%":
7846 add "%loop-value%" to {skperms::player::%player%::groups::*}
7847 if {skperms::default} is set:
7848 loop {skperms::group::%{skperms::default}%::permissions::*}:
7849 add "%loop-value%" to player's permissions
7850 loop {skperms::player::%player%::permissions::*}:
7851 add "%loop-value%" to player's permissions
7852 if {skperms::player::%player%::groups::*} is not empty:
7853 loop {skperms::player::%player%::groups::*}:
7854 loop {skperms::group::%loop-value%::permissions::*}:
7855 add "%loop-value-2%" to player's permissions
7856 if {@UseChat} is true:
7857 if {@ChatType} is "Display" or "display":
7858 if {skperms::group::%loop-index%::prefix} is set:
7859 if {skperms::group::%loop-index%::suffix} is set:
7860 set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%%{skperms::group::%loop-index%::suffix}%"
7861 else:
7862 set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%"
7863 else if {skperms::group::%loop-index%::suffix} is set:
7864 set player's display name to coloured "%player%%{skperms::group::%loop-index%::suffix}%"
7865 else:
7866 set player's display name to "%player%"
7867 loop all players:
7868 if {skperms::player::%player%::groups::*} is not set:
7869 set loop-player's display name to "%player%"
7870
7871on load:
7872 set {_time} to difference between {mineplex.starttime} and now
7873 broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7has been loaded! (%{_time}%)"