Created
December 30, 2020 00:55
-
-
Save tadhgboyle/1c5c7b862d71938a505266374a5eda18 to your computer and use it in GitHub Desktop.
archived
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on load: | |
set {mineplex.starttime} to now | |
#(Old ugly acci text here) | |
# | |
#Mineplex Core Remake | |
#The best and only Mineplex Copy | |
#by Josh Roy (WheezyGold7931) | |
#Enjoy! | |
script options: | |
$ use permissions | |
#! MCR Settings | |
#! If you want to use MySQL features edit the details below | |
script options: | |
$ db url jdbc:mysql://<HOST>:3306/<DATABASE> | |
$ db username <USERNAME> | |
$ db password <PASSWORD> | |
#! This value can be set to the following: | |
#! "file": Stores the playerdata into files (Default) | |
#! "sql": Stores the playerdata into a sql database (Details must be setup above) | |
options: | |
mode: file | |
#! These are internal settings, it is not recomended that you mess with them as they WILL mess up the plugin! | |
options: | |
MCRVER: 3.1 | |
MCRHOTFIX: 0 | |
configver: shamu | |
playerdata: 3 | |
#! json.sk code DO NOT MESS WITH THIS! !(Rezz ily)! | |
options: | |
debug: false | |
codes: 0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f|k|l|m|n|o|r | |
function mcrremoveColor(msg: text) :: text: | |
set {_m::*} to {_msg} split at "" | |
set {_color-codes} to "{@codes}" | |
set {_colors::*} to {_color-codes} split at "|" | |
set {_new} to "" | |
loop {_m::*}: | |
set {_char} to loop-value | |
set {_prev} to the last character of {_new} | |
if {_prev} is "&": | |
loop {_colors::*}: | |
if loop-value-2 is {_char}: | |
set {_skip} to true | |
if {_skip} is set: | |
delete {_skip} | |
else: | |
set {_new} to "%{_new}%%{_char}%" | |
return {_new} | |
function mcrjsonColorize(msg: text, default-color: text = "&r") :: text: | |
set {_m::*} to {_msg} split at "" | |
set {_color-codes} to "{@codes}" | |
set {_colors::*} to {_color-codes} split at "|" | |
set {_color} to colored {_default-color} | |
set {_code} to the first character of {_color} | |
set {_new} to "" | |
set {_skip} to 0 | |
loop amount of {_m::*} times: | |
if {_skip} is more than or equal to 1: | |
subtract 1 from {_skip} | |
else: | |
set {_char} to {_m::%loop-number%} | |
set {_next} to {_m::%loop-number + 1%} | |
if {@debug} is true: | |
broadcast "&a[Character Check] &r%loop-number%: &7%{_char}% &r&onext: &8%{_next}% &r[%{_color}%color&r]" | |
if {_char} is "&" or {_code}: | |
if {@debug} is true: | |
broadcast "&a[Color Check] &rFOUND: &o%{_char}%%{_next}% &7&m<--&7&o is it valid?" | |
loop {_colors::*}: | |
if loop-value-2 is {_next}: | |
set {_color} to "%{_color}%%{_code}%%{_next}%" | |
if {_next} is "r": | |
set {_color} to {_default-color} | |
set {_new} to "%{_new}%%{_color}%" | |
set {_skip} to 1 | |
if {_skip} is less than or equal to 0: | |
set {_new} to "%{_new}%%{_char}%" | |
else if {_char} is " ": | |
set {_new} to "%{_new}% %{_color}%" | |
else: | |
set {_new} to "%{_new}%%{_char}%" | |
return {_new} | |
function mcrjsonSanitize(msg: text) :: text: | |
if {@debug} is true: | |
broadcast "&a[Sanitize] &7&oSanitizing input..." | |
set {_m::*} to {_msg} split at "" | |
loop {_m::*}: | |
if loop-value is """": | |
set {_m::%loop-index%} to "\""" # """ | |
else if loop-value is "\": | |
set {_m::%loop-index%} to "\\" | |
set {_new} to join {_m::*} with "" | |
return {_new} | |
function mcrjsonFormat(msg: text, color: boolean = true) :: text: | |
set {_m::*} to {_msg} split at "||" | |
set {_current} to 1 | |
loop {_m::*}: | |
if {_clusters::%{_current}%} is not set: | |
set {_clusters::%{_current}%} to "" | |
if {_clusters::%{_current}%::text} is not set: | |
set {_clusters::%{_current}%::text} to mcrjsonSanitize(loop-value) | |
else: | |
set {_tag} to the first 4 characters of loop-value | |
set {_value} to subtext of loop-value from characters 5 to the length of loop-value | |
if {_tag} is "ttp:": | |
set {_clusters::%{_current}%::tooltip} to mcrjsonSanitize({_value}) | |
else if {_tag} is "cmd:": | |
set {_clusters::%{_current}%::command} to mcrjsonSanitize({_value}) | |
else if {_tag} is "sgt:": | |
set {_clusters::%{_current}%::suggest} to mcrjsonSanitize({_value}) | |
else if {_tag} is "url:": | |
if {_value} doesn't contain "http://" or "https://": | |
set {_value} to "http://%{_value}%" | |
set {_clusters::%{_current}%::url} to mcrjsonSanitize({_value}) | |
else if {_tag} is "ins:": | |
set {_clusters::%{_current}%::insertion} to mcrjsonSanitize({_value}) | |
else: | |
add 1 to {_current} | |
set {_clusters::%{_current}%::text} to mcrjsonSanitize(loop-value) | |
set {_clusters::%{_current}%} to "" | |
if {@debug} is true: | |
broadcast "&a[Tag Check] &3cluster:&b%{_current}% &8(&f&o%{_tag}%&8)" | |
loop {_clusters::*}: | |
if {@debug} is true: | |
broadcast "&a[Cluster Check] &7&oCluster ##%loop-index% exists." | |
set {_i} to loop-index | |
set {_text} to {_clusters::%{_i}%::text} | |
if {_color} is true: | |
set {_text} to mcrjsonColorize({_text}) | |
if {_json} is not set: | |
set {_json} to "{""text"":""%{_text}%""" | |
else: | |
set {_json} to "%{_json}%,{""text"":""%{_text}%""" | |
if {_clusters::%{_i}%::tooltip} is set: | |
if {_color} is true: | |
set {_tooltip} to mcrjsonColorize({_clusters::%{_i}%::tooltip}) | |
else: | |
set {_tooltip} to {_clusters::%{_i}%::tooltip} | |
set {_json} to "%{_json}%,""hoverEvent"":{""action"": ""show_text"",""value"": ""%{_tooltip}%""}" | |
if {_clusters::%{_i}%::insertion} is set: | |
set {_json} to "%{_json}%,""insertion"":""%{_clusters::%{_i}%::insertion}%"",""obfuscated"":false" | |
if {_clusters::%{_i}%::command} is set: | |
set {_clickable} to "%{_json}%,""clickEvent"":{""action"":""run_command"",""value"":""%{_clusters::%{_i}%::command}%""}" | |
if {_clusters::%{_i}%::suggest} is set: | |
set {_clickable} to "%{_json}%,""clickEvent"":{""action"": ""suggest_command"",""value"": ""%{_clusters::%{_i}%::suggest}%""}" | |
if {_clusters::%{_i}%::url} is set: | |
set {_clickable} to "%{_json}%,""clickEvent"":{""action"": ""open_url"",""value"": ""%{_clusters::%{_i}%::url}%""}" | |
if {_clickable} is set: | |
set {_json} to "%{_clickable}%}" | |
delete {_clickable} | |
else: | |
set {_json} to "%{_json}%}" | |
return "{""text"":"""", ""extra"":[%{_json}%]}" | |
function mcrjson(to: text, msg: text, color: boolean = true): | |
set {_msg} to mcrjsonFormat({_msg}, {_color}) | |
execute console command "/tellraw %{_to}% %{_msg}%" | |
if {@debug} is true: | |
set {_player} to {_to} parsed as offline player | |
if {_player} is online: | |
send uncolored {_msg} to {_player} | |
function mcrjsonBroadcast(msg: text, color: boolean = true): | |
mcrjson("@a", {_msg}, {_color}) | |
#MCR Code | |
#MCR Code | |
#MCR Code | |
#MCR Code | |
#MCR Code | |
#MCR Code | |
#MCR Code | |
on load: #You cannot trust people to enter the correct thing so lets double check for them :) | |
if "{@mode}" is "file": | |
set {mineplex.mode} to "file" | |
send "§9MCR> §eMCR has been set to store playerdata into files!" to the console | |
else if "{@mode}" is "sql": | |
set {mineplex.mode} to "sql" | |
send "§9MCR> §eMCR has been set to store playerdata into SQL!" to the console | |
send "§9MCR> §eThey better have setup the database correctly" to the console | |
else: | |
set {mineplex.mode} to "file" | |
send "§9MCR> §eMCR has been set to store playerdata into files!" to the console | |
on load: | |
if {mineplex.mode} is "sql": | |
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;" | |
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;" | |
function parseRank(p: player , r: text) :: string: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
set {_get} to value "rank" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
if {mineplex.mode} is "sql": | |
set {_get} to first element out of objects in column "rank" from result of query "SELECT rank FROM `accounts` WHERE uuid = '%uuid of {_p}%'" | |
if {_get} is "All": | |
set {mineplex.rank.%{_p}%} to "" | |
return "&fPlayer" | |
if {_get} is "Ultra": | |
set {mineplex.rank.%{_p}%} to "&b&lULTRA " | |
return "&bUltra" | |
if {_get} is "Hero": | |
set {mineplex.rank.%{_p}%} to "&d&lHERO " | |
return "&dHero" | |
if {_get} is "Legend": | |
set {mineplex.rank.%{_p}%} to "&a&lLEGEND " | |
return "&aLegend" | |
if {_get} is "Titan": | |
set {mineplex.rank.%{_p}%} to "&c&lTITAN " | |
return "&cTitan" | |
if {_get} is "Trainee": | |
set {mineplex.rank.%{_p}%} to "&6&lTRAINEE " | |
return "&6Trainee" | |
if {_get} is "Mod": | |
set {mineplex.rank.%{_p}%} to "&6&lMOD " | |
return "&6Mod" | |
if {_get} is "SrMod": | |
set {mineplex.rank.%{_p}%} to "&6&lSR.MOD " | |
return "&6Sr.Mod" | |
if {_get} is "CMod": | |
set {mineplex.rank.%{_p}%} to "&6&lC.MOD " | |
return "&6C.Mod" | |
if {_get} is "Admin": | |
set {mineplex.rank.%{_p}%} to "&4&lADMIN " | |
return "&4Admin" | |
if {_get} is "Apex": | |
set {mineplex.rank.%{_p}%} to "&9&lAPEX " | |
return "&9Apex" | |
if {_get} is "Leader": | |
set {mineplex.rank.%{_p}%} to "&4&lLEADER " | |
return "&4Leader" | |
if {_get} is "Owner": | |
set {mineplex.rank.%{_p}%} to "&4&lOWNER " | |
return "&4Owner" | |
if {_get} is "Builder": | |
set {mineplex.rank.%{_p}%} to "&9&lBUILDER " | |
return "&9Builder" | |
if {_get} is "Maplead": | |
set {mineplex.rank.%{_p}%} to "&9&lMAPLEAD " | |
return "&9Maplead" | |
if {_get} is "Mapper": | |
set {mineplex.rank.%{_p}%} to "&9&lMAPPER " | |
return "&9Mapper" | |
if {_get} is "JrDev": | |
set {mineplex.rank.%{_p}%} to "&6&lJR.DEV " | |
return "&6Jr.Dev" | |
if {_get} is "Dev": | |
set {mineplex.rank.%{_p}%} to "&4&lDEV " | |
return "&4Dev" | |
if {_get} is "Twitch": | |
set {mineplex.rank.%{_p}%} to "&5&lTWITCH " | |
return "&5Twitch" | |
if {_get} is "Youtube": | |
set {mineplex.rank.%{_p}%} to "&c&lYOUTUBE " | |
return "&cYouTube" | |
if {_get} is "Event": | |
set {mineplex.rank.%{_p}%} to "&f&lEVENT " | |
return "&fEvent" | |
if {_get} is "Yt": | |
set {mineplex.rank.%{_p}%} to "&5&lYT " | |
return "&5YT" | |
if {_get} is "Eternal": | |
set {mineplex.rank.%{_p}%} to "&3&lETERNAL " | |
return "&3Eternal" | |
if {_get} is "Support": | |
set {mineplex.rank.%{_p}%} to "&9&lSUPPORT " | |
return "&9Support" | |
if {_get} is "Artist": | |
set {mineplex.rank.%{_p}%} to "&9&lARTIST " | |
return "&9Artist" | |
function parseRankRaw(r: text) :: string: | |
set {_get} to {_r} | |
if {_get} is "All": | |
set {_rank} to "" | |
if {_get} is "Ultra": | |
set {_rank} to "&b&lULTRA " | |
if {_get} is "Hero": | |
set {_rank} to "&d&lHERO " | |
if {_get} is "Legend": | |
set {_rank} to "&a&lLEGEND " | |
if {_get} is "Titan": | |
set {_rank} to "&c&lTITAN " | |
if {_get} is "Trainee": | |
set {_rank} to "&6&lTRAINEE " | |
if {_get} is "Mod": | |
set {_rank} to "&6&lMOD " | |
if {_get} is "SrMod": | |
set {_rank} to "&6&lSR.MOD " | |
if {_get} is "CMod": | |
set {_rank} to "&6&lC.MOD " | |
if {_get} is "Admin": | |
set {_rank} to "&4&lADMIN " | |
if {_get} is "Apex": | |
set {_rank} to "&9&lAPEX " | |
if {_get} is "Leader": | |
set {_rank} to "&4&lLEADER " | |
if {_get} is "Owner": | |
set {_rank} to "&4&lOWNER " | |
if {_get} is "Builder": | |
set {_rank} to "&9&lBUILDER " | |
if {_get} is "Maplead": | |
set {_rank} to "&9&lMAPLEAD " | |
if {_get} is "Mapper": | |
set {_rank} to "&9&lMAPPER " | |
if {_get} is "JrDev": | |
set {_rank} to "&6&lJR.DEV " | |
if {_get} is "Dev": | |
set {_rank} to "&4&lDEV " | |
if {_get} is "Twitch": | |
set {_rank} to "&5&lTWITCH " | |
if {_get} is "Youtube": | |
set {_rank} to "&c&lYOUTUBE " | |
if {_get} is "Event": | |
set {_rank} to "&f&lEVENT " | |
if {_get} is "Yt": | |
set {_rank} to "&5&lYT " | |
if {_get} is "Eternal": | |
set {_rank} to "&3&lETERNAL " | |
if {_get} is "Support": | |
set {_rank} to "&9&lSUPPORT " | |
if {_get} is "Artist": | |
set {_rank} to "&9&lARTIST " | |
if {_rank} is set: | |
return {_rank} | |
else: | |
return "null" | |
function playerdata(p: offline player) :: boolean: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
if file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" doesn't exists: | |
create file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "player" to "%{_p}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "rank" to "All" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "level" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "shards" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "banned" to "no" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "muted" to "no" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
else: | |
set {_ver} to value "version" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
if {_ver} is not "{@playerdata}": | |
if {_ver} is "1": | |
set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
send "&9MCR> &7Your playdata has been updated to the latest version!" to {_p} | |
if {_ver} is "2": | |
set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
send "&9MCR> &7Your playdata has been updated to the latest version!" to {_p} | |
set "player" to "%{_p}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set {_get} to value "rank" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
parseRank({_p}, "LOL") | |
set {_lvl} to value "level" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
execute console command "/givestat %{_p}% Global.ExpEarned %{_lvl}%" | |
set {_sh} to value "shards" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set {mineplex.shards.%{_p}%} to {_sh} parsed as an number | |
set {_ge} to value "gems" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
set {mineplex.gems.%{_p}%} to {_ge} parsed as an number | |
set {_ban} to value "banned" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
if {_ban} is "yes": | |
set {banned::%{_p}%} to true | |
else: | |
set {banned::%{_p}%} to false | |
set {_mute} to value "muted" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
if {_mute} is "yes": | |
set {muted::%{_p}%} to true | |
else: | |
set {muted::%{_p}%} to false | |
else if {mineplex.mode} is "sql": | |
set {_getuuid} to first element out of objects in column "uuid" from result of query "SELECT uuid FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
if {_getuuid} is not set: | |
update "INSERT INTO `accounts` (`uuid`, `name`) VALUES ('%{_uuid}%', '%{_p}%')" | |
parseRank({_p}, "LOL") | |
set {_lvl} to first element out of objects in column "level" from result of query "SELECT level FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
execute console command "/givestat %{_p}% Global.ExpEarned %{_lvl}%" | |
set {_sh} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
set {mineplex.shards.%{_p}%} to {_sh} | |
set {_ge} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
set {mineplex.gems.%{_p}%} to {_ge} | |
set {_ban} to first element out of objects in column "banned" from result of query "SELECT banned FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
if {_ban} is "yes": | |
set {banned::%{_p}%} to true | |
else: | |
set {banned::%{_p}%} to false | |
set {_mute} to first element out of objects in column "muted" from result of query "SELECT muted FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
if {_mute} is "yes": | |
set {muted::%{_p}%} to true | |
else: | |
set {muted::%{_p}%} to false | |
function getPlayerdata(p: offline player , f: text) :: string: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
set {_get} to value "%{_f}%" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
return {_get} | |
else if {mineplex.mode} is "sql": | |
set {_get} to first element out of objects in column "%{_f}%" from result of query "SELECT %{_f}% FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
return {_get} | |
function setPlayerdata(p: offline player , f: text , v: text) :: boolean: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
set "%{_f}%" to "%{_v}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
return true | |
playerdata({_p}) | |
else if {mineplex.mode} is "sql": | |
if {_f} starts with "stats": | |
stop | |
update "UPDATE `accounts` SET `%{_f}%` = '%{_v}%' WHERE uuid = '%{_uuid}%'" | |
return true | |
set {_s} to getPlayerdata({_p}, "shards") | |
set {_g} to getPlayerdata({_p}, "gems") | |
broadcast "shard: %{_s}% -gem: %{_g}%" | |
playerdata({_p}) | |
function addShards(p: offline player , a: number) :: boolean: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
set {_get} to getPlayerdata({_p}, "shards") | |
set {_cur} to {_get} parsed as a number | |
add {_a} to {_cur} | |
setPlayerdata({_p}, "shards", "%{_cur}%") | |
else if {mineplex.mode} is "sql": | |
set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
add {_a} to {_get} | |
setPlayerdata({_p}, "shards", "%{_get}%") | |
function delShards(p: offline player , a: number) :: boolean: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
set {_get} to getPlayerdata({_p}, "shards") | |
set {_cur} to {_get} parsed as a number | |
remove {_a} from {_cur} | |
setPlayerdata({_p}, "shards", "%{_cur}%") | |
else if {mineplex.mode} is "sql": | |
set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
remove {_a} from {_get} | |
setPlayerdata({_p}, "shards", "%{_get}%") | |
function addGems(p: offline player , a: number) :: boolean: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
set {_get} to getPlayerdata({_p}, "gems") | |
set {_cur} to {_get} parsed as a number | |
add {_a} to {_cur} | |
setPlayerdata({_p}, "gems", "%{_cur}%") | |
else if {mineplex.mode} is "sql": | |
set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
add {_a} to {_get} | |
setPlayerdata({_p}, "gems", "%{_get}%") | |
function delGems(p: offline player , a: number) :: boolean: | |
set {_uuid} to uuid of {_p} | |
if {mineplex.mode} is "file": | |
set {_get} to getPlayerdata({_p}, "gems") | |
set {_cur} to {_get} parsed as a number | |
remove {_a} from {_cur} | |
setPlayerdata({_p}, "gems", "%{_cur}%") | |
else if {mineplex.mode} is "sql": | |
set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'" | |
remove {_a} from {_get} | |
setPlayerdata({_p}, "gems", "%{_get}%") | |
function firework(l: location, t: string, r: integer, g: integer, b: integer, p: boolean) :: string: | |
if {_p} is true: | |
set {_p} to 1 | |
else: | |
set {_p} to 20 | |
if {_t} is not "BALL" or "LARGE BALL" or "BALL_LARGE" or "STAR" or "CREEPER" or "BURST": | |
message "&8[&3Firework&bAPI&8] &4Error: &c%{_t}% &7is not a valid firework type." to all players | |
stop | |
if {_r} or {_g} or {_b} > 255: | |
message "&8[&3Firework&bAPI&8] &4Error: &cUnallowed Value (>255)" to all players | |
stop | |
if {_t} is "BALL": | |
set {_t} to 0 | |
else if {_t} is "LARGE BALL" or "BALL_LARGE": | |
set {_t} to 1 | |
else if {_t} is "STAR": | |
set {_t} to 2 | |
else if {_t} is "CREEPER": | |
set {_t} to 3 | |
else if {_t} is "BURST": | |
set {_t} to 4 | |
#RGB CONVERT | |
set {_c1} to convert num {_r} to hexa | |
set {_c2} to convert num {_g} to hexa | |
set {_c3} to convert num {_b} to hexa | |
loop 3 times: | |
set {_cL} to length of {_c%loop-value%} | |
if {_cL} < 2: | |
set {_c%loop-value%} to "0%{_c%loop-value%}%" | |
set {_color} to convert hexa "%{_c1}%%{_c2}%%{_c3}%" to num | |
spawn a firework at {_l} | |
add "{Silent:1b,FireworksItem:{id:fireworks,Count:1,tag:{Fireworks:{Explosions:[{Type:%{_t}%,Colors:[%{_color}%],FadeColors:[%{_color}%]}]}}}}" to nbt of spawned entity | |
add "{LifeTime:%{_p}%}" to nbt of spawned entity | |
on quit: | |
delete {mineplex.rank.%player%} | |
delete {mineplex.level.%player%} | |
delete {mineplex.gems.%player%} | |
delete {mineplex.shards.%player%} | |
delete {banned::%player%} | |
delete {muted::%player%} | |
on connect: | |
set {_uuid} to uuid of {_p} | |
playerdata(player) | |
send "§9MCR> §e%player% (%uuid of player%) has been loaded from playerdata!" to the console | |
function Beam(e1: entity , e2: entity): | |
spawn a squid at location 0 meter behind {_e1}'s head | |
set {_el} to last spawned entity | |
set target of {_el} to {_e2} | |
apply invisibility to the last spawned entity | |
add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1, NoAI:1}" to nbt of last spawned entity | |
set {_targLoc} to location of {_e2} | |
loop 100 times: | |
teleport {_el} to location 0 meter behind {_e1}'s head | |
set target of {_el} to {_e2} | |
add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el} | |
if {_e2}'s name is "BeamCow": | |
teleport {_e2} to {_targLoc} | |
add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2} | |
wait 1 tick | |
create a safe explosion with force 2 at {_e1} | |
loop entities in radius 3 of {_e2}: | |
make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_e2})) | |
teleport {_el} 300 meters below {_el} | |
teleport {_e2} 300 meters below {_e2} | |
kill {_el} | |
kill {_e2} | |
function ClientBeam(e1: entity , e3: entity , e2: entity): | |
spawn a cow at location of {_e2} | |
set {_c} to last spawned entity | |
add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity | |
spawn a guardian at location 1 meter behind {_e1}'s head | |
set {_el} to last spawned entity | |
set target of {_el} to {_e2} | |
loop all players: | |
protocol hide {_e1} from loop-player | |
protocol hide {_e2} from loop-player | |
protocol show {_e1} to {_e3} | |
protocol show {_e2} to {_e3} | |
apply invisibility to {_c} | |
apply invisibility to the last spawned entity | |
add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1}" to nbt of last spawned entity | |
set {_targLoc} to location of {_e2} | |
loop 100 times: | |
teleport {_el} to location 1 meter behind {_e1}'s head | |
add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el} | |
if {_e2}'s name is "BeamCow": | |
teleport {_e2} to {_targLoc} | |
add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2} | |
wait 1 tick | |
create a safe explosion with force 2 at {_e2} | |
loop entities in radius 3 of {_c}: | |
make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_c})) | |
teleport {_el} 300 meters below {_el} | |
teleport {_e2} 300 meters below {_e2} | |
kill {_el} | |
kill {_c} | |
function configRefresh(n: number) :: number: | |
set {mineplex.config.config} to value "config" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.servername} to value "servername" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.website} to value "website" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.appealwebsite} to value "appealwebsite" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.ruleswebsite} to value "ruleswebsite" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.youtube} to value "youtube" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.twitter} to value "twitter" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.shoplink} to value "shoplink" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.world} to value "worldname" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.doublejump} to value "doublejump" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.autoop} to value "autoop" get of "plugins/Mineplex-Core-Remake/config.yml" | |
set {mineplex.config.unbanadmin} to value "unbanadmin" get of "plugins/Mineplex-Core-Remake/config.yml" | |
function configPopulate(n: number) :: number: | |
create file "plugins/Mineplex-Core-Remake/config.yml" | |
set "config" to "{@configver}" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "servername" to "Mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "website" to "www.mineplex.com" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "appealwebsite" to "www.mineplex.com/appeals" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "ruleswebsite" to "www.mineplex.com/rules" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "youtube" to "http://youtube.com/mineplexgamesofficial" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "twitter" to "http://twitter.com/mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "shoplink" to "www.mineplex.com/shop" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "worldname" to "world" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "doublejump" to "true" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "autoop" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
set "unbanadmin" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml" | |
function updateRankAPI(p: player) :: player: | |
wait 5 ticks | |
if {mineplex.rank.%{_p}%} is not set: | |
set {mineplex.rank.%{_p}%} to "" | |
if {mineplex.disguise.%{_p}%} is set: | |
set {_br} to uncolored {mineplex.rank.%{_p}%} | |
set {_dr} to uncolored {mineplex.rank.%{mineplex.disguise.%{_p}%}%} | |
if {mineplex.rank.%{mineplex.disguise.%{_p}%}%} is set: | |
make all players see {_p}'s prefix as "%{mineplex.rank.%{mineplex.disguise.%{_p}%}%}%&r&e" | |
else: | |
make all players see {_p}'s prefix as "&e" | |
set {_br} to convert string "%{_br}%" to lowercase | |
set {_br} to 1st char in each word of "%{_br}%" to caps | |
set {_dr} to convert string "%{_dr}%" to lowercase | |
set {_dr} to 1st char in each word of "%{_dr}%" to caps | |
replace all " " in {_br} with "" | |
replace all " " in {_dr} with "" | |
if {_dr} is "": | |
set {_dr} to "No Rank" | |
if {_br} contains "mod": | |
replace all "mod" with "Mod" in {_br} | |
if {_dr} contains "mod": | |
replace all "mod" with "Mod" in {_dr} | |
if {_br} contains "dev": | |
replace all "dev" with "Dev" in {_br} | |
if {_dr} contains "dev": | |
replace all "dev" with "Dev" in {_dr} | |
if {_dr} contains "lead": | |
replace all "lead" with "Lead" in {_dr} | |
if {_br} contains "lead": | |
replace all "lead" with "Lead" in {_br} | |
if {_br} is "": | |
set {_br} to "No Rank" | |
if {_br} contains "mod": | |
replace all "mod" with "Mod" in {_br} | |
if {_br} contains "dev": | |
replace all "dev" with "Dev" in {_br} | |
if {_br} contains "mod": | |
replace all "mod" with "Mod" in {_br} | |
if {_br} contains "tube": | |
replace all "tube" with "Tube" in {_br} | |
loop {mineplex.patreon::*}: | |
if loop-value is "%{_p}%": | |
set {_br} to "P.%{_br}%" | |
set {mineplex.api.displayrank.%{_p}%} to "%{_dr}% (%{_br}%)" | |
set {mineplex.api.displayname.%{_p}%} to "%{mineplex.disguise.%{_p}%}%" | |
set {mineplex.sb.anim.%{_p}%} to " Welcome %{mineplex.api.displayname.%{_p}%}%, to the %{mineplex.config.servername}% Network! " | |
else: | |
set {_br} to uncolored {mineplex.rank.%{_p}%} | |
if {mineplex.rank.%{_p}%} is set: | |
make all players see {_p}'s prefix as "%{mineplex.rank.%{_p}%}%&r&e" | |
else: | |
make all players see {_p}'s prefix as "&e" | |
set {_br} to convert string "%{_br}%" to lowercase | |
set {_br} to 1st char in each word of "%{_br}%" to caps | |
if {_br} is "": | |
set {_br} to "No Rank" | |
if {_br} contains "mod": | |
replace all "mod" with "Mod" in {_br} | |
if {_br} contains "dev": | |
replace all "dev" with "Dev" in {_br} | |
if {_br} contains "mod": | |
replace all "mod" with "Mod" in {_br} | |
if {_br} contains "tube": | |
replace all "tube" with "Tube" in {_br} | |
if {_br} contains "lead": | |
replace all "lead" with "Lead" in {_br} | |
if {_br} contains "dev": | |
replace all "dev" with "Dev" in {_br} | |
loop {mineplex.patreon::*}: | |
if loop-value is "%{_p}%": | |
set {_br} to "P.%{_br}%" | |
set {mineplex.api.displayrank.%{_p}%} to "%{_br}%" | |
set {mineplex.api.displayname.%{_p}%} to "%{_p}%" | |
set {mineplex.sb.anim.%{_p}%} to " Welcome %{mineplex.api.displayname.%{_p}%}%, to the %{mineplex.config.servername}% Network! " | |
function mcs(p: player , m: text) :: number: | |
if {mineplex.overridechat} is true: | |
if {mineplex.disguise.%{_p}%} is set: | |
set {_player} to {mineplex.disguise.%{_p}%} | |
else: | |
set {_player} to {_p} | |
set {_prerank} to getPlayerdata({_player}, "rank") | |
set {_rank} to parseRankRaw({_prerank}) | |
if {_rank} is not set: | |
set {_rank} to "" | |
if {_rank} is "null": | |
set {_rank} to "" | |
if {mineplex.level.%{_player}%} is not set: | |
set {mineplex.level.%{_player}%} to "&70" | |
replace all " fuck " with " **** " in {_m} | |
replace all " bitch " with " ***** " in {_m} | |
replace all " ass " with " *** " in {_m} | |
replace all " nigger " with " *** " in {_m} | |
replace all " cunt " with " *** " in {_m} | |
replace all " f|_|ck " with " ****** " in {_m} | |
replace all " shit " with " **** " in {_m} | |
if {_m} is {mineplex.lastsent.%{_p}%}: | |
if {_p} does not have permission "mineplex.mod": | |
send "&9Chat> &7This message is too similar to your previous message." to {_p} | |
return -1 | |
stop | |
if {mineplex.authlock.%{_p}%} is true: | |
return -1 | |
stop | |
set {mineplex.lastsent.%{_p}%} to {_m} | |
loop all players: | |
if {mineplex.pref.pc.%loop-player%} is true: | |
if {mineplex.rank.%{_player}%} is set: | |
set {_lvl} to {mineplex.level.%{_player}%} | |
if {_player} is "WheezyGold7931": | |
set {_lvl} to "&c101" | |
loop {mineplex.ignorelist.%loop-player%::*}: | |
if loop-value-2 is "%{_player}%": | |
set {_ignore.%loop-player-1%} to true | |
if {_ignore.%loop-player-1%} is not set: | |
if {mineplex.rank.%{_player}%} is not "": | |
set {_sanitizedm} to uncolored {_m} | |
loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3 | |
if loop-value-2 is {_player}: | |
set {_brank} to uncolored {mineplex.rank.%{_player}%} | |
set {_rank} to "&6&lP.%{_brank}%" | |
else: | |
set {_rank} to {mineplex.rank.%{_player}%} | |
mcrjson("%loop-player%", "%{_lvl}%|| %{_rank}%||ttp:%{mineplex.hover.%{_player}%}%||&e%{_player}% &f%{_sanitizedm}%", false) | |
else: | |
send "%{_lvl}% %{mineplex.rank.%{_player}%}%&e%{_player}% &f%{_m}%" to loop-player | |
return -1 | |
else: | |
stop | |
function caseSensitive(source: String, compareTo: String) :: boolean: | |
if size of split {_source} at {_compareTo} is 2: | |
return true | |
else: #Hi Snow | |
return false | |
function gwenAlert(p: player , r: text) :: number: | |
if {mineplex.disguise.%{_p}%} is set: | |
set {_player} to {mineplex.disguise.%{_p}%} | |
else: | |
set {_player} to {_p} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if {mineplex.pref.gwen.%loop-player%} is true: | |
send "&b&kK&r &c&lGWEN > &6%{_player}% &esuspected of &a%{_r}%&e." to loop-player | |
#Config Loading | |
on script unload: | |
broadcast "&9MCR> &7Mineplex Core is re-parsing!" | |
on load: | |
if file "plugins/Mineplex-Core-Remake/config.yml" doesn't exists: | |
configPopulate(1) | |
# set {mineplex.config.servername} to colored value "servername" get of "plugins/Mineplex-Core-Remake/config.yml" | |
configRefresh(1) | |
wait 1 second | |
if {mineplex.config.config} is "{@configver}": | |
broadcast "&9MCR> &7Config &e{@configver} &7is up to date!" | |
else: | |
broadcast "&9Mineplex Core> &7Your Config is not up to Date! Updating this shit for you!" | |
configPopulate(1) | |
broadcast "&9Mineplex Core> &7Config Re-Populated!" | |
broadcast "&9Mineplex Core> &7Going to reload plugin now!" | |
broadcast "&9Mineplex Core> &7Going to reload plugin now!" | |
wait 1 second | |
configRefresh(1) | |
broadcast "&9Mineplex Core> &7Config Done!" | |
if {mineplex.usescoreboard} is not set: | |
set {mineplex.usescoreboard} to true | |
#Main Command/Toggles | |
command /mineplex-core [<string>] [<string>] [<string>]: | |
aliases: /mpcore | |
permission: op | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg-1 is not set: | |
send "&a" | |
send "&9Core Settings> &7Listing Commands:" | |
send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator" | |
send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator" | |
send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator" | |
send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator" | |
send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator" | |
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" | |
send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator" | |
send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator" | |
send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator" | |
send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator" | |
send "&a" | |
else if arg-1 is set: | |
if arg-1 is "help": | |
send "&a" | |
send "&9Core Settings> &7Listing Commands:" | |
send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator" | |
send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator" | |
send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator" | |
send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator" | |
send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator" | |
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" | |
send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator" | |
send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator" | |
send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator" | |
send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator" | |
send "&a" | |
else if arg-1 is "Chat": | |
if arg-2 is not set: | |
send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator" | |
else if arg-2 is set: | |
if arg-2 is "true": | |
set {mineplex.overridechat} to true | |
send "&9Core Settings> &7Now using the Mineplex Chat System (MCS)." | |
else if arg-2 is "false": | |
set {mineplex.overridechat} to false | |
send "&9Core Settings> &7No longer using the Mineplex Chat System (MCS)." | |
else: | |
send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator" | |
else: | |
send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator" | |
else if arg-1 is "Scoreboard": | |
if arg-2 is not set: | |
send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator" | |
else if arg-2 is set: | |
if arg-2 is "true": | |
set {mineplex.usescoreboard} to true | |
send "&9Core Settings> &7Now using the Mineplex Scoreboard System." | |
else if arg-2 is "false": | |
set {mineplex.usescoreboard} to false | |
send "&9Core Settings> &7No longer using the Mineplex Scoreboard System." | |
else: | |
send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator" | |
else: | |
send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator" | |
else if arg-1 is "ForcefieldOff": | |
if arg-2 is not set: | |
send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator" | |
else: | |
delete {mineplex.pref.ff.%arg-2%} | |
delete {mineplex.ff.list::%arg-2%} | |
send "&9MCR> &7Done!" | |
else if arg-1 is "News": | |
if arg-2 is not set: | |
send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator" | |
else if arg-2 is set: | |
if arg-2 is "true": | |
set {mineplex.news.allow} to true | |
send "&9Core Settings> &7Now using the Mineplex News System." | |
else if arg-2 is "false": | |
set {mineplex.news.allow} to false | |
send "&9Core Settings> &7No longer using the Mineplex News System." | |
else: | |
send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator" | |
else: | |
send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator" | |
else if arg-1 is "TNT": | |
if arg-2 is not set: | |
send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator" | |
else if arg-2 is set: | |
if arg-2 is "true": | |
set {mineplex.tntlauncher} to true | |
send "&9Core Settings> &7Now using the Throwing TNT Mechanics." | |
else if arg-2 is "false": | |
set {mineplex.tntlauncher} to false | |
send "&9Core Settings> &7No longer using the Throwing TNT Mechanics." | |
else: | |
send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator" | |
else: | |
send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator" | |
else if arg-1 is "purgehistory": | |
if arg 2 is not set: | |
send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator" | |
else: | |
send "&9MCR> &7Purged %arg-2%'s history" | |
delete {p.%arg-2%::*} | |
delete {punishgui.%arg-2%::*} | |
delete {reversed.p.%arg-2%::history::*} | |
delete {reversed.p.%arg-2%::*} | |
else if arg-1 is "reload": | |
configRefresh(1) | |
send "&9Core Settings> &7The main configuration file has been refreshed." | |
else if arg-1 is "Carl": | |
spawn 1 creeper at location of player | |
set {_carl} to spawned creeper | |
set name of last spawned entity to "&a&lCarl the Creeper" | |
add "{NoAI:1b}" to nbt of {_carl} | |
add "{powered:1}" to nbt of {_carl} | |
apply slowness 255 to last spawned entity for 999 days | |
set {kitnpc} to location of player | |
send "&9Core Settings> &7Carl has been spawned in a fixed position at your current location." | |
else if arg-1 is "admin": | |
if arg-2 is set: | |
set {mineplex.rank.%arg-2%} to "&4&lADMIN " | |
set {_mineplex.setadmin.temp} to arg-2 parsed as player | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to {_mineplex.setadmin.temp}'s permissions | |
add "mineplex.mod" to {_mineplex.setadmin.temp}'s permissions | |
add "mineplex.srmod" to {_mineplex.setadmin.temp}'s permissions | |
add "mineplex.admin" to {_mineplex.setadmin.temp}'s permissions | |
add "mineplex.legend" to {_mineplex.setadmin.temp}'s permissions | |
add "mineplex.builder" to {_mineplex.setadmin.temp}'s permissions | |
updateRankAPI({_mineplex.setadmin.temp}) | |
send "&9Core Settings> &7Temporarily added Admin permissions to %arg-2%." | |
else: | |
send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator" | |
else if arg-1 is "TreasurePoint": | |
if arg-2 is "1" or "2" or "3" or "4": | |
set {mineplex.chestpoint.%arg-2%} to target block | |
send "&9Core Settings> &7Treasure Point %arg-2% has been set to your targeted block." | |
else: | |
send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator" | |
else if arg-1 is "TreasurePointSub": | |
if arg-2 is "1" or "2" or "3" or "4": | |
if arg-3 is "1" or "2" or "3" or "4" or "5" or "6" or "7" or "8": | |
set {mineplex.chestpoint.%arg-2%.sub.%arg-3%} to target block | |
send "&9Core Settings> &7Treasure Point Sub %arg-3% of Treasure Point %arg-2% has been set to your targeted block." | |
else: | |
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" | |
else: | |
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" | |
else: | |
send "&a" | |
send "&9Core Settings> &7Listing Commands:" | |
send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator" | |
send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator" | |
send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator" | |
send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator" | |
send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator" | |
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" | |
send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator" | |
send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator" | |
send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator" | |
send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator" | |
send "&a" | |
command /help [<string>]: | |
aliases: /pleasehelpmeiamgoingtoexplode, /? | |
trigger: | |
send "&9Help> &7Hi there! Need some help?" | |
mcrjson("%player%", "&9> &7Check out ||&eour FAQ for commonly asked questions||ttp:&eClick to visit our FAQ page!||url:%{mineplex.config.website}%/faq") | |
mcrjson("%player%", "&9> &7Read ||&eour rules to avoid being punished!||ttp:&eClick to visit our rules page!||url:%{mineplex.config.website}%/rules") | |
mcrjson("%player%", "&9> &7Want to apply for Trainee? Visit ||&eapply.%{mineplex.config.website}%||ttp:&3Click to visit our forums to learn about Trainee!||url:apply.%{mineplex.config.website}%||&7!") | |
mcrjson("%player%", "&9> &7Question about a purchase? Contact support at ||&e%{mineplex.config.website}%/support||ttp:&eClick to visit our support page!||url:%{mineplex.config.website}%/support||&7!") | |
mcrjson("%player%", "&9> &7Find us on twitter at ||&b@%capitalize first char of each word in last element of {mineplex.config.twitter} split at ""/""%||ttp:&bClick to visit our twitter!||url:%{mineplex.config.twitter}%") | |
mcrjson("%player%", "&9> &7Need help with MCR Commands? ||&eView the MCR Wiki for a list of commands||ttp:&eClick to visit the MCR wiki!||url:https://github.com/MPlexCore/Mineplex-Core/wiki/Commands-and-Permissions||&7!") | |
command /recompile [<string>]: | |
aliases: /rec | |
permission: op | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7will be re-parsing in two seconds." | |
wait 2 second | |
player command "/sk reload Mineplex" | |
else: | |
if arg 1 is "-s": | |
broadcast "&9MCR> &7Mineplex Core will be re-parsing in two seconds. (Silent)" | |
execute console command "/sk reload Mineplex" | |
#Thanks XeXRainnn | |
on quit: | |
delete {mineplex.%player%.notice} | |
command /bugreport [<string>]: | |
trigger: | |
if arg 1 is not set: | |
send "&9MCR> &7Commands List:" | |
send "&f/bugreport <bug> &7Reports a bug to the MCR Developers &fPlayer" | |
else: | |
if {mineplex.%player%.notice} is not set: | |
send "&9MCR> &7Abuse of this system will result in a blacklist of this feature! If you are sure about reporting this, repeat the command." | |
set {mineplex.%player%.notice} to true | |
stop | |
set {_pl} to "%list of plugins%" | |
replace all " and " with ",+" in {_pl} | |
replace all " " with "" in {_pl} | |
replace all ", " with ",++" in {_pl} | |
set {_ra} to arg-1 | |
replace all "`" with "" in {_ra} | |
replace all "*" with "" in {_ra} | |
replace all " " with "%%20" in {_ra} | |
set {_mc} to minecraft version | |
set {_sk} to skript version | |
set {_bk} to bukkit version | |
set {_mcr} to "{@MCRVER}" | |
set {_url} to uncolored "http://mpcore.us/mcr/bugreport.php?plugins=%{_pl}%&&rmcver=%{_mc}%&&rskver=%{_sk}%&&rbukkit=%{_bk}%&&rplayer=%player%&&rbug=%{_ra}%&&rmcrver=%{_mcr}%" | |
$ thread | |
set {_response::*} to contents from url {_url} | |
send "&9MCR> &7Please Wait!" | |
wait 5 seconds | |
if {_response::1} is "600": | |
send "&9MCR> &7Bug Report was &eSuccessful&7!" | |
else if {_response::1} contains "602": | |
set {_thing} to {_response::1} | |
replace all "602 " with "" in {_thing} | |
send "&9MCR> &7Bug Report was marked as &eInvalid&7!" | |
send "&9MCR> &7Bug Report returned the error: &e%{_thing}%&7!" | |
else if {_response::1} contains "603": | |
set {_thing} to {_response::1} | |
replace all "603 " with "" in {_thing} | |
send "&9MCR> &c&lYou are blacklisted from the bug report system!" | |
send "&9MCR> &7&lReason: &7%{_thing}%" | |
else if {_response::1} contains "604": | |
set {_thing} to {_response::1} | |
replace all "604 " with "" in {_thing} | |
send "&9MCR> &7Bug Report returned a diffrent response: &e%{_thing}%" | |
else if {_response::1} is not set: | |
send "&9MCR> &7The bug report was malformed and we did not get a response!" | |
command /rules: | |
trigger: | |
send "&9Rules> &7The rules can be found here: &a%{mineplex.config.ruleswebsite}%" | |
#CarlBae | |
on load: | |
if {poll.id.last} is not set: | |
set {poll.id.last} to 0 | |
on join: | |
set {_player} to "%player%" | |
replace all "s" in {_player} with "sssss" | |
send "&2&lCarl the Creeper> &aHey %{_player}%! I have sssome amazing rewardsss for you! Come sssee me!" | |
if {mineplex.tickets.%player%} is not set: | |
set {mineplex.tickets.%player%} to 0 | |
if {mineplex.polltaken.0.%player%} is not set: | |
set {mineplex.polltaken.0.%player%} to true | |
if {mineplex.thankrewards.%player%} is not set: | |
set {mineplex.thankrewards.%player%} to 0 | |
command /thank [<offline player>]: | |
trigger: | |
if arg 1 is set: | |
if arg 1 is player: | |
send "&9Thank> &7You cannot thank yourself!" | |
else: | |
if arg 1 is online: | |
if {mineplex.thank.last.%player%} is not set: | |
set {_good} to true | |
else: | |
set {_t} to difference between {mineplex.thank.last.%player%} and now | |
set {_tc} to "24 hours" parsed as a timespan | |
if {_t} is more than {_tc}: | |
set {_good} to true | |
if {_good} is true: | |
send "&9Thank> &7You thanked &e%arg-1% &7and earned &b5 Treasure Shards&7!" | |
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 | |
addShards(player, 5) | |
add 5 to {mineplex.thankrewards.%arg-1%} | |
set {mineplex.thank.last.%player%} to now | |
else: | |
send "&9Thank> &7You can only /thank once per day!" | |
stop | |
else: | |
send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]." | |
else: | |
send "&9Thank> &7Usage: &e/thank <player>" | |
function carlSpinNew(p: player) :: text: | |
open chest with 3 rows named "&8Carl's Spinner" to {_p} | |
loop (random integer between 5 and 10) times: | |
add prismarine shard named "&bTreasure Shards" to {_roll::*} | |
loop (random integer between 5 and 22) times: | |
add emerald named "&fGems" to {_roll::*} | |
loop (random integer between 1 and 10) times: | |
add firework rocket named "&fFireworks" to {_roll::*} | |
loop (random integer between 1 and 10) times: | |
add ender pearl named "&fEthereal Pearls" to {_roll::*} | |
loop (random integer between 1 and 10) times: | |
add tripwire hook named "&fFlesh Hooks" to {_roll::*} | |
loop (random integer between 1 and 10) times: | |
add iron horse armor named "&fBat Blasters" to {_roll::*} | |
loop (random integer between 1 and 10) times: | |
add gold horse armor named "&fPaintball Guns" to {_roll::*} | |
add leather named "&dCow Morph" to {_roll::*} | |
add nether star named "&cTitan Rank" to {_roll::*} | |
set {_speedFinal} to 3 | |
set {_Selector1} to 4 | |
loop (random integer between 31 and 60) times: | |
if inventory name of {_p}'s current inventory is not "&8Carl's Spinner": | |
stop | |
set {_sel} to 21 | |
loop {_sel} times: | |
set {_sel2} to {_sel} - 1 | |
set {_item::%{_sel}%} to {_item::%{_sel2}%} | |
subtract 1 from {_sel} | |
set {_item::1} to a random element out of {_roll::*} | |
loop integers between 0 and inventory size of {_p}'s current inventory - 1: | |
if loop-number-2 is {_Selector1}: | |
set slot loop-number-2 of {_p}'s current inventory to hopper named " " | |
loop 9 times: | |
set slot 8 + loop-number-3 of {_p}'s current inventory to {_item::%loop-number-3%} | |
set slot loop-number-2 of {_p}'s current inventory to gray stained glass pane named " " | |
if "%{_item::%loop-number-3%}%" is "prismarine shard": | |
set slot 17 + loop-number-3 of {_p}'s current inventory to light blue stained glass pane named " " | |
set slot -1 + loop-number-3 of {_p}'s current inventory to light blue stained glass pane named " " | |
if "%{_item::%loop-number-3%}%" is "nether star": | |
set slot 17 + loop-number-3 of {_p}'s current inventory to red stained glass pane named " " | |
set slot -1 + loop-number-3 of {_p}'s current inventory to red stained glass pane named " " | |
if "%{_item::%loop-number-3%}%" is "leather": | |
set slot 17 + loop-number-3 of {_p}'s current inventory to magenta stained glass pane named " " | |
set slot -1 + loop-number-3 of {_p}'s current inventory to magenta stained glass pane named " " | |
set slot 4 of {_p}'s current inventory to hopper named " " | |
add 1 to {_sound} | |
if {_sound} > 3: | |
set {_sound} to 1 | |
if {_sound} = 1: | |
play sound "NOTE_PLING" to {_p} with volume 1 and pitch 15 | |
else if {_sound} = 2: | |
play sound "NOTE_PLING" to {_p} with volume 1 and pitch 15 | |
else if {_sound} = 3: | |
play sound "NOTE_PLING" to {_p} with volume 1 and pitch 15 | |
add 1 to {_speed} | |
if {_speed} is 5: | |
set {_speed} to 0 | |
add 1 to {_speedFinal} | |
loop {_speedFinal} times: | |
wait a tick | |
set {_wonItem} to slot 13 of {_p}'s current inventory | |
set {_slotFill} to gray stained glass pane with name " " | |
if {_wonItem} is a emerald: | |
set {_add} to random integer between 5 and 20 | |
addGems({_p}, {_add}) | |
message "&9Carl's Spinner> &7You won &f%{_add}% Gems" to {_p} | |
if {_wonItem} is a ender pearl: | |
set {_add} to random integer between 5 and 20 | |
add {_add} to {mineplex.cosmetics.pearls.%{_p}%} | |
message "&9Carl's Spinner> &7You won &f%{_add}% Ethereal Pearls" to {_p} | |
if {_wonItem} is a firework rocket: | |
set {_add} to random integer between 5 and 20 | |
add {_add} to {mineplex.cosmetics.firework.%{_p}%} | |
message "&9Carl's Spinner> &7You won &f%{_add}% Fireworks" to {_p} | |
if {_wonItem} is a iron horse armor: | |
set {_add} to random integer between 5 and 20 | |
add {_add} to {mineplex.cosmetics.blaster.%{_p}%} | |
message "&9Carl's Spinner> &7You won &f%{_add}% Bat Blasters" to {_p} | |
if {_wonItem} is a gold horse armor: | |
set {_add} to random integer between 5 and 20 | |
add {_add} to {mineplex.cosmetics.paintball.%{_p}%} | |
message "&9Carl's Spinner> &7You won &f%{_add}% Paintball Guns" to {_p} | |
if {_wonItem} is a tripwire hook: | |
set {_add} to random integer between 5 and 20 | |
add {_add} to {mineplex.cosmetics.hook.%{_p}%} | |
message "&9Carl's Spinner> &7You won &f%{_add}% Flesh Hooks" to {_p} | |
if {_wonItem} is a prismarine shard: | |
set {_add} to random integer between 5 and 20 | |
addShards({_p}, {_add}) | |
message "&9Carl's Spinner> &7You won &b%{_add}% Shards" to {_p} | |
set {_slotFill} to light blue stained glass pane with name " " | |
if {_wonItem} is leather: | |
message "&9Carl's Spinner> &7You won &dCow Morph" to {_p} | |
set {_slotFill} to magenta stained glass pane with name " " | |
if {_wonItem} is nether star: | |
message "&9Carl's Spinner> &7You won &cTitan Rank" to {_p} | |
set {_slotFill} to red stained glass pane with name " " | |
execute console command "/rank %{_p}% TITAN" | |
set {_slot} to 5 | |
loop 5 times: | |
if inventory name of {_p}'s current inventory is not "&8Carl's Spinner": | |
stop | |
set slot 17 + {_slot} of {_p}'s current inventory to {_slotFill} | |
set slot -1 + {_slot} of {_p}'s current inventory to {_slotFill} | |
set slot 8 + {_slot} of {_p}'s current inventory to {_slotFill} | |
set slot 9 - {_slot} of {_p}'s current inventory to {_slotFill} | |
set slot 18 - {_slot} of {_p}'s current inventory to {_slotFill} | |
set slot 27 - {_slot} of {_p}'s current inventory to {_slotFill} | |
set slot 13 of {_p}'s current inventory to {_wonItem} | |
remove 1 from {_slot} | |
wait 1 second | |
function reqSpin(p: player) :: text: | |
if {mineplex.tickets.%{_p}%} is bigger than 0: | |
wait 2 ticks | |
carlSpinNew({_p}) | |
remove 1 from {mineplex.tickets.%{_p}%} | |
else: | |
message "&9Carl's Spinner> &7A Unknown Error has occured." to {_p} | |
function carlSpin(p: player) :: number: | |
if {mineplex.tickets.%{_p}%} >= 1: | |
remove 1 from {mineplex.tickets.%{_p}%} | |
wait 5 ticks | |
open chest with 3 rows named "Carl's Spinner" to {_p} | |
set {opener.%{_p}%} to true | |
loop 30 times: | |
inventory name of {_p}'s current inventory is "Carl's Spinner" | |
play "NOTE_PLING" to {_p} at volume 0.5 | |
format slot 0 of {_p} with white stained glass pane to be unstealable | |
format slot 1 of {_p} with white glass to be unstealable | |
format slot 2 of {_p} with white glass to be unstealable | |
format slot 3 of {_p} with white glass to be unstealable | |
format slot 4 of {_p} with hopper to be unstealable | |
format slot 5 of {_p} with white glass to be unstealable | |
format slot 6 of {_p} with white glass to be unstealable | |
format slot 7 of {_p} with white glass to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint1.%{_p}%} to random integer between 95 and 375 | |
format slot 9 of {_p} with prismarine shard named "&b%{_randomint1.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint2.%{_p}%} to random integer between 95 and 375 | |
format slot 10 of {_p} with prismarine shard named "&b%{_randomint2.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint3.%{_p}%} to random integer between 95 and 375 | |
format slot 11 of {_p} with prismarine shard named "&b%{_randomint3.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint4.%{_p}%} to random integer between 95 and 375 | |
format slot 12 of {_p} with prismarine shard named "&b%{_randomint4.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint5.%{_p}%} to random integer between 95 and 375 | |
format slot 13 of {_p} with prismarine shard named "&b%{_randomint5.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint6.%{_p}%} to random integer between 95 and 375 | |
format slot 14 of {_p} with prismarine shard named "&b%{_randomint6.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint7.%{_p}%} to random integer between 95 and 375 | |
format slot 15 of {_p} with prismarine shard named "&b%{_randomint7.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint8.%{_p}%} to random integer between 95 and 375 | |
format slot 16 of {_p} with prismarine shard named "&b%{_randomint8.%{_p}%}% Shards" to be unstealable | |
format slot 8 of {_p} with white stained glass pane to be unstealable | |
set {_randomint9.%{_p}%} to random integer between 95 and 375 | |
format slot 17 of {_p} with prismarine shard named "&b%{_randomint9.%{_p}%}% Shards" to be unstealable | |
format slot 18 of {_p} with white stained glass pane to be unstealable | |
format slot 19 of {_p} with white glass to be unstealable | |
format slot 20 of {_p} with white glass to be unstealable | |
format slot 21 of {_p} with white glass to be unstealable | |
format slot 22 of {_p} with white glass to be unstealable | |
format slot 23 of {_p} with white glass to be unstealable | |
format slot 24 of {_p} with white glass to be unstealable | |
format slot 25 of {_p} with white glass to be unstealable | |
format slot 26 of {_p} with white stained glass pane to be unstealable | |
delete {_randomint1.%{_p}%} | |
delete {_randomint2.%{_p}%} | |
delete {_randomint3.%{_p}%} | |
delete {_randomint4.%{_p}%} | |
delete {_randomint6.%{_p}%} | |
delete {_randomint7.%{_p}%} | |
delete {_randomint8.%{_p}%} | |
delete {_randomint9.%{_p}%} | |
wait 0.2 seconds | |
send "&9Carl> &7You won &b%{_randomint5.%{_p}%}% Shards!" to {_p} | |
addShards({_p}, {_randomint5.%{_p}%}) | |
wait 3 ticks | |
delete {_randomint5.%{_p}%} | |
delete {opener.%{_p}%} | |
wait 1 second | |
close {_p}'s inventory | |
else: | |
send "&9Carl's Spinner> &7You don't have a Carl Spinner Ticket!" to {_p} | |
function ytlink(p: player) :: number: | |
set {_t} to difference between {carl.ytr.%{_p}%} and now | |
set {_tc} to "1 day" parsed as a timespan | |
if {_t} is less than {_tc}: | |
message "&6&m=====================================" to {_p} | |
message "&b &f" to {_p} | |
message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p} | |
message " &a%{mineplex.config.youtube}%" to {_p} | |
message "&b &f" to {_p} | |
message "&6&m=====================================" to {_p} | |
stop | |
else: | |
set {carl.ytr.%{_p}%} to now | |
addShards({_p}, 250) | |
message "&6&m=====================================" to {_p} | |
message "&b &f" to {_p} | |
message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p} | |
message " &a%{mineplex.config.youtube}%" to {_p} | |
message "&b &f" to {_p} | |
message "&6&m=====================================" to {_p} | |
wait 60 seconds | |
message "&9Carl> &7Rewarded 250 Shards for watching the YouTube Video" to {_p} | |
function tlink(p: player) :: number: | |
message "&6&m=====================================" to {_p} | |
message "&b &f" to {_p} | |
message " &f&lClick to Open in Web Browser" to {_p} | |
message " &a%{mineplex.config.twitter}%" to {_p} | |
message "&b &f" to {_p} | |
message "&6&m=====================================" to {_p} | |
function dailyr(p: player) :: number: | |
set {_t} to difference between {carl.dr.%{_p}%} and now | |
set {_tc} to "20 hours" parsed as a timespan | |
if {_t} is less than {_tc}: | |
message "&9Carl> &7Come back in another 24 hours." to {_p} | |
stop | |
else: | |
message "&9Carl> &7Rewarded &e100 Treasure Shards" to {_p} | |
message "&9Carl> &7Rewarded &e100 Gems" to {_p} | |
message "&9Carl> &7Rewarded &e250 Experience" to {_p} | |
set {carl.dr.%{_p}%} to now | |
addShards({_p}, 100) | |
addGems({_p}, 100) | |
set {_cur} to getPlayerdata({_p}, "stats.global.dailyr") parsed as a number | |
add 1 to {_cur} | |
setPlayerdata({_p}, "stats.global.dailyr", "%{_cur}%") | |
function rawVote(p: player , v: number) :: number: | |
add 1 to {mineplex.poll.results.%{_v}%.%{poll.id.last}%} | |
set {mineplex.polltaken.%{poll.id.last}%.%{_p}%} to true | |
addGems({_p}, {mineplex.poll.gems.%{poll.id.last}%}) | |
message "&9Carl> &7Rewarded &a%{mineplex.poll.gems.%{poll.id.last}%}% Gems&7." to {_p} | |
function pollVote(p: player) :: number: | |
open chest with 6 rows named "Poll:" to {_p} | |
wait 2 ticks | |
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 | |
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)] | |
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)] | |
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)] | |
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)] | |
function claimThank(p: player) :: number: | |
set {_am} to {mineplex.thankrewards.%{_p}%} | |
set {_tp} to {_am} / 5 | |
send "&9Carl> &7You collected &b%{_am}% Treasure Shards &7from &e%{_tp}% &7players!" to {_p} | |
set {mineplex.thankrewards.%{_p}%} to 0 | |
set {_get} to getPlayerdata({_p}, "shards") | |
set {_cur} to {_get} parsed as a number | |
add {_am} to {_cur} | |
setPlayerdata({_p}, "shards", "%{_cur}%") | |
on inventory click: | |
if inventory name of player's current inventory is "Carl's Spinner": | |
cancel event | |
close player's inventory | |
#Dank as all heck | |
function carlGUI(p: player) :: number: | |
open chest with 6 rows named "%{_p}%'s Bonuses" to {_p} | |
wait 2 ticks | |
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 | |
set {_t} to difference between {carl.dr.%{_p}%} and now | |
set {_tc} to "20 hours" parsed as a timespan | |
set {_mc} to {_tc} - {_t} | |
set {_st} to "%{_t}%" | |
set {_args::*} to {_st} split at " " | |
set {_num1} to "%{_args::1}%" parsed as an int | |
set {_num2} to 1200 | |
set {_num3} to {_num2} - {_num1} | |
set {_hourconvert} to {_num3} / 60 | |
set {_finalwait} to "%{_hourconvert}% hours" | |
if {_t} is less than {_tc}: | |
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 | |
else: | |
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})] | |
format slot 14 of {_p} with creeper head named "&c&lCarl's Spinner" with lore "||&fYou need a Carl Spin Ticket to Spin||&b||&eYour Tickets: &f%{mineplex.tickets.%{_p}%}%" to close then run [reqSpin({_p})] | |
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 | |
format slot 20 of {_p} with water bucket named "&e&lVisit us on Facebook" with lore "||&eRewards|| &f10 Ancient Chest" to close | |
set {_t} to difference between {carl.ytr.%{_p}%} and now | |
set {_tc} to "1 day" parsed as a timespan | |
if {_t} is less than {_tc}: | |
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})] | |
else: | |
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})] | |
if {mineplex.polltaken.%{poll.id.last}%.%{_p}%} is set: | |
format slot 28 of {_p} with redstone block named "&cVote on Poll" with lore "||&fYou voted on all of the polls!" to close | |
else: | |
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})] | |
if {mineplex.thankrewards.%{_p}%} is greater than 0: | |
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})] | |
else: | |
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 | |
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 | |
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})] | |
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 | |
command /poll [<text>] [<text>] [<text>] [<text>] [<text>] [<text>] [<integer>] [<string>]: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is set: | |
if arg 1 is "create": | |
if arg 2 is set: | |
if arg 3 is set: | |
if arg 4 is set: | |
if arg 5 is set: | |
if arg 6 is set: | |
if arg 7 is set: | |
add 1 to {poll.id.last} | |
send "&9Poll> &7Rolling out poll with id &e%{poll.id.last}%&7!" | |
wait 1 second | |
set {_arg1} to arg 2 | |
set {_arg2} to arg 3 | |
set {_arg3} to arg 4 | |
set {_arg4} to arg 5 | |
set {_arg5} to arg 6 | |
set {mineplex.poll.gems.%{poll.id.last}%} to "%arg 7%" parsed as an integer | |
replace every "_" with " " in {_arg1} | |
replace every "_" with " " in {_arg2} | |
replace every "_" with " " in {_arg3} | |
replace every "_" with " " in {_arg4} | |
replace every "_" with " " in {_arg5} | |
broadcast "&9Poll> &7A new poll is available! Vote in Carl!" | |
wait 0.5 seconds | |
send "&9Poll> &7The poll has been rolled out successfully!" | |
set {mineplex.poll.question.%{poll.id.last}%} to {_arg1} | |
set {mineplex.poll.a1.%{poll.id.last}%} to {_arg2} | |
set {mineplex.poll.a2.%{poll.id.last}%} to {_arg3} | |
set {mineplex.poll.a3.%{poll.id.last}%} to {_arg4} | |
set {mineplex.poll.a4.%{poll.id.last}%} to {_arg5} | |
set {mineplex.poll.results.1.%{poll.id.last}%} to 0 | |
set {mineplex.poll.results.2.%{poll.id.last}%} to 0 | |
set {mineplex.poll.results.3.%{poll.id.last}%} to 0 | |
set {mineplex.poll.results.4.%{poll.id.last}%} to 0 | |
else: | |
send "&9Poll> &7Correct Usage:" | |
send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin" | |
send "&4/poll results [(id)] Admin" | |
send "" | |
send "&9Poll> &7Example:" | |
send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111 Admin" | |
else: | |
send "&9Poll> &7Correct Usage:" | |
send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin" | |
send "&4/poll results [(id)] Admin" | |
send "" | |
send "&9Poll> &7Example:" | |
send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111" | |
else: | |
send "&9Poll> &7Correct Usage:" | |
send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin" | |
send "&4/poll results [(id)] Admin" | |
send "" | |
send "&9Poll> &7Example:" | |
send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111" | |
else: | |
send "&9Poll> &7Correct Usage:" | |
send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin" | |
send "&4/poll results [(id)] Admin" | |
send "" | |
send "&9Poll> &7Example:" | |
send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111" | |
else: | |
send "&9Poll> &7Correct Usage:" | |
send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin" | |
send "&4/poll results [(id)] Admin" | |
send "" | |
send "&9Poll> &7Example:" | |
send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111" | |
else: | |
send "&9Poll> &7Correct Usage:" | |
send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin" | |
send "&4/poll results [(id)] Admin" | |
send "" | |
send "&9Poll> &7Example:" | |
send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111" | |
else if arg 1 is "results": | |
if player has permission "mineplex.admin": | |
if arg 2 is not set: | |
open chest with 5 row named "Poll Results" to player | |
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 | |
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 | |
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 | |
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 | |
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 | |
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 | |
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 | |
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 | |
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 | |
else: | |
set {_id} to arg-2 parsed as a number | |
if {_id} is 0: | |
send "&9Poll> &cInvalid Poll ID!" | |
stop | |
if {_id} is greater than {poll.id.last}: | |
send "&9Poll> &cInvalid Poll ID!" | |
stop | |
if {_id} is not set: | |
send "&9Poll> &cInvalid Poll ID!" | |
stop | |
open chest with 5 row named "Poll Results" to player | |
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 | |
format slot 19 of player with book named "&b&lOption 1" with lore "&eAnswer 1:|| &f%{mineplex.poll.a1.%{_id}%}%" to be unstealable | |
format slot 21 of player with book named "&b&lOption 2" with lore "&eAnswer 2:|| &f%{mineplex.poll.a2.%{_id}%}%" to be unstealable | |
format slot 23 of player with book named "&b&lOption 3" with lore "&eAnswer 3:|| &f%{mineplex.poll.a3.%{_id}%}%" to be unstealable | |
format slot 25 of player with book named "&b&lOption 4" with lore "&eAnswer 4:|| &f%{mineplex.poll.a4.%{_id}%}%" to be unstealable | |
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 | |
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 | |
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 | |
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 | |
else: | |
send "&9Permissions> &7You do not have permission to do that." | |
else: | |
send "&9Poll> &7Correct Usage:" | |
send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4 (Gem Reward) Admin" | |
send "&4/poll results [(id)] Admin" | |
send "" | |
send "&9Poll> &7Example:" | |
send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111" | |
command /fixanimation: | |
permission: mineplex.dev | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
loop all entities: | |
if name of loop-entity is "&a&lCarl the Creeper": | |
set {_e1} to loop-entity | |
exit loop | |
add "{NoAI:0b}" to nbt of {_e1} | |
teleport {_e1} 100 meters below {_e1} | |
kill {_e1} | |
command /animation: | |
permission: mineplex.dev | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
loop all entities: | |
if name of loop-entity is "&a&lCarl the Creeper": | |
set {_e1} to loop-entity | |
exit loop | |
set {_loc} to location of {_e1} | |
add "{Fuse:999}" to nbt of {_e1} | |
add "{ignited:1}" to nbt of {_e1} | |
wait 1 second | |
loop all players: | |
show 1 "Explosion Huge" particles at {_loc} for loop-player | |
play raw sound "random.explode1" at {_e1} with pitch 1 volume 10 | |
play raw sound "random.explode" at {_e1} with pitch 1 volume 10 | |
wait 0.6 seconds | |
spawn 1 creeper at location of {_e1} | |
add "{NoAI:0b}" to nbt of {_e1} | |
teleport {_e1} 100 meters below {_e1} | |
kill {_e1} | |
set {_carl} to spawned creeper | |
set name of last spawned entity to "&a&lCarl the Creeper" | |
add "{NoAI:1b}" to nbt of {_carl} | |
add "{powered:1}" to nbt of {_carl} | |
apply slowness 255 to last spawned entity for 999 days | |
every 2 minutes: | |
execute console command "/animation" #Sue me | |
command /ticket [<offline player>] [<string>] [<string>]: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg-1 is set: | |
if arg-2 is set: | |
set {_int} to arg-2 parsed as an int | |
if {_int} is an int: | |
send "&9Tickets> &7You gave &e%arg-2% &7Carl spin tickets to &e%arg-1%" to sender | |
send "&9Tickets> &7You recieved &e%arg 2% &7Carl spin tickets" to arg 1 | |
add {_int} to {mineplex.tickets.%arg-1%} | |
else: | |
send "&9Tickets> &7Listing Commands" | |
send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin" | |
else: | |
send "&9Tickets> &7Listing Commands" | |
send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin" | |
else: | |
send "&9Tickets> &7Listing Commands" | |
send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin" | |
on inventory close: | |
if {opener.%player%} is true: | |
wait 2 ticks | |
open chest with 3 rows named "Carl's Spinner" to player | |
every second: | |
loop all entities: | |
name of loop-entity contains "&a&lCarl the Creeper" | |
teleport loop-entity to {kitnpc} | |
on damage: | |
name of victim contains "&a&lCarl the Creeper" | |
cancel event | |
on right click on entity: | |
if player's tool is a chest: | |
if name of player's tool is "&aCosmetic Menu": | |
stop | |
else: | |
send "&9MCR> &e##BlameWheezy" | |
else: | |
name of clicked entity contains "&a&lCarl the Creeper" | |
if {nospam.%player%} is true: | |
stop | |
else: | |
set {nospam.%player%} to true | |
carlGUI(player) | |
wait 1 second | |
set {nospam.%player%} to false | |
on death: | |
set {nospam.%victim%} to false | |
on join: | |
set {nospam.%player%} to false | |
#Broadcast System | |
every 10 seconds: | |
$ thread | |
set {_check} to line 1 from url "https://pastebin.com/raw/8YXXWuiA" | |
if {mineplex.globalannounce.%{_check}%} is not set: | |
set {mineplex.globalannounce.%{_check}%} to true | |
$ thread | |
set {_message} to line 1 from url "https://pastebin.com/raw/fGAUXi37" | |
send all players title "&eMCR Announcement" with subtitle "&f%{_message}%" for 10 seconds | |
broadcast "&9MCR Announcement> &b%{_message}%" | |
#Titles | |
function createTitle(arg1: player , arg2: text) :: number: | |
set {_tploc} to location of {_arg1} | |
add 1.6 to y-coordinate of {_tploc} | |
spawn a armor stand at {_tploc} | |
teleport {%{_arg1}%.title} to {_tploc} | |
set {%{_arg1}%.title} to the last spawned entity | |
set metadata value "titleOwner" of last spawned entity to "%{_arg1}%" | |
add "{CustomName:""%{_arg2}%""}" to nbt of last spawned entity | |
add "{NoGravity:1}" to nbt of last spawned entity | |
add "{CustomNameVisible:1}" to nbt of last spawned entity | |
add "{PersistenceRequired:1}" to nbt of last spawned entity | |
add "{Invisible:1}" to nbt of last spawned entity | |
add "{Marker:1}" to nbt of last spawned entity | |
set {title.%{_arg1}%.active} to true | |
set {_tploc} to location of {_arg1} | |
add 1.6 to y-coordinate of {_tploc} | |
teleport {%{_arg1}%.title} to {_tploc} | |
function removeTitle(arg1: player) :: number: | |
if {title.%{_arg1}%.active} is true: | |
kill {%{_arg1}%.title} | |
set {title.%{_arg1}%.active} to false | |
delete {%{_arg1}%.title} | |
set {_void} to location of {_arg1} | |
remove 256 from y-coordinate of {_void} | |
loop all entities: | |
if metadata value "titleOwner" of loop-entity is "%{_arg1}%": | |
add "{NoGravity:0}" to nbt of loop-entity | |
teleport loop-entity to {_void} | |
set {title.%{_arg1}%.active} to false | |
wait 4 ticks | |
delete {%{_arg1}%.title} | |
else: | |
message "[TitleAPI] Error:" to console | |
message "[TitleAPI] %{_arg1}% has no title active" to console | |
stop | |
on any move: | |
if {title.%player%.active} is true: | |
set {_tploc} to location of player | |
add 1.6 to y-coordinate of {_tploc} | |
teleport {%player%.title} to {_tploc} | |
on any move: | |
if {title.%player%.active} is true: | |
push {%player%.title} forwards | |
set {_tploc} to location of player | |
add 1.6 to y-coordinate of {_tploc} | |
teleport {%player%.title} to {_tploc} | |
make {%player%.title} home towards player | |
push {%player%.title} forwards | |
command /createtitle [<player>] [<text>]: | |
permission: mineplex.dev | |
trigger: | |
set {_txt} to colored arg 2 | |
removeTitle(arg 1) | |
message "&9Titles> &7Generating title, please wait..." | |
wait 5 ticks | |
createTitle(arg 1, "%{_txt}%") | |
message "&9Titles> &7Title &e%{_txt}% &7Generated." | |
#protocol hide {_e1} from loop-player | |
on quit: | |
removeTitle(player) | |
command /removeTitle [<player>]: | |
trigger: | |
removeTitle(arg-1) | |
function trackDB(p: player , t: string) :: string: | |
if {_t} is "aprilfools-2017": | |
set {_r} to "&5&k?&d 2017 April Fools &5&k?" | |
if {_t} is "holiday-cheer": | |
set {_r} to "&c&k?&c Has Santa's Number &c&k?" | |
if {_t} is "treasure-hunter": | |
set {_r} to "&c&k?&c Master Treasure Hunter &c&k?" | |
if {_t} is "leveler": | |
set {_r} to "&c&k?&c Friend of Douglas &c&k?" | |
if {_t} is "lucky": | |
set {_r} to "&c&k?&c Hashtag Blessed &c&k?" | |
if {_t} is "mineplex-mastery": | |
set {_r} to "&c&k?&c Mineplex Master &c&k?" | |
if {_t} is "party-animal": | |
set {_r} to "&c&k?&c Life is a Party &c&k?" | |
if {_t} is "peaceful": | |
set {_r} to "&c&k?&c Pacifist &c&k?" | |
if {_t} is "perfectionist": | |
set {_r} to "&c&k?&c Doer of Things &c&k?" | |
if {_t} is "power-play": | |
if {mineplex.ppc.%{_p}%} is set: | |
set {_r} to "&b&k?&b Power Play Club &b&k?" | |
else: | |
return "perm" | |
if {_t} is "sweet-tooth": | |
set {_r} to "&c&k?&c Candy Addict &c&k?" | |
if {_t} is "unlucky": | |
set {_r} to "&c&k?&c Things Don't Go My Way &c&k?" | |
if {_t} is "warrior": | |
set {_r} to "&c&k?&c Champion &c&k?" | |
if {_t} is "gotta-go": | |
set {_r} to "&6┬┴┬┴┤(・_├┬┴┬┴)" | |
if {_t} is "santas-helper": | |
set {_r} to "&c&l&ka&r &f&lSanta's Helper &r&c&l&ka" | |
if {_t} is "staff-trainee": | |
if {p} has permission "mineplex.trainee": | |
set {_r} to "&6&kK&r &6Choo Choo &kK" | |
else: | |
return "perm" | |
if {_t} is "staff-moderator": | |
if {p} has permission "mineplex.mod": | |
set {_r} to "&6&kK&r &6My name isn't mod &kK" | |
else: | |
return "perm" | |
if {_t} is "staff-sr_moderator": | |
if {p} has permission "mineplex.srmod": | |
set {_r} to "&6&kK&r &6My Team's the Best Team &kK" | |
else: | |
return "perm" | |
if {_t} is "staff-leader": | |
if {_p} has permission "mineplex.leader": | |
set {_r} to "&c&kK&4 What's a leader? &c&kK" | |
else: | |
return "perm" | |
if {_t} is "mcr-patreon": | |
if {_p} is "WheezyGold7931" : | |
set {_r} to "&6&kK&c&l MCR Patreon &6&kK" | |
else: | |
return "perm" | |
if {_t} is "mcr-staff": | |
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": | |
set {_r} to "&6&kK&6&l MCR Staff &6&kK" | |
else: | |
return "perm" | |
if {_t} is "mcr-dev": | |
if {_p} is "WheezyGold7931" or "TheSkripterDK" or "Torksi" or "ItzRenderman": | |
set {_r} to "&6&kK&c&l MCR Dev &6&kK" | |
else: | |
return "perm" | |
if {_t} is "mcr-headcouncil": | |
if {_p} is "WheezyGold7931" or "NaiculS" or "Drawfull" or "Keyloren" or "Torksi" or "Mike70387": | |
set {_r} to "&6&kK&4&l MCR Head Council &6&kK" | |
else: | |
return "perm" | |
if {_t} is "mcr-creator": | |
if {_p} is "WheezyGold7931": | |
set {_r} to "&6&kK&d&l MCR Creator &6&kK" | |
else: | |
return "perm" | |
if {_r} is not set: | |
set {_r} to "false" | |
return {_r} | |
command /track [<string>] [<string>]: | |
trigger: | |
if {mineplex.track.%player%} is set: | |
send "&9Track> &7You have disabled your active track" | |
removeTitle(player) | |
delete {mineplex.track.%player%} | |
else: | |
if arg 1 is not set: | |
send "&9Track> &7You must specify the ID of a track to enable" | |
else: | |
set {_track} to trackDB(player, arg-1) | |
if {_track} is "false": | |
send "&9Track> &7That is not a valid track" | |
stop | |
if {_track} is "perm": | |
send "&9Track> &7You have not unlocked any tiers on that track" | |
stop | |
removeTitle(player) | |
wait 5 ticks | |
createTitle(player, {_track}) | |
send "&9Track> &7Your active track has been updated to %{_track}%" | |
set {mineplex.track.%player%} to {_track} | |
#Cosmetics | |
on join: | |
message "&9Cosmetics> &7You enabled all Previously enabled Cosmetics" to player | |
command /chestmeup: | |
trigger: | |
give player chest named "&aCosmetic Menu" | |
function mountapi(p: player, action: text, type: text) :: number: | |
if {_action} is "remove": | |
set {_loc} to {_p}'s location | |
add -100000 to y-coordinate of {_loc} | |
teleport {currentmount.%{_p}%} to {_loc} | |
delete {currentmount.%{_p}%} | |
message "&9Mount> &7Despawned &e%{currentmount.%{_p}%.type}%" to {_p} | |
set {currentmount.%{_p}%.type} to "None" | |
if {_action} is "create": | |
if {_type} is "slime": | |
if {currentmount.%{_p}%} is set: | |
message "&9MountAPI> &6[WARN] &7%{_p}% already has a mount active. The Action has been canceled." to console | |
stop | |
spawn a slime at {_p} | |
set {currentmount.%{_p}%} to the last spawned entity | |
add "{CustomName:""%{_p}%'s Slime""}" to nbt of last spawned entity | |
add "{CustomNameVisible:1}" to nbt of last spawned entity | |
add "{PersistenceRequired:1}" to nbt of last spawned entity | |
add "{Size:1}" to nbt of last spawned entity | |
add "{Attributes:{Name:generic.attackDamage,Base:0},[{Name:generic.followRange,Base:0}]}" to nbt of last spawned entity | |
add "{ActiveEffects:[{Id:18,Amplifier:255,Duration:19999980,ShowParticles:0b}]}" to nbt of last spawned entity | |
set {currentmount.%{_p}%.type} to "Slime Mount" | |
while {currentmount.%{_p}%} is alive: | |
wait 15 ticks | |
{_p} is online | |
if distance between {currentmount.%{_p}%} and {_p} is less than 5: | |
make {currentmount.%{_p}%} pathfind to {_p} with speed 1 | |
else if distance between {currentmount.%{_p}%} and {_p} is more than 15: | |
teleport {currentmount.%{_p}%} to {_p} | |
else: | |
make {currentmount.%{_p}%} pathfind to {_p} with speed 2 | |
function cosmetic_system(arg1: text , arg2: text , p: player) :: number: | |
set {_wither} to "MHF_WSkeleton" parsed as a player | |
if {_arg1} is "menu": | |
if {_arg2} is "gadgets": | |
if {mineplex.%{_p}%.cosmetics.gadgets.pearl} is not set: | |
set {mineplex.%{_p}%.cosmetics.gadgets.pearl} to 0 | |
if {mineplex.%{_p}%.cosmetics.gadgets.firework} is not set: | |
set {mineplex.%{_p}%.cosmetics.gadgets.firework} to 0 | |
if {mineplex.%{_p}%.cosmetics.gadgets.coal} is not set: | |
set {mineplex.%{_p}%.cosmetics.gadgets.coal} to 0 | |
if {mineplex.%{_p}%.cosmetics.gadgets.tnt} is not set: | |
set {mineplex.%{_p}%.cosmetics.gadgets.tnt} to 0 | |
if {mineplex.%{_p}%.cosmetics.gadgets.snowball} is not set: | |
set {mineplex.%{_p}%.cosmetics.gadgets.snowball} to 0 | |
wait 2 ticks | |
open chest with 6 rows named "Inventory" to {_p} | |
wait 4 ticks | |
format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})] | |
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})] | |
if {mineplex.gadget.selected.%{_p}%} is "pearl": | |
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})] | |
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})] | |
if {mineplex.gadget.selected.%{_p}%} is "firework": | |
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})] | |
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})] | |
if {mineplex.gadget.selected.%{_p}%} is "Snowball": | |
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})] | |
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})] | |
if {mineplex.gadget.selected.%{_p}%} is "tnt": | |
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})] | |
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})] | |
if {mineplex.gadget.selected.%{_p}%} is "coal": | |
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})] | |
if {_arg2} is "main": | |
if {mineplex.%{_p}%.cosmetics.morphs} is not set: | |
set {mineplex.%{_p}%.cosmetics.morphs} to 0 | |
if {mineplex.%{_p}%.cosmetics.hats} is not set: | |
set {mineplex.%{_p}%.cosmetics.hats} to 0 | |
wait 2 ticks | |
open chest with 6 rows named "Inventory" to {_p} | |
set {mineplex.error.slot} to 0 | |
wait 4 ticks | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with black glass pane named "&8" with lore "&6" to be unstealable | |
add 1 to {mineplex.error.slot} | |
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})] | |
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 | |
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 | |
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 | |
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 | |
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})] | |
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})] | |
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})] | |
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})] | |
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})] | |
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 | |
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 | |
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 | |
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 | |
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 | |
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 | |
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 | |
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 | |
if {_arg2} is "pets": | |
if {mineplex.%{_p}%.cosmetics.pets.ocelot} is not set: | |
set {mineplex.%{_p}%.cosmetics.pets.ocelot} to 0 | |
if {mineplex.%{_p}%.cosmetics.pets.wolf} is not set: | |
set {mineplex.%{_p}%.cosmetics.pets.wolf} to 0 | |
if {mineplex.%{_p}%.cosmetics.pets.chicken} is not set: | |
set {mineplex.%{_p}%.cosmetics.pets.chicken} to 0 | |
wait 2 ticks | |
open chest with 6 rows named "Inventory" to {_p} | |
wait 4 ticks | |
format slot 4 of {_p} with bed item named "&7? Go Back" to close then run [cosmetic_system("menu", "main", {_p})] | |
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})] | |
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})] | |
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})] | |
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})] | |
if {_arg2} is "morphs": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not set: | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 0 | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not set: | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 0 | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not set: | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 0 | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not set: | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 0 | |
wait 2 ticks | |
open chest with 6 rows named "Inventory" to {_p} | |
wait 4 ticks | |
format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})] | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 0: | |
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})] | |
else: | |
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})] | |
if {mineplex.currentmorph.%{_p}%} is "Villager Morph": | |
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})] | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 0: | |
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})] | |
else: | |
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})] | |
if {mineplex.currentmorph.%{_p}%} is "Slime Morph": | |
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})] | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 0: | |
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})] | |
else: | |
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})] | |
if {mineplex.currentmorph.%{_p}%} is "Creeper Morph": | |
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})] | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 0: | |
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})] | |
else: | |
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})] | |
if {mineplex.currentmorph.%{_p}%} is "Cow Morph": | |
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})] | |
if {_p} has permission "mineplex.legend": | |
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})] | |
if {mineplex.currentmorph.%{_p}%} is "Wither Morph": | |
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})] | |
else: | |
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 | |
if {_arg2} is "hats": | |
wait 2 ticks | |
open chest with 6 rows named "Inventory" to {_p} | |
wait 4 ticks | |
format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})] | |
if {mineplex.hat.%{_p}%.owned.compCube} is not set: | |
set {mineplex.hat.%{_p}%.owned.compCube} to 0 | |
if {mineplex.hat.%{_p}%.owned.present} is not set: | |
set {mineplex.hat.%{_p}%.owned.present} to 0 | |
if {mineplex.hat.%{_p}%.owned.compCube} is 0: | |
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 | |
else: | |
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})] | |
if {mineplex.hat.selected.%{_p}%} is "compCube": | |
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})] | |
if {mineplex.hat.%{_p}%.owned.present} is 0: | |
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 | |
else: | |
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})] | |
if {mineplex.hat.selected.%{_p}%} is "present": | |
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})] | |
if {_arg2} is "particles": | |
wait 2 ticks | |
open chest with 6 rows named "Inventory" to {_p} | |
wait 4 ticks | |
format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})] | |
if {mineplex.particle.%{_p}%.owned.shadow} is not set: | |
set {mineplex.particle.%{_p}%.owned.shadow} to 0 | |
if {mineplex.particle.%{_p}%.owned.shadow} is 0: | |
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 | |
else: | |
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})] | |
if {mineplex.particle.selected.%{_p}%} is "shadow": | |
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})] | |
if {mineplex.particle.%{_p}%.owned.flame} is 0: | |
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 | |
else: | |
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})] | |
if {mineplex.particle.selected.%{_p}%} is "flame": | |
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})] | |
if {_arg2} is "mounts": | |
if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is not set: | |
set {mineplex.%{_p}%.cosmetics.mounts.owned.slime} to 0 | |
wait 2 ticks | |
open chest with 6 rows named "Inventory" to {_p} | |
wait 4 ticks | |
format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})] | |
if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is 0: | |
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})] | |
else: | |
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})] | |
if {currentmount.%{_p}%.type} is "Slime Mount": | |
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})] | |
if {_arg1} is "use": | |
if {_arg2} is "hat_compCube": | |
if {mineplex.hat.selected.%{_p}%} is "compCube": | |
wait 1 tick | |
message "&9Gadget> &7You unequipped &eCompanion Cube" to {_p} | |
set {mineplex.hat.selected.%{_p}%} to "none" | |
execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0" | |
cosmetic_system("menu", "hats", {_p}) | |
stop | |
if {mineplex.hat.%{_p}%.owned.compCube} is 1: | |
wait 1 tick | |
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==}]}}}" | |
message "&9Gadget> &7You equipped &eCompanion Cube" to {_p} | |
set {mineplex.hat.selected.%{_p}%} to "compCube" | |
cosmetic_system("menu", "hats", {_p}) | |
if {_arg1} is "use": | |
if {_arg2} is "hat_present": | |
if {mineplex.hat.selected.%{_p}%} is "present": | |
message "&9Gadget> &7You unequipped &ePresent" to {_p} | |
set {mineplex.hat.selected.%{_p}%} to "none" | |
execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0" | |
cosmetic_system("menu", "hats", {_p}) | |
stop | |
if {mineplex.hat.%{_p}%.owned.compCube} is 1: | |
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=}]}}}" | |
message "&9Gadget> &7You equipped &ePresent" to {_p} | |
set {mineplex.hat.selected.%{_p}%} to "present" | |
cosmetic_system("menu", "hats", {_p}) | |
if {_arg1} is "use": | |
if {_arg2} is "particle_shadow": | |
if {mineplex.particle.selected.%{_p}%} is "shadow": | |
message "&9Gadget> &7You unequipped &eShadow Walk" to {_p} | |
set {mineplex.particle.selected.%{_p}%} to "none" | |
cosmetic_system("menu", "particles", {_p}) | |
stop | |
if {mineplex.particle.%{_p}%.owned.shadow} is 1: | |
message "&9Gadget> &7You equipped &eShadow Walk" to {_p} | |
set {mineplex.particle.selected.%{_p}%} to "shadow" | |
cosmetic_system("menu", "particles", {_p}) | |
if {_arg2} is "particle_flame": | |
if {mineplex.particle.selected.%{_p}%} is "flame": | |
message "&9Gadget> &7You unequipped &eFlame Rings" to {_p} | |
set {mineplex.particle.selected.%{_p}%} to "none" | |
cosmetic_system("menu", "particles", {_p}) | |
stop | |
if {mineplex.particle.%{_p}%.owned.flame} is 1: | |
message "&9Gadget> &7You equipped &eFlame Rings" to {_p} | |
set {mineplex.particle.selected.%{_p}%} to "flame" | |
cosmetic_system("menu", "particles", {_p}) | |
if {_arg1} is "use": | |
if {_arg2} is "ocelot": | |
if {mineplex.pets.ocelot.active.%{_p}%} is not set: | |
set {mineplex.pets.ocelot.active.%{_p}%} to false | |
if {mineplex.pets.ocelot.active.%{_p}%} is false: | |
spawn a ocelot at {_p} | |
set {_ocelotpet} to the last spawned entity | |
add "{CustomName:&a%{_p}%'s&c Pet Cat}" to nbt of last spawned entity | |
add "{Silent:1}" to nbt of last spawned entity | |
add "{CustomNameVisible:1}" to nbt of last spawned entity | |
add "{PersistenceRequired:1}" to nbt of last spawned entity | |
tame {_ocelotpet} to {_p} | |
evaluate "set {pet::%{_p}%} to {_ocelotpet}" | |
set {mineplex.pets.ocelot.active.%{_p}%} to true | |
while {pet::%{_p}%} is alive: | |
wait 15 ticks | |
{_p} is online | |
if distance between {pet::%{_p}%} and {_p} is less than 5: | |
make {pet::%{_p}%} pathfind to {_p} with speed 1 | |
else if distance between {pet::%{_p}%} and {_p} is more than 15: | |
teleport {pet::%{_p}%} to {_p} | |
else: | |
make {pet::%{_p}%} pathfind to {_p} with speed 2 | |
else: | |
if {mineplex.pets.ocelot.active.%{_p}%} is true: | |
kill {pet::%{_p}%} | |
delete {pet::%{_p}%} | |
set {mineplex.pets.ocelot.active.%{_p}%} to false | |
if {_arg1} is "use": | |
if {_arg2} is "wolf": | |
if {mineplex.pets.wolf.active.%{_p}%} is not set: | |
set {mineplex.pets.wolf.active.%{_p}%} to false | |
if {mineplex.pets.wolf.active.%{_p}%} is false: | |
spawn a wolf at {_p} | |
set {_ocelotpet} to the last spawned entity | |
add "{CustomName:&a%{_p}%'s&c Pet Wolf}" to nbt of last spawned entity | |
add "{Silent:1}" to nbt of last spawned entity | |
add "{CustomNameVisible:1}" to nbt of last spawned entity | |
add "{PersistenceRequired:1}" to nbt of last spawned entity | |
tame {_ocelotpet} to {_p} | |
evaluate "set {pet::%{_p}%} to {_ocelotpet}" | |
set {mineplex.pets.wolf.active.%{_p}%} to true | |
while {pet::%{_p}%} is alive: | |
wait 15 ticks | |
{_p} is online | |
if distance between {pet::%{_p}%} and {_p} is less than 5: | |
make {pet::%{_p}%} pathfind to {_p} with speed 1 | |
else if distance between {pet::%{_p}%} and {_p} is more than 15: | |
teleport {pet::%{_p}%} to {_p} | |
else: | |
make {pet::%{_p}%} pathfind to {_p} with speed 2 | |
else: | |
if {mineplex.pets.wolf.active.%{_p}%} is true: | |
kill {pet::%{_p}%} | |
delete {pet::%{_p}%} | |
set {mineplex.pets.wolf.active.%{_p}%} to false | |
if {_arg1} is "use": | |
if {_arg2} is "chicken": | |
if {mineplex.pets.chicken.active.%{_p}%} is not set: | |
set {mineplex.pets.chicken.active.%{_p}%} to false | |
if {mineplex.pets.chicken.active.%{_p}%} is false: | |
spawn a chicken at {_p} | |
set {_ocelotpet} to the last spawned entity | |
add "{CustomName:&a%{_p}%'s&c Pet Chicken}" to nbt of last spawned entity | |
add "{Silent:1}" to nbt of last spawned entity | |
add "{CustomNameVisible:1}" to nbt of last spawned entity | |
add "{PersistenceRequired:1}" to nbt of last spawned entity | |
tame {_ocelotpet} to {_p} | |
evaluate "set {pet::%{_p}%} to {_ocelotpet}" | |
set {mineplex.pets.chicken.active.%{_p}%} to true | |
while {pet::%{_p}%} is alive: | |
wait 15 ticks | |
{_p} is online | |
if distance between {pet::%{_p}%} and {_p} is less than 5: | |
make {pet::%{_p}%} pathfind to {_p} with speed 1 | |
else if distance between {pet::%{_p}%} and {_p} is more than 15: | |
teleport {pet::%{_p}%} to {_p} | |
else: | |
make {pet::%{_p}%} pathfind to {_p} with speed 2 | |
else: | |
if {mineplex.pets.chicken.active.%{_p}%} is true: | |
kill {pet::%{_p}%} | |
delete {pet::%{_p}%} | |
set {mineplex.pets.chicken.active.%{_p}%} to false | |
if {_arg1} is "use": | |
if {_arg2} is "guardian": | |
if {mineplex.pets.guardian.active.%{_p}%} is not set: | |
set {mineplex.pets.guardian.active.%{_p}%} to false | |
if {mineplex.pets.guardian.active.%{_p}%} is false: | |
spawn a guardian at {_p} | |
set {_ocelotpet} to the last spawned entity | |
add "{CustomName:&a%{_p}%'s&c Pet Guardian}" to nbt of last spawned entity | |
add "{Silent:1}" to nbt of last spawned entity | |
add "{CustomNameVisible:1}" to nbt of last spawned entity | |
add "{PersistenceRequired:1}" to nbt of last spawned entity | |
tame {_ocelotpet} to {_p} | |
evaluate "set {pet::%{_p}%} to {_ocelotpet}" | |
set {mineplex.pets.guardian.active.%{_p}%} to true | |
while {pet::%{_p}%} is alive: | |
wait 15 ticks | |
{_p} is online | |
if distance between {pet::%{_p}%} and {_p} is less than 5: | |
make {pet::%{_p}%} pathfind to {_p} with speed 1 | |
else if distance between {pet::%{_p}%} and {_p} is more than 15: | |
teleport {pet::%{_p}%} to {_p} | |
else: | |
make {pet::%{_p}%} pathfind to {_p} with speed 2 | |
else: | |
if {mineplex.pets.guardian.active.%{_p}%} is true: | |
kill {pet::%{_p}%} | |
delete {pet::%{_p}%} | |
set {mineplex.pets.guardian.active.%{_p}%} to false | |
if {_arg1} is "use": | |
if {_arg2} is "coal": | |
if {mineplex.gadget.selected.%{_p}%} is "coal": | |
message "&9Gadget> &7You unequipped &eCoal" to {_p} | |
set {mineplex.gadget.selected.%{_p}%} to "none" | |
set slot 3 of {_p} to air with name "lolz" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
message "&9Gadget> &7You equipped &eCoal" to {_p} | |
set {mineplex.gadget.selected.%{_p}%} to "coal" | |
set slot 3 of {_p} to coal with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.coal}% Coal" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
if {_arg1} is "buy": | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 2 ticks | |
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 | |
format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable | |
format slot 27 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 28 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 29 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 36 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 37 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 38 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 45 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 46 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 47 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})] | |
format slot 33 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 34 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 35 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 42 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 43 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 44 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 51 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 52 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
format slot 53 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})] | |
#Mounts | |
if {_arg2} is "mount_slime": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1: | |
message "&9Gadget> &7You already own this mount!" to {_p} | |
else: | |
format slot 22 of {_p} with slimeball named "&fSlime Mount" with lore "&fSplat Splat!" to be unstealable | |
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 | |
#Morphs | |
if {_arg2} is "morph_creeper": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1: | |
message "&9Gadget> &7You already own this morph!" to {_p} | |
else: | |
format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable | |
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 | |
if {_arg2} is "morph_cow": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1: | |
message "&9Gadget> &7You already own this morph!" to {_p} | |
else: | |
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 | |
format slot 22 of {_p} with steak named "&fCow Morph" with lore "&fMooooo!" to be unstealable | |
if {_arg2} is "morph_slime": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1: | |
message "&9Gadget> &7You already own this morph!" to {_p} | |
else: | |
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 | |
format slot 22 of {_p} with slimeball named "&fSlime Morph" with lore "&fSplat Splat!" to be unstealable | |
if {_arg2} is "morph_villager": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1: | |
message "&9Gadget> &7You already own this morph!" to {_p} | |
else: | |
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 | |
format slot 22 of {_p} with emerald named "&fVillager Morph" with lore "&fMURRR! HURR MURRR!" to be unstealable | |
#Gadgets | |
if {_arg2} is "pearl": | |
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 | |
format slot 22 of {_p} with ender pearl named "&fEthereal Pearl" with lore "&fThese Pearls are stolen from||&fsleeping Endermen!" to be unstealable | |
if {_arg2} is "firework": | |
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 | |
format slot 22 of {_p} with firework rocket named "&fFirework" with lore "&fNeed to celebrate? These||&fFireworks should do the trick!" to be unstealable | |
if {_arg2} is "tnt": | |
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 | |
format slot 22 of {_p} with tnt named "&fTNT" with lore "&fThowing tnt at %{mineplex.config.servername}%||&fStaff is highly encouraged!" to be unstealable | |
if {_arg1} is "confirm": | |
if {_arg2} is "mount_slime": | |
if {mineplex.shards.%{_p}%} is bigger than 9999: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased &eSlime Mount" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1 | |
delShards({_p}, 10000) | |
add 1 to {mineplex.%{_p}%.cosmetics.mounts} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 9999: | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "mounts", {_p})] | |
add 1 to {mineplex.error.slot} | |
if {_arg1} is "use": | |
if {_arg2} is "mount_slime": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1: | |
message "&9Gadget> &7You dont own this mount." to {_p} | |
stop | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1: | |
if {mineplex.currentmorph.%{_p}%} is not set: | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
if {currentmount.%{_p}%.type} is not "Slime Mount": | |
if {currentmount.%{_p}%.type} is not "None": | |
message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p} | |
message "&9Gadget> &7You spawned &eSlime Mount" to {_p} | |
mountapi({_p}, "create", "slime") | |
cosmetic_system("menu", "mounts", {_p}) | |
stop | |
if {currentmount.%{_p}%.type} is "Slime Mount": | |
message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
mountapi({_p}, "remove", "notused") | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {_arg1} is "confirm": | |
if {_arg2} is "morph_creeper": | |
if {mineplex.shards.%{_p}%} is bigger than 9999: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased &eCreeper Morph" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 1 | |
delShards({_p}, 10000) | |
add 1 to {mineplex.%{_p}%.cosmetics.morphs} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 9999: | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})] | |
add 1 to {mineplex.error.slot} | |
if {_arg1} is "use": | |
if {_arg2} is "morph_creeper": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1: | |
message "&9Gadget> &7You dont own this morph." to {_p} | |
stop | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1: | |
if {mineplex.currentmorph.%{_p}%} is not set: | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
if {mineplex.currentmorph.%{_p}%} is not "Creeper Morph": | |
if {mineplex.currentmorph.%{_p}%} is not "None": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
message "&9Gadget> &7You morphed into &eCreeper Morph" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "Creeper Morph" | |
execute console command "odisguise %{_p}% creeper" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {mineplex.currentmorph.%{_p}%} is "Creeper Morph": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
execute console command "undisguise %{_p}%" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {_arg1} is "use": | |
if {_arg2} is "morph_wither": | |
if {_p} has permission "mineplex.legend": | |
if {mineplex.currentmorph.%{_p}%} is not set: | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
if {mineplex.currentmorph.%{_p}%} is not "Wither Morph": | |
if {mineplex.currentmorph.%{_p}%} is not "None": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
message "&9Gadget> &7You morphed into &eWither Morph" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "Wither Morph" | |
execute console command "odisguise %{_p}% wither" | |
set {mineplex.dj.%{_p}%} to 0 | |
set {_p}'s flight state to true | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {mineplex.currentmorph.%{_p}%} is "Wither Morph": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
execute console command "undisguise %{_p}%" | |
set {mineplex.dj.%{_p}%} to 1 | |
set {_p}'s flight state to false | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
else: | |
message "&9Gadget> &7You dont own this Morph" to {_p} | |
if {_arg1} is "confirm": | |
if {_arg2} is "morph_cow": | |
if {mineplex.shards.%{_p}%} is bigger than 5999: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased &eCow Morph" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 1 | |
delShards({_p}, 6000) | |
add 1 to {mineplex.%{_p}%.cosmetics.morphs} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 9999: | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})] | |
add 1 to {mineplex.error.slot} | |
if {_arg1} is "use": | |
if {_arg2} is "morph_cow": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not 1: | |
message "&9Gadget> &7You dont own this morph." to {_p} | |
stop | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1: | |
if {mineplex.currentmorph.%{_p}%} is not set: | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
if {mineplex.currentmorph.%{_p}%} is not "Cow Morph": | |
if {mineplex.currentmorph.%{_p}%} is not "None": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
message "&9Gadget> &7You morphed into &eCow Morph" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "Cow Morph" | |
execute console command "odisguise %{_p}% cow" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {mineplex.currentmorph.%{_p}%} is "Cow Morph": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
execute console command "undisguise %{_p}%" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {_arg1} is "confirm": | |
if {_arg2} is "morph_slime": | |
if {mineplex.shards.%{_p}%} is bigger than 19999: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased &eSlime Morph" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1 | |
delShards({_p}, 20000) | |
add 1 to {mineplex.%{_p}%.cosmetics.morphs} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 19999: | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})] | |
add 1 to {mineplex.error.slot} | |
if {_arg1} is "use": | |
if {_arg2} is "morph_slime": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not 1: | |
message "&9Gadget> &7You dont own this morph." to {_p} | |
stop | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1: | |
if {mineplex.currentmorph.%{_p}%} is not set: | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
if {mineplex.currentmorph.%{_p}%} is not "Slime Morph": | |
if {mineplex.currentmorph.%{_p}%} is not "None": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
message "&9Gadget> &7You morphed into &eSlime Morph" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "Slime Morph" | |
execute console command "odisguise %{_p}% slime" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {mineplex.currentmorph.%{_p}%} is "Slime Morph": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
execute console command "undisguise %{_p}%" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {_arg1} is "confirm": | |
if {_arg2} is "morph_villager": | |
if {mineplex.shards.%{_p}%} is bigger than 11999: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased &eVillager Morph" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 1 | |
delShards({_p}, 12000) | |
add 1 to {mineplex.%{_p}%.cosmetics.morphs} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 499: | |
wait 3 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
wait 2 ticks | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})] | |
add 1 to {mineplex.error.slot} | |
if {_arg1} is "use": | |
if {_arg2} is "morph_villager": | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not 1: | |
message "&9Gadget> &7You dont own this morph." to {_p} | |
stop | |
if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1: | |
if {mineplex.currentmorph.%{_p}%} is not set: | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
if {mineplex.currentmorph.%{_p}%} is not "villager Morph": | |
if {mineplex.currentmorph.%{_p}%} is not "None": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
message "&9Gadget> &7You morphed into &eVillager Morph" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "Villager Morph" | |
execute console command "odisguise %{_p}% villager" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {mineplex.currentmorph.%{_p}%} is "Villager Morph": | |
message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p} | |
set {mineplex.currentmorph.%{_p}%} to "None" | |
execute console command "undisguise %{_p}%" | |
cosmetic_system("menu", "morphs", {_p}) | |
stop | |
if {_arg1} is "use": | |
if {_arg2} is "pearl": | |
if {mineplex.gadget.selected.%{_p}%} is "Ethereal Pearl": | |
message "&9Gadget> &7You unequipped &eEthereal Pearl" to {_p} | |
set {mineplex.gadget.selected.%{_p}%} to "None" | |
set slot 3 of {_p} to air with name "lolz" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
message "&9Cosmetics> &7You equipped &eEthereal Pearl" to {_p} | |
set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.pearl}% &5Ethereal Pearls" | |
set {mineplex.gadget.selected.%{_p}%} to "Ethereal Pearl" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
if {_arg1} is "confirm": | |
if {_arg2} is "pearl": | |
if {mineplex.shards.%{_p}%} is bigger than 499: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased 50x &eEthereal Pearl" to {mineplex.chest.buyplayer.%{_p}%} | |
add 50 to {mineplex.%{_p}%.cosmetics.gadgets.pearl} | |
delShards({_p}, 50) | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 499: | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})] | |
add 1 to {mineplex.error.slot} | |
if {_arg1} is "use": | |
if {_arg2} is "firework": | |
if {mineplex.gadget.selected.%{_p}%} is "Fireworks": | |
message "&9Gadget> &7You unequipped &eFireworks" to {_p} | |
set {mineplex.gadget.selected.%{_p}%} to "None" | |
set slot 3 of {_p} to air with name "lolz" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
message "&9Gadget> &7You equipped &eFireworks" to {_p} | |
set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.firework}% &eFireworks" | |
set {mineplex.gadget.selected.%{_p}%} to "Fireworks" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
if {_arg1} is "use": | |
if {_arg2} is "tnt": | |
if {mineplex.gadget.selected.%{_p}%} is "TNT": | |
message "&9Gadget> &7You unequipped &eTNT" to {_p} | |
set {mineplex.gadget.selected.%{_p}%} to "None" | |
set slot 3 of {_p} to air with name "lolz" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
message "&9Gadget> &7You equipped &eTNT" to {_p} | |
set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.tnt}% &eTNT" | |
set {mineplex.gadget.selected.%{_p}%} to "TNT" | |
cosmetic_system("menu", "gadgets", {_p}) | |
if {_arg1} is "use": | |
if {_arg2} is "snowball": | |
if {mineplex.gadget.selected.%{_p}%} is "Snowball": | |
message "&9Gadget> &7You unequipped &eSnowball" to {_p} | |
set {mineplex.gadget.selected.%{_p}%} to "None" | |
set slot 3 of {_p} to air with name "lolz" | |
cosmetic_system("menu", "gadgets", {_p}) | |
stop | |
message "&9Gadget> &7You equipped &eSnowball" to {_p} | |
set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.snowball}% &eSnowballs" | |
set {mineplex.gadget.selected.%{_p}%} to "Snowball" | |
cosmetic_system("menu", "gadgets", {_p}) | |
if {_arg1} is "confirm": | |
if {_arg2} is "firework": | |
if {mineplex.shards.%{_p}%} is bigger than 499: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased 50x &eFireworks" to {_p} | |
add 50 to {mineplex.%{_p}%.cosmetics.gadgets.firework} | |
delShards({_p}, 500) | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 499: | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})] | |
add 1 to {mineplex.error.slot} | |
if {_arg1} is "confirm": | |
if {_arg2} is "tnt": | |
if {mineplex.shards.%{_p}%} is bigger than 499: | |
set {mineplex.proc.slot} to 45 | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
loop 9 times: | |
format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close | |
wait 1 tick | |
add 1 to {mineplex.proc.slot} | |
if {mineplex.proc.slot} is 54: | |
message "&9Cosmetics> &7Purchased 50x &eTNT" to {_p} | |
add 50 to {mineplex.%{_p}%.cosmetics.gadgets.tnt} | |
delShards({_p}, 500) | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
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})] | |
add 1 to {mineplex.error.slot} | |
wait 2 ticks | |
stop | |
if {mineplex.shards.%{_p}%} is not bigger than 499: | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%} | |
set {mineplex.error.slot} to 0 | |
loop 54 times: | |
format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})] | |
add 1 to {mineplex.error.slot} | |
on right click: | |
if player's tool is a chest: | |
if name of player's tool is "&aCosmetic Menu": | |
cancel event | |
cosmetic_system("menu", "main", player) | |
on left click: | |
if player's tool is a chest: | |
if name of player's tool is "&aCosmetic Menu": | |
cancel event | |
cosmetic_system("menu", "main", player) | |
on damage: | |
victim's name contains "Pet" | |
cancel event | |
on any move: | |
if {mineplex.particle.selected.%player%} is "shadow": | |
loop all players: | |
show 1 "footstep" particles at location of player for loop-player offset by 0.4, 0.7, 0.4 | |
if {mineplex.particle.selected.%player%} is "flame": | |
loop all players: | |
show 1 "flame" particles at location of player for loop-player offset by 0.4, 0.7, 0.4 | |
command /giveitem [<player>] [<number>] [<text>]: | |
permission: mineplex.support | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 3 is "hat_compCube": | |
if {mineplex.hat.%arg 1%.owned.compCube} is 1: | |
message "&9Cosmetics> &e%arg 1% &7already owns &eCompanion Cube" | |
stop | |
set {mineplex.hat.%arg 1%.owned.compCube} to 1 | |
add 1 to {mineplex.%arg 1%.cosmetics.hats} | |
message "&9Cosmetics> &7You gave &e%arg 1% Companion Cube" to player | |
message "&9Cosmetics> &7You recieved the &eCompanion Cube &7from &e%player%" to arg 1 | |
stop | |
if arg 3 is "hat_present": | |
if {mineplex.hat.%arg 1%.owned.present} is 1: | |
message "&9Cosmetics> &e%arg 1% &7already owns &ePresent" | |
stop | |
set {mineplex.hat.%arg 1%.owned.present} to 1 | |
add 1 to {mineplex.%arg 1%.cosmetics.hats} | |
message "&9Cosmetics> &7You gave &e%arg 1% Present" to player | |
message "&9Cosmetics> &7You recieved the &ePresent &7from &e%player%" to arg 1 | |
stop | |
if arg 3 is "particle_shadow": | |
if {mineplex.particle.%arg 1%.owned.shadow} is 1: | |
message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk" | |
stop | |
set {mineplex.particle.%arg 1%.owned.shadow} to 1 | |
add 1 to {mineplex.%arg 1%.cosmetics.particles} | |
message "&9Cosmetics> &7You gave &e%arg 1% Shadow Walk" to player | |
message "&9Cosmetics> &7You recieved the &eShadow Walk &7from &e%player%" to arg 1 | |
stop | |
if arg 3 is "particle_flame": | |
if {mineplex.particle.%arg 1%.owned.flame} is 1: | |
message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk" | |
stop | |
set {mineplex.particle.%arg 1%.owned.flame} to 1 | |
add 1 to {mineplex.%arg 1%.cosmetics.particles} | |
message "&9Cosmetics> &7You gave &e%arg 1% Flame Rings" to player | |
message "&9Cosmetics> &7You recieved the &eFlame Rings &7from &e%player%" to arg 1 | |
stop | |
if arg 3 is "take:hat_compCube": | |
if {mineplex.hat.%arg 1%.owned.compCube} is 0: | |
message "&9Cosmetics> &e%arg 1% &7doesnt own &eCompanion Cube" | |
stop | |
set {mineplex.hat.%arg 1%.owned.compCube} to 0 | |
remove 1 from {mineplex.%arg 1%.cosmetics.hats} | |
message "&9Cosmetics> &7You took &e%arg 1%'s Companion Cube" to player | |
message "&9Cosmetics> &e%player% &7took your &eCompanion Cube" to arg 1 | |
stop | |
if arg 3 is "take:hat_present": | |
if {mineplex.hat.%arg 1%.owned.present} is 0: | |
message "&9Cosmetics> &e%arg 1% &7doesnt own &ePresent" | |
stop | |
set {mineplex.hat.%arg 1%.owned.present} to 0 | |
remove 1 from {mineplex.%arg 1%.cosmetics.hats} | |
message "&9Cosmetics> &7You took &e%arg 1%'s Present" to player | |
message "&9Cosmetics> &e%player% &7took your &ePresent" to arg 1 | |
stop | |
if arg 3 is "pearl": | |
add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.pearl} | |
message "&9Item> &7You gave %arg 2% Ethereal Pearls &7to player %arg 1%" to player | |
message "&9Item> &e%player% &7gave you &e%arg 2% Ethereal Pearls" to arg 1 | |
stop | |
if arg 3 is "fireworks": | |
add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.firework} | |
message "&9Item> &7You gave %arg 2% Fireworks &7to player %arg 1%" to player | |
message "&9Item> &e%player% &7gave you &e%arg 2% Fireworks" to arg 1 | |
stop | |
if arg 3 is "coal": | |
add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.coal} | |
message "&9Item> &7You gave %arg 2% Coal &7to player %arg 1%" to player | |
message "&9Item> &e%player% &7gave you &e%arg 2% Coal" to arg 1 | |
stop | |
if arg 3 is "tnt": | |
add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.tnt} | |
message "&9Item> &7You gave %arg 2% TNT &7to player %arg 1%" to player | |
message "&9Item> &e%player% &7gave you &e%arg 2% TNT" to arg 1 | |
stop | |
if arg 3 is "snowball": | |
add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.snowball} | |
message "&9Item> &7You gave %arg 2% Snowballs &7to player %arg 1%" to player | |
message "&9Item> &e%player% &7gave you &e%arg 2% Snowballs" to arg 1 | |
stop | |
message "&9Cosmetics> &c&lInvalid Cosmetic." | |
command /gadget: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.cosmetics} is not set: | |
set {mineplex.cosmetics} to 1 | |
if {mineplex.cosmetics} is 1: | |
set {mineplex.cosmetics} to 0 | |
broadcast "&f&lGadgets/Mounts are now &c&lDisabled" | |
stop | |
if {mineplex.cosmetics} is 0: | |
set {mineplex.cosmetics} to 1 | |
broadcast "&f&lGadgets/Mounts are now &a&lEnabled" | |
stop | |
every tick: | |
loop all players: | |
if {mineplex.cosmetics} is not set: | |
set {mineplex.cosmetics} to 1 | |
if {mineplex.cosmetics} is 0: | |
set slot 3 of loop-player to air with name "remove" | |
stop | |
loop-player's gamemode is not creative: | |
if {mineplex.cosmetics.%loop-player%} is not set: | |
set {mineplex.cosmetics.%loop-player%} to 1 | |
if {mineplex.gadget.selected.%loop-player%} is "Ethereal Pearl": | |
set slot 3 of loop-player to ender pearl with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.pearl}% Ethereal Pearl" | |
if {mineplex.gadget.selected.%loop-player%} is "Fireworks": | |
set slot 3 of loop-player to firework rocket with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.firework}% Fireworks" | |
if {mineplex.gadget.selected.%loop-player%} is "Coal": | |
set slot 3 of loop-player to coal with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.coal}% Coal" | |
if {mineplex.gadget.selected.%loop-player%} is "TNT": | |
set slot 3 of loop-player to tnt with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.tnt}% TNT" | |
if {mineplex.gadget.selected.%loop-player%} is "Snowball": | |
set slot 3 of loop-player to snowball with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.snowball}% Snowballs" | |
on shoot: | |
if projectile is an enderpearl: | |
if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.pearl}% Ethereal Pearl": | |
if {mineplex.%shooter%.cosmetics.gadgets.pearl} is 0: | |
cancel event | |
cosmetic_system("buy", "pearl", shooter) | |
stop | |
if {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} is 1: | |
set action bar of shooter to "&f&lEthereal Pearl is recharging" | |
cancel event | |
stop | |
remove 1 from {mineplex.%shooter%.cosmetics.gadgets.pearl} | |
set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 1 | |
message "&9Skill> &7You threw &aEthereal Pearl&7." to shooter | |
make shooter ride projectile | |
wait 3 ticks | |
make shooter ride projectile | |
wait 3 seconds | |
set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 0 | |
set action bar of shooter to "&a&lEthereal Pearl Recharged." | |
if projectile is an snowball: | |
if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.snowball}% Snowballs": | |
if {mineplex.%shooter%.cosmetics.gadgets.snowball} is 0: | |
cancel event | |
message "&9Gadget> &7You have no Snowballs left!" to shooter | |
stop | |
if {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} is 1: | |
set action bar of shooter to "&f&lSnowball is recharging" | |
cancel event | |
stop | |
remove 1 from {mineplex.%shooter%.cosmetics.gadgets.snowball} | |
set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 1 | |
message "&9Skill> &7You threw &aSnowball&7." to shooter | |
wait 10 ticks | |
set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 0 | |
set action bar of shooter to "&a&lSnowball Recharged." | |
on right click: | |
if player's tool is tnt: | |
if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.tnt}% TNT": | |
if {mineplex.%player%.cosmetics.gadgets.tnt} is less than 1: | |
cosmetic_system("buy", "tnt", player) | |
stop | |
if {mineplex.%player%.cosmetics.gadgets.tntCooldown} is 1: | |
set action bar of player to "&f&lTNT is recharging" | |
stop | |
remove 1 from {mineplex.%player%.cosmetics.gadgets.tnt} | |
spawn a primed tnt 1 meter above the player | |
add "{Fuse:60}" to nbt of the spawned entity | |
push the spawned entity in direction of player at speed 0.9 | |
push the spawned entity upwards at speed 0.2 | |
message "&9Skill> &7You threw &aTNT&7." | |
set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 1 | |
wait 3 seconds | |
set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 0 | |
set action bar of player to "&a&lTNT Recharged." | |
on right click: | |
if player's tool is firework rocket: | |
if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.firework}% Fireworks": | |
if {mineplex.%player%.cosmetics.gadgets.firework} is 0: | |
cancel event | |
cosmetic_system("buy", "firework", player) | |
stop | |
if {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} is 1: | |
set action bar of player to "&f&lFireworks &f&lis recharging..." | |
cancel event | |
stop | |
remove 1 from {mineplex.%player%.cosmetics.gadgets.firework} | |
cancel event | |
set {firework} to a random integer from 1 to 15 | |
if {firework} is 1: | |
launch creeper firework colored red at player timed 1 | |
if {firework} is 2: | |
launch burst firework colored green at player timed 1 | |
if {firework} is 3: | |
launch ball firework colored yellow at player timed 1 | |
if {firework} is 4: | |
launch ball firework colored blue at player timed 1 | |
if {firework} is 5: | |
launch burst firework colored red at player timed 1 | |
if {firework} is 6: | |
launch creeper firework colored light green at player timed 1 | |
if {firework} is 7: | |
launch burst firework colored light green at player timed 1 | |
if {firework} is 8: | |
launch ball firework colored orange at player timed 1 | |
if {firework} is 9: | |
launch burst firework colored orange at player timed 1 | |
if {firework} is 10: | |
launch creeper firework colored pink at player timed 1 | |
if {firework} is 11: | |
launch burst firework colored orange at player timed 1 | |
if {firework} is 12: | |
launch burst firework colored light green at player timed 1 | |
if {firework} is 13: | |
launch burst firework colored blue at player timed 1 | |
if {firework} is 14: | |
launch burst firework colored blue at player timed 1 | |
if {firework} is 15: | |
launch burst firework colored yellow at player timed 1 | |
set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 1 | |
message "&9Skill> &7You used &aFireworks&7." | |
wait 10 ticks | |
set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 0 | |
set action bar of player to "&a&lFireworks Recharged." | |
on right click: | |
if player's tool is coal: | |
if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.coal}% Coal": | |
if {mineplex.%player%.cosmetics.gadgets.coal} is 0: | |
message "&9Coal> &7You should go and get some coal..." | |
stop | |
if {mineplex.%player%.cosmetics.gadgets.coalCooldown} is 1: | |
set action bar of player to "&f&lCoal &f&lis recharging..." | |
cancel event | |
stop | |
message "&9Skill> &7You used &aCoal&7." | |
set {coalMessage} to a random integer from 1 to 10 | |
if {coalMessage} is 1: | |
message "&9Coal> &7Maybe you could... eat it?" | |
if {coalMessage} is 2: | |
message "&9Coal> &7Now... if you only had a furnace." | |
if {coalMessage} is 3: | |
message "&9Coal> &7Did you know a diamond is formed from coal?" | |
if {coalMessage} is 4: | |
message "&9Coal> &7Coal is a word that sounds wierd if you say it too much." | |
if {coalMessage} is 5: | |
message "&9Coal> &7Did you know coal is used for &knothing&7!" | |
if {coalMessage} is 6: | |
message "&9Coal> &7I hope you didn't miss any diamonds." | |
if {coalMessage} is 7: | |
message "&9Coal> &7Na na na na, Na na na na, &8BLACK COAL" | |
if {coalMessage} is 8: | |
message "&9Coal> &7With 9 of these you could make a Block." | |
if {coalMessage} is 9: | |
message "&9Coal> &7Lava is hotter, but coal is quicker." | |
if {coalMessage} is 10: | |
message "&9Coal> &7For what do you even need Coal on a Minigame server?" | |
set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 1 | |
wait 10 ticks | |
set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 0 | |
set action bar of player to "&a&lCoal Recharged." | |
#Slime mount test | |
on right click on slime: | |
if {currentmount.%player%} is not set: | |
delete {currentmount.%player%} | |
message "&9Mount> &7This is not your mount." | |
else: | |
if {currentmount.%player%} is the clicked entity: | |
make the player ride the clicked entity | |
else: | |
message "&9Mount> &7This is not your mount." | |
on explode: | |
create a safe explosion with force 3 | |
cancel event | |
on damage: | |
attacker's name contains "Slime" | |
set damage to 0 | |
cancel event | |
#Morph Disablers (Quit) | |
on quit: | |
if {mineplex.currentmorph.%player%} is "Creeper Morph": | |
cosmetic_system("use", "morph_creeper", player) | |
if {mineplex.currentmorph.%player%} is "Slime Morph": | |
cosmetic_system("use", "morph_slime", player) | |
if {mineplex.currentmorph.%player%} is "Cow Morph": | |
cosmetic_system("use", "morph_cow", player) | |
if {mineplex.currentmorph.%player%} is "Villager Morph": | |
cosmetic_system("use", "morph_villager", player) | |
if {mineplex.currentmorph.%player%} is "Wither Morph": | |
cosmetic_system("use", "morph_wither", player) | |
#Treasure System | |
function resetPoints(p: offline player, l: number) :: number: | |
delete {mineplex.chestbusy.%{_l}%} | |
delete {mineplex.inchest.%{_p}%} | |
delete {mineplex.chestsopened.%{_p}%} | |
set block at {mineplex.chestpoint.%{_l}%.sub.1} to air | |
set block at {mineplex.chestpoint.%{_l}%.sub.2} to air | |
set block at {mineplex.chestpoint.%{_l}%.sub.3} to air | |
set block at {mineplex.chestpoint.%{_l}%.sub.4} to air | |
set block at {mineplex.chestpoint.%{_l}%.sub.5} to air | |
set block at {mineplex.chestpoint.%{_l}%.sub.6} to air | |
set block at {mineplex.chestpoint.%{_l}%.sub.7} to air | |
set block at {mineplex.chestpoint.%{_l}%.sub.8} to air | |
set block at {mineplex.chestpoint.%{_l}%} to chest | |
function rewardTreasure(p: player , c: number , l: number , s: number) :: number: | |
set {_mineplex.chestpoint.%{_l}%.sub.%{_s}%} to {mineplex.chestpoint.%{_l}%.sub.%{_s}%} | |
add 0 to y-coordinate of {_mineplex.chestpoint.%{_l}%.sub.%{_s}%} | |
if {_c} is 3: | |
set {_r} to a random integer between 1 and 350 | |
if {_r} is 50: | |
if {mineplex.rank.%{_p}%} is "": | |
set {_ra} to "ULTRA" | |
else if {mineplex.rank.%{_p}%} is "&b&lULTRA ": | |
set {_ra} to "HERO" | |
else if {mineplex.rank.%{_p}%} is "&d&lHERO ": | |
set {_ra} to "LEGEND" | |
else if {mineplex.rank.%{_p}%} is "&a&lLEGEND ": | |
set {_ra} to "TITAN" | |
else if {mineplex.rank.%{_p}%} is "&c&lTITAN ": | |
set {_ra} to "ETERNAL" | |
else: | |
set {_ra} to a random integer between 2750 and 3750 | |
broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7." | |
addShards({_p}, {_ra}) | |
wait 2.25 seconds | |
execute console command "/rank set %{_p}% %{_ra}%" | |
broadcast "&9Treasure> &e%{_p}% &7found &cMythical %{_ra}% Rank&7." | |
send all players title "&eTreasure" with subtitle "&f%{_p}% has found &cMythical Rank Upgrade" for 10 seconds | |
else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55: | |
set {_ra} to a random integer between 1500 and 2250 | |
broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7." | |
addShards({_p}, {_ra}) | |
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: | |
set {_ra} to a random integer between 1025 and 1495 | |
broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7." | |
addShards({_p}, {_ra}) | |
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: | |
set {_ra} to a random integer between 525 and 985 | |
send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p} | |
addShards({_p}, {_ra}) | |
else: | |
set {_ra} to a random integer between 150 and 499 | |
send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p} | |
addShards({_p}, {_ra}) | |
else: | |
set {_r} to a random integer between 1 and 350 | |
if {_r} is 50: | |
set {_ra} to a random integer between 2750 and 3750 | |
broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7." | |
addShards({_p}, {_ra}) | |
else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55: | |
set {_ra} to a random integer between 1500 and 2250 | |
broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7." | |
addShards({_p}, {_ra}) | |
wait 2.25 seconds | |
resetPoints({_p}, {_l}) | |
delete {mineplex.inchest.%{_p}%} | |
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: | |
set {_ra} to a random integer between 1025 and 1495 | |
broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7." | |
addShards({_p}, {_ra}) | |
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: | |
set {_ra} to a random integer between 525 and 985 | |
send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p} | |
addShards({_p}, {_ra}) | |
else: | |
set {_ra} to a random integer between 150 and 499 | |
send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p} | |
addShards({_p}, {_ra}) | |
on join: | |
if {oldchests.%player%} is not set: | |
set {oldchests.%player%} to 0 | |
if {ancientchests.%player%} is not set: | |
set {ancientchests.%player%} to 0 | |
if {mythicalchests.%player%} is not set: | |
set {mythicalchests.%player%} to 0 | |
function buyChest(p: player, n: number) :: player: | |
if {_n} is 1: | |
if {mineplex.shards.%{_p}%} >= 1000: | |
close {_p}'s inventory | |
wait 3 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 5 ticks | |
set {_slot} to 0 | |
format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
loop 44 times: | |
format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
add 1 to {_slot} | |
loop 10 times: | |
wait 1 tick | |
format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
add 1 to {slot} | |
delShards({_p}, 1000) | |
add 1 to {oldchests.%{_p}%} | |
wait 10 ticks | |
close {_p}'s inventory | |
else: | |
close {_p}'s inventory | |
wait 3 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 5 ticks | |
format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable | |
set {_slot} to 0 | |
loop 54 times: | |
format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable | |
add 1 to {_slot} | |
wait 10 ticks | |
close {_p}'s inventory | |
if {_n} is 2: | |
if {mineplex.shards.%{_p}%} >= 5000: | |
close {_p}'s inventory | |
wait 3 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 5 ticks | |
set {_slot} to 0 | |
format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
loop 44 times: | |
format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
add 1 to {_slot} | |
loop 10 times: | |
wait 1 tick | |
format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
add 1 to {slot} | |
remove 5000 from {mineplex.shards.%{_p}%} | |
delShards({_p}, 5000) | |
add 1 to {ancientchests.%{_p}%} | |
wait 10 ticks | |
close {_p}'s inventory | |
else: | |
close {_p}'s inventory | |
wait 3 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 5 ticks | |
format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable | |
set {_slot} to 0 | |
loop 54 times: | |
format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable | |
add 1 to {_slot} | |
wait 10 ticks | |
close {_p}'s inventory | |
if {_n} is 3: | |
if {mineplex.shards.%{_p}%} >= 10000: | |
close {_p}'s inventory | |
wait 3 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 5 ticks | |
set {_slot} to 0 | |
format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
loop 44 times: | |
format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
add 1 to {_slot} | |
loop 10 times: | |
wait 1 tick | |
format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable | |
add 1 to {slot} | |
delShards({_p}, 10000) | |
add 1 to {mythicalchests.%{_p}%} | |
wait 10 ticks | |
close {_p}'s inventory | |
else: | |
close {_p}'s inventory | |
wait 3 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 5 ticks | |
format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable | |
set {_slot} to 0 | |
loop 54 times: | |
format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable | |
add 1 to {_slot} | |
wait 10 ticks | |
close {_p}'s inventory | |
function openTreasure(p: player , c: number , l: number) :: number: | |
if {_c} is 1: | |
if {oldchests.%{_p}%} < 1: | |
close {_p}'s inventory | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 1 tick | |
format slot 4 of {_p} with prismarine shard named "&b&l1000 Shards" to be unstealable | |
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 | |
format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 33 of {_p} with redstone block named "&cNO" to close | |
format slot 34 of {_p} with redstone block named "&cNO" to close | |
format slot 35 of {_p} with redstone block named "&cNO" to close | |
format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 42 of {_p} with redstone block named "&cNO" to close | |
format slot 43 of {_p} with redstone block named "&cNO" to close | |
format slot 44 of {_p} with redstone block named "&cNO" to close | |
format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)] | |
format slot 51 of {_p} with redstone block named "&cNO" to close | |
format slot 52 of {_p} with redstone block named "&cNO" to close | |
format slot 53 of {_p} with redstone block named "&cNO" to close | |
if {oldchests.%{_p}%} >= 1: | |
remove 1 from {oldchests.%{_p}%} | |
set {mineplex.chestbusy.%{_l}%.} to {_p} | |
send {_p} title "&eOld Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds | |
set {mineplex.inchest.%{_p}%} to {_l} | |
set block at {mineplex.chestpoint.%{_l}%} to air | |
teleport {_p} to {mineplex.chestpoint.%{_l}%} | |
send "&9Treasure> &7Choose 4 chests to open" to {_p} | |
wait 1.2 seconds | |
set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest | |
set {_get} to getPlayerdata({_p}, "stats.global.chests") | |
set {_cur} to {_get} parsed as a number | |
add 1 to {_cur} | |
setPlayerdata({_p}, "stats.global.chests", "%{_cur}%") | |
if {_c} is 2: | |
if {ancientchests.%{_p}%} < 1: | |
close {_p}'s inventory | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 1 tick | |
format slot 4 of {_p} with prismarine shard named "&b&l5000 Shards" to be unstealable | |
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 | |
format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 33 of {_p} with redstone block named "&cNO" to close | |
format slot 34 of {_p} with redstone block named "&cNO" to close | |
format slot 35 of {_p} with redstone block named "&cNO" to close | |
format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 42 of {_p} with redstone block named "&cNO" to close | |
format slot 43 of {_p} with redstone block named "&cNO" to close | |
format slot 44 of {_p} with redstone block named "&cNO" to close | |
format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)] | |
format slot 51 of {_p} with redstone block named "&cNO" to close | |
format slot 52 of {_p} with redstone block named "&cNO" to close | |
format slot 53 of {_p} with redstone block named "&cNO" to close | |
if {ancientchests.%{_p}%} >= 1: | |
remove 1 from {ancientchests.%{_p}%} | |
set {mineplex.chestbusy.%{_l}%.} to {_p} | |
send {_p} title "&6Ancient Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds | |
set {mineplex.inchest.%{_p}%} to {_l} | |
set block at {mineplex.chestpoint.%{_l}%} to air | |
teleport {_p} to {mineplex.chestpoint.%{_l}%} | |
send "&9Treasure> &7Choose 4 chests to open" to {_p} | |
wait 2.5 seconds | |
set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest | |
if {_c} is 3: | |
if {mythicalchests.%{_p}%} < 1: | |
close {_p}'s inventory | |
wait 2 ticks | |
open chest with 6 rows named " Confirmation" to {_p} | |
wait 1 tick | |
format slot 4 of {_p} with prismarine shard named "&b&l10000 Shards" to be unstealable | |
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 | |
format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 33 of {_p} with redstone block named "&cNO" to close | |
format slot 34 of {_p} with redstone block named "&cNO" to close | |
format slot 35 of {_p} with redstone block named "&cNO" to close | |
format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 42 of {_p} with redstone block named "&cNO" to close | |
format slot 43 of {_p} with redstone block named "&cNO" to close | |
format slot 44 of {_p} with redstone block named "&cNO" to close | |
format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)] | |
format slot 51 of {_p} with redstone block named "&cNO" to close | |
format slot 52 of {_p} with redstone block named "&cNO" to close | |
format slot 53 of {_p} with redstone block named "&cNO" to close | |
if {mythicalchests.%{_p}%} >= 1: | |
remove 1 from {mythicalchests.%{_p}%} | |
set {mineplex.chestbusy.%{_l}%.} to {_p} | |
send {_p} title "&cMythical Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds | |
set {mineplex.inchest.%{_p}%} to {_l} | |
set block at {mineplex.chestpoint.%{_l}%} to air | |
teleport {_p} to {mineplex.chestpoint.%{_l}%} | |
send "&9Treasure> &7Choose 4 chests to open" to {_p} | |
wait 2.5 seconds | |
set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest | |
set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest | |
on inventory click: | |
if inventory name of player's current inventory is " Confirmation": | |
cancel event | |
close player's inventory | |
function TreasurePage(p: player , n: number , c: number) :: player: | |
if {_N} is 2: | |
if {_C} is 1: | |
close {_p}'s inventory | |
wait 4 ticks | |
open chest with 6 rows named "Open Treasure - Page 2" to {_p} | |
wait 2 ticks | |
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}] | |
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}] | |
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}] | |
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}] | |
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}] | |
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}] | |
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 | |
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}] | |
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}] | |
format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 1)] | |
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 | |
else if {_C} is 2: | |
close {_p}'s inventory | |
wait 4 ticks | |
open chest with 6 rows named "Open Treasure - Page 2" to {_p} | |
wait 2 ticks | |
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}] | |
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}] | |
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}] | |
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 | |
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}] | |
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}] | |
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}] | |
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}] | |
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}] | |
format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 2)] | |
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 | |
else if {_C} is 3: | |
close {_p}'s inventory | |
wait 4 ticks | |
open chest with 6 rows named "Open Treasure - Page 2" to {_p} | |
wait 2 ticks | |
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}] | |
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}] | |
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}] | |
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 | |
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 | |
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}] | |
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}] | |
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}] | |
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}] | |
format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 3)] | |
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 | |
else if {_C} is 4: | |
close {_p}'s inventory | |
wait 4 ticks | |
open chest with 6 rows named "Open Treasure - Page 2" to {_p} | |
wait 2 ticks | |
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 | |
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 | |
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 | |
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 | |
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}] | |
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}] | |
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}] | |
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}] | |
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}] | |
format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 4)] | |
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 | |
if {_N} is 1: | |
if {_C} is 1: | |
wait 2 ticks | |
open chest with 6 rows named "Open Treasure - Page 1" to {_p} | |
wait 2 ticks | |
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)] | |
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)] | |
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)] | |
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}] | |
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}] | |
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}] | |
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 | |
format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 1)] | |
if {_C} is 2: | |
wait 2 ticks | |
open chest with 6 rows named "Open Treasure - Page 1" to {_p} | |
wait 2 ticks | |
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)] | |
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)] | |
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)] | |
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}] | |
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}] | |
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}] | |
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 | |
format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 2)] | |
if {_C} is 3: | |
wait 2 ticks | |
open chest with 6 rows named "Open Treasure - Page 1" to {_p} | |
wait 2 ticks | |
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)] | |
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)] | |
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)] | |
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}] | |
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}] | |
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}] | |
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 | |
format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 3)] | |
if {_C} is 4: | |
wait 2 ticks | |
open chest with 6 rows named "Open Treasure - Page 1" to {_p} | |
wait 2 ticks | |
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)] | |
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)] | |
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)] | |
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}] | |
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}] | |
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}] | |
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 | |
format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 4)] | |
command /givetreasure [<string>] [<number>] [<offline player>]: | |
permission: mineplex.support | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg-1 is set: | |
if arg-2 is set: | |
if arg-2 is an integer: | |
if arg-3 is set: | |
if arg-1 is "Mythical": | |
add arg-2 to {mythicalchests.%arg-3%} | |
message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Mythical Treasure Chests." to sender | |
message "&9Treasure> &7You recieved &e%arg-2% &7Mythical Treasure Chests." to arg-3 | |
stop | |
else if arg-1 is "Ancient": | |
add arg-2 to {ancientchests.%arg-3%} | |
message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Ancient Treasure Chests." to sender | |
message "&9Treasure> &7You recieved &e%arg-2% &7Ancient Treasure Chests." to arg-3 | |
stop | |
else if arg-1 is "old": | |
add arg-2 to {oldchests.%arg-3%} | |
message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Old Treasure Chests." to sender | |
message "&9Treasure> &7You recieved &e%arg-2% &7Old Treasure Chests." to arg-3 | |
stop | |
else: | |
send "&9Treasure> &7Unknown Treasure [&e%arg-1%&7]." to sender | |
stop | |
else: | |
send "&9Treasure> &7Please specify a player" to sender | |
stop | |
else if arg-2 is not an integer: | |
send "&9Treasure> &7Unknown Integer [&e%arg-2%&7]." to sender | |
stop | |
else: | |
send "&9Treasure> &7Please specify an amount." to sender | |
stop | |
else: | |
send "&9Treasure> &7Listing Commands:" to sender | |
send "&4/GiveTreasure <treasure> <amount> <name> &7Gives a player some treasure chests &4Admin" to sender | |
stop | |
every 5 ticks: | |
loop all players: | |
if {mineplex.inchest.%loop-player%} is set: | |
set {_di} to distance between {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%} and loop-player | |
if {_di} is greater than 3.11: | |
teleport loop-player to {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%} | |
every 5 ticks: | |
loop all players: | |
if {mineplex.inchest.%loop-player%} is set: | |
loop players in radius 4 of loop-player: | |
if loop-player-2 is not loop-player-1: | |
if {mineplex.pref.ff.%loop-player-2%} is false: | |
push the loop-player-2 upwards at speed 0.925 | |
push the loop-player-2 backwards at speed 0.825 | |
play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10 | |
on right click on chest: | |
if player's tool is a chest: | |
if name of player's tool is "&aCosmetic Menu": | |
stop | |
else: | |
send "&9MCR> &e##BlameWheezy" | |
else: | |
if event-block is {mineplex.chestpoint.1}: | |
cancel event | |
TreasurePage(player, 1, 1) | |
if event-block is {mineplex.chestpoint.2}: | |
cancel event | |
TreasurePage(player, 1, 2) | |
if event-block is {mineplex.chestpoint.3}: | |
cancel event | |
TreasurePage(player, 1, 3) | |
if event-block is {mineplex.chestpoint.4}: | |
cancel event | |
TreasurePage(player, 1, 4) | |
on right click: | |
target block of player is chest or ender chest | |
if player's tool is a chest: | |
if name of player's tool is "&aCosmetic Menu": | |
stop | |
else: | |
send "&9MCR> &e##BlameWheezy" | |
else: | |
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}: | |
if {mineplex.inchest.%player%} is set: | |
if {mineplex.chestsopened.%player%} is not set: | |
set {mineplex.chestsopened.%player%} to 1 | |
cancel event | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is 3: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
wait 3 seconds | |
resetPoints(player, 1) | |
execute player command "/hub" | |
stop | |
else if {mineplex.chestsopened.%player%} is 1 or 2: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3: | |
cancel event | |
else: | |
cancel event | |
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}: | |
if {mineplex.inchest.%player%} is set: | |
if {mineplex.chestsopened.%player%} is not set: | |
set {mineplex.chestsopened.%player%} to 1 | |
cancel event | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is 3: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
wait 3 seconds | |
resetPoints(player, 2) | |
execute player command "/hub" | |
stop | |
else if {mineplex.chestsopened.%player%} is 1 or 2: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3: | |
cancel event | |
else: | |
cancel event | |
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}: | |
if {mineplex.inchest.%player%} is set: | |
if {mineplex.chestsopened.%player%} is not set: | |
set {mineplex.chestsopened.%player%} to 1 | |
cancel event | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is 3: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
wait 3 seconds | |
resetPoints(player, 3) | |
execute player command "/hub" | |
stop | |
else if {mineplex.chestsopened.%player%} is 1 or 2: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3: | |
cancel event | |
else: | |
cancel event | |
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}: | |
if {mineplex.inchest.%player%} is set: | |
if {mineplex.chestsopened.%player%} is not set: | |
set {mineplex.chestsopened.%player%} to 1 | |
cancel event | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is 3: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
wait 3 seconds | |
resetPoints(player, 4) | |
execute player command "/hub" | |
stop | |
else if {mineplex.chestsopened.%player%} is 1 or 2: | |
cancel event | |
add 1 to {mineplex.chestsopened.%player%} | |
make the event-block appear open | |
rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1) | |
loop all players: | |
show 200 "flame" particles at location 0.1 metres above event-block for loop-player | |
stop | |
else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3: | |
cancel event | |
else: | |
cancel event | |
on quit: | |
set {_p} to player | |
if {mineplex.inchest.%{_p}%} is set: | |
resetPoints({_p}, {mineplex.inchest.%{_p}%}) | |
delete {mineplex.inchest.%{_p}%} | |
#Scoreboard | |
function animSB(p: player) :: text: | |
while {_p} is online: | |
set {_l} to the length of {mineplex.sb.anim.%{_p}%} | |
remove 15 from {_l} | |
set {_char} to 0 | |
loop {_l} times: | |
if {_p} is online: | |
wipe {_p}'s sidebar | |
set name of sidebar of {_p} to "&f&l%subtext of {mineplex.sb.anim.%{_p}%} from characters {_char} to ({_char} + 15)%" | |
set score "&b&lServer" in sidebar of {_p} to 15 | |
set score "&f%{mineplex.config.world}%" in sidebar of {_p} to 14 | |
set score "&1 " in sidebar of {_p} to 13 | |
set score "&a&lGems" in sidebar of {_p} to 12 | |
set score "&r%{mineplex.gems.%{_p}%}%" in sidebar of {_p} to 11 | |
set score "&2 " in sidebar of {_p} to 10 | |
set score "&e&lShards" in sidebar of {_p} to 9 | |
set score "&f%{mineplex.shards.%{_p}%}%" in sidebar of {_p} to 8 | |
set score "&3 " in sidebar of {_p} to 7 | |
set score "&6&lRank" in sidebar of {_p} to 6 | |
set score "&f%{mineplex.api.displayrank.%{_p}%}%" in sidebar of {_p} to 5 | |
set score "&4 " in sidebar of {_p} to 4 | |
set score "&c&lWebsite" in sidebar of {_p} to 3 | |
set score "&f%{mineplex.config.website}%" in sidebar of {_p} to 2 | |
set score "&f----------------" in sidebar of {_p} to 1 | |
set {mineplex.sbdisplay.name.%{_p}%} to "&f&l%subtext of {mineplex.sb.anim.%{_p}%} from characters {_char} to ({_char} + 15)%" | |
add 1 to {_char} | |
wait 3 ticks | |
else: | |
stop | |
on join: | |
if {mineplex.usescoreboard} is false: | |
stop | |
set {mineplex.sb.anim.%player%} to " Welcome %player%, to the %{mineplex.config.servername}% Network! " | |
animSB(player) | |
#every 2 seconds: | |
#if {mineplex.usescoreboard} is false: | |
#stop | |
#else: | |
#loop all players: | |
#wipe loop-player's sidebar | |
#set {_fc} to convert string {mineplex.config.servername} to uppercase | |
#set name of sidebar of loop-player to "" | |
#set score "&b&lServer" in sidebar of loop-player to 15 | |
#set score "&f%{mineplex.config.world}%" in sidebar of loop-player to 14 | |
#set score "&1 " in sidebar of loop-player to 13 | |
#set score "&a&lGems" in sidebar of loop-player to 12 | |
#set score "&r%{mineplex.gems.%loop-player%}%" in sidebar of loop-player to 11 | |
#set score "&2 " in sidebar of loop-player to 10 | |
#set score "&e&lShards" in sidebar of loop-player to 9 | |
#set score "&f%{mineplex.shards.%loop-player%}%" in sidebar of loop-player to 8 | |
#set score "&3 " in sidebar of loop-player to 7 | |
#set score "&6&lRank" in sidebar of loop-player to 6 | |
#set score "&f%{mineplex.api.displayrank.%loop-player%}%" in sidebar of loop-player to 5 | |
#set score "&4 " in sidebar of loop-player to 4 | |
#set score "&c&lWebsite" in sidebar of loop-player to 3 | |
#set score "&f%{mineplex.config.website}%" in sidebar of loop-player to 2 | |
#set score "&f----------------" in sidebar of loop-player to 1 | |
#Rank Loader | |
function rankLoad(p: player , n: number , t: number) :: string: | |
if {_n} is 1: | |
if {mineplex.testrank.%{_p}%} is set: | |
if {_t} is 0: | |
set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%} | |
delete {mineplex.testrank.%{_p}%} | |
if {mineplex.rank.%{_p}%} is not set: | |
set {mineplex.rank.%{_p}%} to "" | |
if {mineplex.rank.%{_p}%} is "": | |
execute console command "/rank set %{_p}% ALL" | |
set {_p} tab name to "&e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&fPlayer" | |
set {mineplex.colora.%{_p}%} to "§f" | |
return "&fPlayer" | |
if {mineplex.rank.%{_p}%} is "&b&lULTRA ": | |
execute console command "/rank set %{_p}% ULTRA" | |
set {_p} tab name to "&b&lULTRA &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&bUltra" | |
set {mineplex.colora.%{_p}%} to "§b" | |
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}%" | |
return "&bUltra" | |
if {mineplex.rank.%{_p}%} is "&d&lHERO ": | |
execute console command "/rank set %{_p}% HERO" | |
set {_p} tab name to "&d&lHERO &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&dHero" | |
set {mineplex.colora.%{_p}%} to "§d" | |
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}%" | |
return "&dHero" | |
if {mineplex.rank.%{_p}%} is "&a&lLEGEND ": | |
execute console command "/rank set %{_p}% LEGEND" | |
set {_p} tab name to "&a&lLEGEND &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&aLegend" | |
set {mineplex.colora.%{_p}%} to "§a" | |
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}%" | |
return "&aLegend" | |
if {mineplex.rank.%{_p}%} is "&c&lTITAN ": | |
execute console command "/rank set %{_p}% TITAN" | |
set {_p} tab name to "&c&lTITAN &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&cTitan" | |
set {mineplex.colora.%{_p}%} to "§c" | |
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}%" | |
return "&cTitan" | |
if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ": | |
execute console command "/rank set %{_p}% TRAINEE" | |
loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3 | |
if loop-value is {_p}: | |
set {_p} tab name to "&6&lP.TRAINEE &e%{_p}%" | |
else: | |
set {_p} tab name to "&6&lTRAINEE &e%{_p}%" | |
set {_p} tab name to "&6&lTRAINEE &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6Trainee" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6Trainee" | |
if {mineplex.rank.%{_p}%} is "&6&lMOD ": | |
execute console command "/rank set %{_p}% MODERATOR" | |
loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3 | |
if loop-value is {_p}: | |
set {_p} tab name to "&6&lP.MOD &e%{_p}%" | |
else: | |
set {_p} tab name to "&6&lMOD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6Mod" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6Mod" | |
if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ": | |
execute console command "/rank set %{_p}% SNR_MODERATOR" | |
loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3 | |
if loop-value is {_p}: | |
set {_p} tab name to "&6&lP.SR.MOD &e%{_p}%" | |
else: | |
set {_p} tab name to "&6&lSR.MOD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6Sr.Mod" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6Sr.Mod" | |
if {mineplex.rank.%{_p}%} is "&6&lC.MOD ": | |
execute console command "/rank set %{_p}% CLANS_MOD" | |
set {_p} tab name to "&6&lC.MOD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6C.Mod" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6C.Mod" | |
if {mineplex.rank.%{_p}%} is "&4&lADMIN ": | |
execute console command "/rank set %{_p}% ADMIN" | |
loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3 | |
if loop-value is {_p}: | |
set {_p} tab name to "&6&lP.ADMIN &e%{_p}%" | |
else: | |
set {_p} tab name to "&4&lADMIN &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Admin" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Admin" | |
if {mineplex.rank.%{_p}%} is "&9&lAPEX ": | |
execute console command "/rank set %{_p}% APEX" | |
set {_p} tab name to "&9&lAPEX &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&9Apex" | |
set {mineplex.colora.%{_p}%} to "§4" | |
set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!" | |
return "&9Apex" | |
if {mineplex.rank.%{_p}%} is "&4&lLEADER ": | |
execute console command "/rank set %{_p}% LEADER" | |
loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3 | |
if loop-value is {_p}: | |
set {_p} tab name to "&6&lP.LEADER &e%{_p}%" | |
else: | |
set {_p} tab name to "&4&lLEADER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Leader" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Leader" | |
if {mineplex.rank.%{_p}%} is "&4&lOWNER ": | |
execute console command "/rank set %{_p}% OWNER" | |
loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3 | |
if loop-value is {_p}: | |
set {_p} tab name to "&6&lP.OWNER &e%{_p}%" | |
else: | |
set {_p} tab name to "&4&lOWNER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Owner" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Owner" | |
if {mineplex.rank.%{_p}%} is "&9&lBUILDER ": | |
execute console command "/rank set %{_p}% BUILDER" | |
set {_p} tab name to "&9&lBUIDLER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&9Mapper" | |
set {mineplex.colora.%{_p}%} to "§9" | |
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." | |
return "&9Builder" | |
if {mineplex.rank.%{_p}%} is "&9&lMAPPER ": | |
execute console command "/rank set %{_p}% MAPPER" | |
set {_p} tab name to "&9&lMAPPER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&9Mapper" | |
set {mineplex.colora.%{_p}%} to "§9" | |
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!" | |
return "&9Mapper" | |
if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ": | |
execute console command "/rank set %{_p}% MAPLEAD" | |
set {_p} tab name to "&9&lMAPLEAD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&9MapLead" | |
set {mineplex.colora.%{_p}%} to "§9" | |
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." | |
return "&9MapLead" | |
if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ": | |
execute console command "/rank set %{_p}% JNR_DEV" | |
set {mineplex.displaya.%{_p}%} to "&6Jr.Dev" | |
set {mineplex.colora.%{_p}%} to "§c" | |
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." | |
return "&6Jr.Dev" | |
if {mineplex.rank.%{_p}%} is "&4&lDEV ": | |
execute console command "/rank set %{_p}% DEVELOPER" | |
set {_p} tab name to "&4&lDEV &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Dev" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Dev" | |
if {mineplex.rank.%{_p}%} is "&5&lTWITCH ": | |
execute console command "/rank set %{_p}% TWITCH" | |
set {_p} tab name to "&5&lTWITCH &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&5Twitch" | |
set {mineplex.colora.%{_p}%} to "§5" | |
set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams." | |
return "&5Twitch" | |
if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ": | |
execute console command "/rank set %{_p}% YOUTUBE" | |
set {_p} tab name to "&c&lYOUTUBE &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&cYouTube" | |
set {mineplex.colora.%{_p}%} to "§c" | |
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." | |
return "&cYouTube" | |
if {mineplex.rank.%{_p}%} is "&f&lEVENT ": | |
execute console command "/rank set %{_p}% EVENT" | |
set {_p} tab name to "&f&lEVENT &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&fEvent" | |
set {mineplex.colora.%{_p}%} to "§f" | |
set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???" | |
return "&fEvent" | |
if {mineplex.rank.%{_p}%} is "&5&lYT ": | |
execute console command "/rank set %{_p}% YT" | |
set {_p} tab name to "&5&lYT &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&5YT" | |
set {mineplex.colora.%{_p}%} to "§5" | |
set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex." | |
return "&5YT" | |
if {mineplex.rank.%{_p}%} is "&3&lETERNAL ": | |
execute console command "/rank set %{_p}% ETERNAL" | |
set {_p} tab name to "&3&lETERNAL &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&3Eternal" | |
set {mineplex.colora.%{_p}%} to "§3" | |
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}%" | |
return "&3Eternal" | |
if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ": | |
execute console command "/rank set %{_p}% SUPPORT" | |
set {mineplex.displaya.%{_p}%} to "&9Support" | |
set {mineplex.colora.%{_p}%} to "§9" | |
set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service." | |
return "&9Support" | |
if {mineplex.rank.%{_p}%} is "&9&lARTIST ": | |
execute console command "/rank set %{_p}% ARTIST" | |
set {mineplex.displaya.%{_p}%} to "&9Artist" | |
set {mineplex.colora.%{_p}%} to "§9" | |
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." | |
return "&9Artist" | |
else if {_n} is 2: | |
if {mineplex.testrank.%{_p}%} is set: | |
if {_t} is 0: | |
set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%} | |
delete {mineplex.testrank.%{_p}%} | |
if {mineplex.rank.%{_p}%} is not set: | |
set {mineplex.rank.%{_p}%} to "" | |
if {mineplex.rank.%{_p}%} is "": | |
set {_p} tab name to "&e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&fPlayer" | |
set {mineplex.colora.%{_p}%} to "§f" | |
return "&fPlayer" | |
if {mineplex.rank.%{_p}%} is "&b&lULTRA ": | |
set {_p} tab name to "&b&lULTRA &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&bUltra" | |
set {mineplex.colora.%{_p}%} to "§b" | |
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}%" | |
return "&bUltra" | |
if {mineplex.rank.%{_p}%} is "&d&lHERO ": | |
set {_p} tab name to "&d&lHERO &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&dHero" | |
set {mineplex.colora.%{_p}%} to "§d" | |
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}%" | |
return "&dHero" | |
if {mineplex.rank.%{_p}%} is "&a&lLEGEND ": | |
set {_p} tab name to "&a&lLEGEND &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&aLegend" | |
set {mineplex.colora.%{_p}%} to "§a" | |
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}%" | |
return "&aLegend" | |
if {mineplex.rank.%{_p}%} is "&c&lTITAN ": | |
set {_p} tab name to "&c&lTITAN &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&cTitan" | |
set {mineplex.colora.%{_p}%} to "§c" | |
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}%" | |
return "&cTitan" | |
if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ": | |
set {_p} tab name to "&6&lTRAINEE &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6Trainee" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6Trainee" | |
if {mineplex.rank.%{_p}%} is "&6&lMOD ": | |
set {_p} tab name to "&6&lMOD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6Mod" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6Mod" | |
if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ": | |
set {_p} tab name to "&6&lSR.MOD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6Sr.Mod" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6Sr.Mod" | |
if {mineplex.rank.%{_p}%} is "&6&lC.MOD ": | |
set {_p} tab name to "&6&lC.MOD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&6C.Mod" | |
set {mineplex.colora.%{_p}%} to "§6" | |
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." | |
return "&6C.Mod" | |
if {mineplex.rank.%{_p}%} is "&4&lADMIN ": | |
set {_p} tab name to "&4&lADMIN &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Admin" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Admin" | |
if {mineplex.rank.%{_p}%} is "&9&lAPEX ": | |
set {_p} tab name to "&9&lAPEX &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&9Apex" | |
set {mineplex.colora.%{_p}%} to "§4" | |
set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!" | |
return "&9Apex" | |
if {mineplex.rank.%{_p}%} is "&4&lLEADER ": | |
set {_p} tab name to "&4&lLEADER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Leader" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Leader" | |
if {mineplex.rank.%{_p}%} is "&4&lOWNER ": | |
set {_p} tab name to "&4&lOWNER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Owner" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Owner" | |
if {mineplex.rank.%{_p}%} is "&9&lBUILDER ": | |
set {_p} tab name to "&9&lBUIDLER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&8Builder" | |
set {mineplex.colora.%{_p}%} to "§9" | |
set {mineplex.hover.%{_p}%} to "&9&lBUILDER%nl%&fThese creative staff members help build maps for your favorite games!" | |
return "&9Builder" | |
if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ": | |
set {_p} tab name to "&9&lMAPLEAD &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&9MapLead" | |
set {mineplex.colora.%{_p}%} to "§9" | |
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." | |
return "&9MapLead" | |
if {mineplex.rank.%{_p}%} is "&9&lMAPPER ": | |
set {_p} tab name to "&9&lMAPPER &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&9Mapper" | |
set {mineplex.colora.%{_p}%} to "§9" | |
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!" | |
return "&9Mapper" | |
if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ": | |
set {mineplex.displaya.%{_p}%} to "&6Jr.Dev" | |
set {mineplex.colora.%{_p}%} to "§c" | |
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." | |
return "&6Jr.Dev" | |
if {mineplex.rank.%{_p}%} is "&4&lDEV ": | |
set {_p} tab name to "&4&lDEV &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&4Dev" | |
set {mineplex.colora.%{_p}%} to "§4" | |
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." | |
return "&4Dev" | |
if {mineplex.rank.%{_p}%} is "&5&lTWITCH ": | |
set {_p} tab name to "&5&lTWITCH &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&5Twitch" | |
set {mineplex.colora.%{_p}%} to "§5" | |
set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams." | |
return "&5Twitch" | |
if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ": | |
set {_p} tab name to "&c&lYOUTUBE &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&cYouTube" | |
set {mineplex.colora.%{_p}%} to "§c" | |
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." | |
return "&cYouTube" | |
if {mineplex.rank.%{_p}%} is "&f&lEVENT ": | |
set {_p} tab name to "&f&lEVENT &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&fEvent" | |
set {mineplex.colora.%{_p}%} to "§f" | |
set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???" | |
return "&fEvent" | |
if {mineplex.rank.%{_p}%} is "&5&lYT ": | |
set {_p} tab name to "&5&lYT &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&5YT" | |
set {mineplex.colora.%{_p}%} to "§5" | |
set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex." | |
return "&5YT" | |
if {mineplex.rank.%{_p}%} is "&3&lETERNAL ": | |
set {_p} tab name to "&3&lETERNAL &e%{_p}%" | |
set {mineplex.displaya.%{_p}%} to "&3Eternal" | |
set {mineplex.colora.%{_p}%} to "§3" | |
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}%" | |
return "&3Eternal" | |
if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ": | |
set {mineplex.displaya.%{_p}%} to "&9Support" | |
set {mineplex.colora.%{_p}%} to "§9" | |
set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service." | |
return "&9Support" | |
if {mineplex.rank.%{_p}%} is "&9&lARTIST ": | |
set {mineplex.displaya.%{_p}%} to "&9Artist" | |
set {mineplex.colora.%{_p}%} to "§9" | |
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." | |
return "&9Artist" | |
on death of player: | |
if attacker is a player: | |
if projectile is set: | |
set the death message to "&9Death> &e%victim% &7killed by &e%attacker% &7with &eArchery&7." | |
if attacker is not a player: | |
if attacker is set: | |
set {_dm} to 1st char in each word of "%attacker%" to caps | |
set the death message to "&9Death> &e%victim% &7killed by &e%{_dm}%&7." | |
on join: | |
wait 2 ticks | |
rankLoad(player, 1, 0) | |
loop all players: | |
updateRankAPI(loop-player) | |
on flight toggle: | |
if {mineplex.config.doublejump} is "true": | |
if {doublejump.%uuid of player%} is set: | |
if player's gamemode is not creative: | |
cancel event | |
delete {doublejump.%uuid of player%} | |
wait 1 tick | |
set player's flight state to false | |
push player upward at speed 0.3 | |
push player forward at speed 0.9 | |
play raw sound "mob.ghast.fireball" at player with pitch 2 volume 0.99 | |
else: | |
stop | |
else: | |
stop | |
else: | |
stop | |
on jump: | |
if player's gamemode is not creative: | |
if {doublejump.%uuid of player%} is not set: | |
if block below player is not air or water: | |
set player's flight state to true | |
set {doublejump.%uuid of player%} to true | |
else: | |
stop | |
else: | |
stop | |
else: | |
stop | |
on quit: | |
set {mineplex.rank.uuid.%uuid of player%} to {mineplex.rank.%player%} | |
#Chat System | |
on chat: | |
set {_get} to getPlayerdata(player, "muted") | |
if {_get} is "yes": | |
if {muted::%player%::type} is "perm": | |
send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent." | |
cancel event | |
stop | |
if {muted::%player%::type} is "temp": | |
set {_waited} to difference between now and {muted::%player%::when} | |
if {_waited} is less than {muted::%player%::time}: | |
send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%." | |
cancel event | |
stop | |
if message contains "hack" or "hax": | |
cancel event | |
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}%" | |
stop | |
if {mineplex.vanish.%player%} is false: | |
if {mineplex.chatslow} is set: | |
if player has permission "mineplex.mod": | |
set {_check} to mcs((player), (message)) | |
if {_check} is less than 0: | |
cancel event | |
delete {_check} | |
else: | |
if difference between {lastChat::%player%} and now < {mineplex.chatslow}: | |
cancel event | |
send "&9Chat> &7Chat slow enabled. Please wait." | |
else: | |
set {lastChat::%player%} to now | |
set {_check} to mcs((player), (message)) | |
if {_check} is less than 0: | |
cancel event | |
delete {_check} | |
else if {mineplex.chatsilence} is set: | |
if player has permission "mineplex.trainee": | |
set {_check} to mcs((player), (message)) | |
if {_check} is less than 0: | |
cancel event | |
delete {_check} | |
else: | |
cancel event | |
send "&9Chat> &7The chat is silenced." | |
else: | |
if {party.%player%.chat} is true: | |
if length of message is greater than 1: | |
if first character of message is "@": | |
cancel event | |
set message to subtext of message from characters 2 to (length of message) | |
loop {party.%{party.%player%}%::*}: | |
message "&5&lParty &f&l%player% &d%message%" to loop-value | |
else: | |
set {_check} to mcs((player), (message)) | |
if {_check} is less than 0: | |
cancel event | |
delete {_check} | |
else: | |
set {_check} to mcs((player), (message)) | |
if {_check} is less than 0: | |
cancel event | |
delete {_check} | |
else: | |
set {_check} to mcs((player), (message)) | |
if {_check} is less than 0: | |
cancel event | |
delete {_check} | |
else if {mineplex.vanish.%player%} is true: | |
send "&eYou can not chat while incognito." | |
cancel event | |
else: | |
set {mineplex.vanish.%player%} to false | |
set {_check} to mcs((player), (message)) | |
if {_check} is less than 0: | |
cancel event | |
delete {_check} | |
#Join, Quit, and Load Handlers | |
on join: | |
if player has permission "mineplex.admin": | |
$ thread | |
set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number | |
set {_c} to "{@MCRVER}" parsed as a number | |
if {_c} is greater than {_ver}: | |
send "&9MCR> &7You must be using some fancy indev version!" | |
send "&9MCR> &7or you're retarded and changed the version in the config!" | |
stop | |
else if {_c} is less than {_ver}: | |
send "&9MCR> &7Version &e%{_ver}% &7is ready for download" | |
else: | |
send "&9MCR> &7Your version of MCR is currently up to date!" | |
stop | |
send "&9MCR> &7Changelog:" | |
$ thread | |
set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v" | |
loop {_var1::*}: | |
send "%loop-value%" | |
loop {_var::*}: | |
send "&9MCR> &7Version &e%loop-value% &7is ready for download" | |
send "&9MCR> &7End of Changelog!" | |
if {mineplex.gadget.enabled} is not set: | |
set {mineplex.gadget.enabled} to true | |
if {mineplex.report.id} is not set: | |
set {mineplex.report.id} to 1 | |
if {mineplex.dj} is not set: | |
set {mineplex.dj} to true | |
if {mineplex.tntlauncher} is not set: | |
set {mineplex.tntlauncher} to true | |
if {poll.id.last} is not set: | |
set {poll.id.last} to 0 | |
if {mineplex.ff.list::%player%} is set: | |
if player does not have permission "mineplex.trainee": | |
delete {mineplex.ff.list::%player%} | |
delete {mineplex.pref.ff.%player%} | |
if {mineplex.totalaccounts.%ip address of player%::*} does not contain "%player%": | |
add "%player%" to {mineplex.totalaccounts.%ip address of player%::*} | |
on load: | |
#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 | |
set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number | |
set {_c} to "{@MCRVER}" parsed as a number | |
if {_c} is more than {_ver}: | |
broadcast "&9MCR> &7You must be using some fancy indev version!" | |
broadcast "&9MCR> &7or you're retarded and changed the version in the config!" | |
stop | |
else if {_c} is less than {_ver}: | |
broadcast "&9MCR> &7Version &e%{_ver}% &7is ready for download" | |
else: | |
broadcast "&9MCR> &7Your version of MCR is currently up to date!" | |
broadcast "&9MCR> &7Client Version: {@MCRVER}" | |
broadcast "&9MCR> &7Server Version: %{_ver}%" | |
stop | |
broadcast "&9MCR> &7Changelog:" | |
$ thread | |
set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v" | |
loop {_var1::*}: | |
broadcast "%loop-value%" | |
loop {_var::*}: | |
broadcast "&9MCR> &7Version &e%loop-value% &7is ready for download" | |
broadcast "&9MCR> &7End of Changelog!" | |
if {mineplex.gadget.enabled} is not set: | |
set {mineplex.gadget.enabled} to true | |
if {mineplex.report.id} is not set: | |
set {mineplex.report.id} to 1 | |
if {mineplex.dj} is not set: | |
set {mineplex.dj} to true | |
if {mineplex.tntlauncher} is not set: | |
set {mineplex.tntlauncher} to true | |
if {poll.id.last} is not set: | |
set {poll.id.last} to 0 | |
function runNews(p: player) :: boolean: | |
set {_sn} to convert string {mineplex.config.servername} to uppercase | |
send title from "&6&l%{_sn}%" and "%{mineplex.news.line1}%" to {_p} for 5, 70, 0 | |
wait 3 seconds | |
send title from "&6&l%{_sn}%" and "%{mineplex.news.line2}%" to {_p} for 1, 70, 0 | |
wait 3 seconds | |
send title from "&6&l%{_sn}%" and "%{mineplex.news.line3}%" to {_p} for 1, 70, 0 | |
wait 3 seconds | |
send title from "&6&l%{_sn}%" and "%{mineplex.news.line4}%" to {_p} for 1, 60, 5 | |
on join: | |
set join message to "&8Join> &7%player%" | |
updateRankAPI(player) | |
delete {mineplex.disguise.%player%} | |
execute console command "/ud %player%" | |
delete {mineplex.lastm.%player%} | |
delete {mineplex.lasta.%player%} | |
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 | |
if {mineplex.news.allow} is true: | |
runNews(player) | |
if {mineplex.vanish.%player%} is not set: | |
set {mineplex.vanish.%player%} to false | |
if {mineplex.overridechat} is not set: | |
set {mineplex.overridechat} to true | |
if {mineplex.vanish.%player%} is true: | |
send "" | |
send "" | |
send "&6&lYou are currently incognito" | |
send "&eThis means you are invisible to all except for those who are" | |
send "&4&lAdmin&f+" | |
send "" | |
send "" | |
if {mineplex.pref.hpv.%player%} is false: | |
hide all players from player | |
if {mineplex.pref.hpv.%player%} is not set: | |
set {mineplex.pref.hpv.%player%} to true | |
if {mineplex.pref.ff.%player%} is not set: | |
set {mineplex.pref.ff.%player%} to false | |
if {mineplex.ff.%player%} is not set: | |
set {mineplex.ff.%player%} to false | |
if {mineplex.pref.pm.%player%} is not set: | |
set {mineplex.pref.pm.%player%} to true | |
if {mineplex.pref.pc.%player%} is not set: | |
set {mineplex.pref.pc.%player%} to true | |
if {mineplex.pref.gwen.%player%} is not set: | |
set {mineplex.pref.gwen.%player%} to true | |
if {mineplex.pref.report.%player%} is not set: | |
set {mineplex.pref.report.%player%} to true | |
if {mineplex.shards.%player%} is not set: | |
set {mineplex.shards.%player%} to 0 | |
if {mineplex.gems.%player%} is not set: | |
set {mineplex.gems.%player%} to 0 | |
if {mineplex.particle.active.%player%} is not set: | |
set {mineplex.particle.active.%player%} to false | |
if {mineplex.arrorw.active} is not set: | |
set {mineplex.arrow.active} to false | |
if {mineplex.adminmode.%player%} is true: | |
set {mineplex.adminmode.%player%} to false | |
loop all players: | |
if {mineplex.vanish.%loop-player%} is true: | |
add loop-player to {%player%.vanishlist::*} | |
loop all players: | |
if loop-player does not have permission "mineplex.admin": | |
hide {%player%.vanishlist::*} from all players | |
delete {%player%.vanishlist::*} | |
delete {mineplex.tp.back.%player%} | |
if {mineplex.config.autoop} is "true": | |
if player has permission "mineplex.admin": | |
op the player | |
else: | |
deop the player | |
function newsinit(i: integer) :: number: | |
if {mineplex.mode} is "sql": | |
set {_get} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'" | |
if {_get} is not set: | |
update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('1', '§b§lMineplex Core Remake')" | |
update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('2', '§a§lThe best remake for Mineplex Commands')" | |
update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('3', '§3§lRate this on Spigot!')" | |
update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('4', '§c§lCheck me out on SkUnity!')" | |
set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'" | |
set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'" | |
set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'" | |
set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'" | |
set {mineplex.news.allow} to true | |
else: | |
set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'" | |
set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'" | |
set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'" | |
set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'" | |
else: | |
if {mineplex.news.line1} is not set: | |
set {mineplex.news.line1} to "§b§lMineplex Core Remake" | |
set {mineplex.news.line2} to "§a§lThe best remake for Mineplex Commands" | |
set {mineplex.news.line3} to "§3§lRate this on Spigot!" | |
set {mineplex.news.line4} to "§c§lCheck me out on SkUnity!" | |
set {mineplex.news.allow} to true | |
#NewsINIT | |
on load: | |
newsinit(1) | |
on quit: | |
set quit message to "&8Quit> &7%player%" | |
delete {mineplex.tp.back.%player%} | |
every second: | |
loop all players: | |
add 1 to {mineplex.time.%loop-player%} | |
#Forcefield | |
every 2 ticks: | |
loop all players: | |
if {mineplex.ff.list::%loop-player%} is set: | |
loop players in radius 4 of loop-player: | |
if {mineplex.pref.ff.%loop-player-2%} is false: | |
if loop-player-2 is not loop-player-1: | |
play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10 | |
push the loop-player-2 upwards at speed 0.3 | |
push the loop-player-2 backwards at speed 0.45 | |
play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10 | |
#2 Factor | |
command /2fareset <player>: | |
permission: op | |
trigger: | |
delete {mineplex.newauth.%uuid of arg-1%} | |
set {mineplex.authlock.%arg-1%} to false | |
delete {mineplex.newauthlast.%uuid of arg-1%} | |
on join: | |
wait 5 ticks | |
if player has permission "mineplex.2fa": | |
if {mineplex.newauth.%uuid of player%} is set: | |
set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now | |
set {_tc} to "1 day" parsed as a timespan | |
if {_t} is less than {_tc}: | |
send "&92FA> &7Authorized!" | |
else: | |
set {mineplex.authlock.%player%} to true | |
apply slowness 999 to player for 999 seconds | |
apply blindness 999 to player for 999 seconds | |
send "&92FA> &7Please enter your two-factor auth code" | |
send "&92FA> &c/2fa (code)" | |
else: | |
stop | |
on command: | |
if {mineplex.authlock.%player%} is true: | |
if executor is player: | |
if command is not "2fa": | |
cancel event | |
send "&92FA> &7Please enter your two-factor auth code" | |
send "&92FA> &c/2fa (code)" | |
on chat: | |
if {mineplex.authlock.%player%} is true: | |
cancel event | |
send "&92FA> &7Please enter your two-factor auth code" | |
send "&92FA> &c/2fa (code)" | |
on quit: | |
delete {autowarn.%player%} | |
#Mineplex Commands | |
command /2fa [<string>] [<string>]: | |
permission: mineplex.2fa | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.newauth.%uuid of player%} is not set: | |
if {authwarn.%player%} is not set: | |
send "&92FA> &7Hey There! This sets a code that you will have to remember for the rest of your life!" | |
send "&92FA> &7Do &e/2fa &7if you are 100%% sure!" | |
set {authwarn.%player%} to true | |
stop | |
else: | |
send "&92FA> &7Generating secret..." | |
set {_clientSecret} to a new two-factor base-32 secret code | |
send "&92FA> &7Saving secret..." | |
set {mineplex.newauth.%uuid of player%} to {_clientSecret} | |
send "&92FA> &7Secret key saved." | |
send "&92FA> &7You must enter this code into your Two-Factor App:%nl%&92FA> &e%{_clientSecret}%" | |
send "&92FA> &7Then redo /2fa with your code" | |
set {mineplex.authlock.%player%} to false | |
set {_t} to arg 1 parsed as an integer | |
if {_t} is a number: | |
send "&92FA> &7Authorized for 24 hours." | |
send "&92FA> &7Saving secret..." | |
wait 5 ticks | |
set {mineplex.newauth.%uuid of player%} to skutil hashed arg 1 using "MD5" | |
set {mineplex.authlock.%player%} to false | |
send "&92FA> &7Secret key saved." | |
else: | |
send "&92FA> &7Invalid authentication code (not a number)." | |
else: | |
set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now | |
set {_tc} to "1 day" parsed as a timespan | |
if {_t} is less than {_tc}: | |
send "&92FA> &7Authorized for 24 hours." | |
else: | |
set {_c} to the current two-factor code of secret code {mineplex.newauth.%uuid of player%} | |
set {_t} to arg 1 parsed as an integer | |
if {_t} is a number: | |
if {_c} is arg-1: | |
send "&92FA> &7Authorized for 24 hours." | |
send "&92FA> &7Saving secret..." | |
wait 5 ticks | |
remove slowness from the player | |
remove blindness from the player | |
set {mineplex.newauthlast.%uuid of player%} to now | |
set {mineplex.authlock.%player%} to false | |
send "&92FA> &7Secret key saved." | |
else: | |
send "&92FA> &7Invalid authentication code" | |
else: | |
send "&92FA> &7Invalid authentication code (not a number)." | |
command /tp [<text>] [<text>] [<text>] [<text>] [<text>]: | |
aliases: /teleport | |
permission: mineplex.mod | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg-1 is not set: | |
send "&9Teleport> &7Commands List:" | |
send "&6/tp <target> &7Teleport to Player &6Mod" | |
send "&6/tp b(ack) &7Undo Teleports &6Mod" | |
send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin" | |
send "&4/tp <player> <target> &7Teleport Player to Player &4Admin" | |
send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin" | |
send "&4/tp all &7Teleport All to Self &4Owner" | |
else: | |
if arg-2 is not set: | |
if arg-1 is set: | |
if arg-1 is not "all": | |
if arg-1 is not "here" or "h" or "back" or "b": | |
if arg-1 parsed as player is online: | |
set {mineplex.tp.back.%player%} to location of player | |
teleport player to arg-1 parsed as player's location | |
set {_t} to arg-1 parsed as player | |
send "&9Teleport> &7Teleported to &e%{_t}%&7." | |
stop | |
else: | |
send "&9Teleport> &7Locating &e%arg-1%&7..." | |
wait 5 seconds | |
send "&9Teleport> &7Could not locate &e%arg-1%&7." | |
stop | |
if arg-1 is "all": | |
if player has permission "mineplex.owner": | |
teleport all players to player | |
send "&9Teleport> &7You teleported &e%amount of players% Players &7to yourself." | |
broadcast "&9Teleport> &7You teleported to &e%player%&7." | |
stop | |
else: | |
send "&9Permissions> &7You do not have permission to do that." | |
stop | |
if arg 4 is set: | |
if arg-1 parsed as player is online: | |
set {_p} to arg-1 parsed as a player | |
set {_x} to arg-2 parsed as a number | |
set {_y} to arg-3 parsed as a number | |
set {_z} to arg-4 parsed as a number | |
if {_x} is not set: | |
send "&9Teleport> &7Invalid X-Coordinate [&e%arg-2%&7]." | |
stop | |
if {_y} is not set: | |
send "&9Teleport> &7Invalid Y-Coordinate [&e%arg-3%&7]." | |
stop | |
if {_z} is not set: | |
send "&9Teleport> &7Invalid Z-Coordinate [&e%arg-4%&7]." | |
stop | |
teleport {_p} to the location at {_x}, {_y}, {_z} | |
send "&9Teleport> &7Teleported &e%{_p}% &7%{_x}%, %{_y}%, %{_z}%." | |
else: | |
send "&9Teleport> &7Locating &e%arg-1%&7..." | |
wait 5 seconds | |
send "&9Teleport> &7Could not locate &e%arg-1%&7." | |
if arg-1 is "here" or "h": | |
if player has permission "mineplex.admin": | |
if arg-3 is not set: | |
if arg-2 is set: | |
if arg-2 parsed as player is online: | |
teleport arg-2 parsed as player to player's location | |
send "&9Teleport> &7%player% teleported you to self." to arg-2 parsed as player | |
set {_t} to arg-2 parsed as player | |
send "&9Teleport> &7Teleported &e%arg-2% &7to self." | |
stop | |
else: | |
send "&9Teleport> &7Locating &e%arg-2%&7..." | |
wait 5 seconds | |
send "&9Teleport> &7Could not locate &e%arg-2%&7." | |
stop | |
else: | |
send "&9Permissions> &7You do not have permission to do that." | |
stop | |
if arg-2 is not set: | |
send "&9Teleport> &7Commands List:" | |
send "&6/tp <target> &7Teleport to Player &6Mod" | |
send "&6/tp b(ack) &7Undo Teleports &6Mod" | |
send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin" | |
send "&4/tp <player> <target> &7Teleport Player to Player &4Admin" | |
send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin" | |
send "&4/tp all &7Teleport All to Self &4Owner" | |
if arg-1 is "back" or "b": | |
if {mineplex.tp.back.%player%} is set: | |
set {_new} to {mineplex.tp.back.%player%} | |
set {mineplex.tp.back.%player%} to location of player | |
teleport player to {_new} | |
send "&9Teleport> &7You have been teleported to your previous location." | |
else: | |
send "&9Teleport> &7There is no place to teleport you back to." | |
stop | |
if arg-3 is not set: | |
if arg-2 is set: | |
if player has permission "mineplex.admin": | |
if arg-2 parsed as player is online: | |
if arg-1 parsed as player is online: | |
set {mineplex.tp.back.%player%} to location of player | |
teleport arg-1 parsed as player to arg-2 parsed as player | |
set {_t1} to arg-1 parsed as player | |
set {_t} to arg-2 parsed as player | |
send "&9Teleport> &e%{_t1}% &7was teleported to you." to arg-2 parsed as player | |
send "&9Teleport> &7You were teleported to &e%{_t}%&7." to arg-1 parsed as player | |
stop | |
else: | |
send "&9Teleport> &7Locating &e%arg-1%&7..." | |
wait 5 seconds | |
send "&9Teleport> &7Could not locate &e%arg-1%&7." | |
stop | |
else: | |
send "&9Teleport> &7Locating &e%arg-2%&7..." | |
wait 5 seconds | |
send "&9Teleport> &7Could not locate &e%arg-2%&7." | |
stop | |
else: | |
send "&9Permissions> &7You do not have permission to do that." | |
stop | |
command /time [<offline player>] [<string>]: | |
permission: mineplex.mod | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9Time> &7Usage: /time <playerName>" | |
else: | |
if {mineplex.time.%arg-1%} is not set: | |
set {mineplex.time.%arg-1%} to 0 | |
send "&9Time> &e%arg-1% &7has spent &e%{mineplex.time.%arg-1%}%.0 Seconds &7in game" | |
else: | |
set {_tm} to {mineplex.time.%arg-1%} | |
if {_tm} is less than 60: | |
send "&9Time> &e%arg-1% &7has spent &e%{_tm}%.0 Seconds &7in game" | |
stop | |
else if {_tm} is less than 3600: | |
set {_final} to {_tm} / 60 | |
send "&9Time> &e%arg-1% &7has spent &e%{_final}% Minutes &7in game" | |
stop | |
else if {_tm} is less than 86400: | |
set {_final} to {_tm} / 3600 | |
send "&9Time> &e%arg-1% &7has spent &e%{_final}% Hours &7in game" | |
stop | |
else if {_tm} is less than 604800: | |
set {_final} to {_tm} / 86400 | |
send "&9Time> &e%arg-1% &7has spent &e%{_final}% Days &7in game" | |
stop | |
else: | |
set {_final} to {_tm} / 604800 | |
send "&9Time> &e%arg-1% &7has spent &e%{_final}% Weeks &7in game" | |
command /disguise [<string>] [<string>]: | |
permission: mineplex.youtube | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
if {mineplex.disguise.%player%} is set: | |
send "&9Disguise> &7You are no longer disguised!" | |
execute console command "/ud %player%" | |
delete {mineplex.disguise.%player%} | |
set player tab name to "%{mineplex.rank.%player%}%&e%player%" | |
updateRankAPI(player) | |
else: | |
send "&9Disguise> &7You are not disguised. You can disguise with /disguise <username>" | |
else: | |
if {mineplex.disguise.%player%} is set: | |
send "&9Disguise> &7You are already disguised. Please undisguise by using /disguise" | |
else: | |
set {_n} to the length of arg 1 | |
if {_n} is greater than 16: | |
send "&9Disguise> &7The chosen name of &e%arg-1% &7is &e%{_n} - 16% &7characters too long!" | |
stop | |
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 "\": | |
send "&9Disguise> &7That disguise name is not permitted!" | |
stop | |
set {_p1} to arg-1 parsed as offline player | |
if {_p1} is online: | |
send "&9Disguise> &7This name already in use!" | |
stop | |
set {_ban} to getPlayerdata({_p1}, "banned") | |
set {_mute} to getPlayerdata({_p1}, "muted") | |
if {_ban} or {_muted} is "yes": | |
send "&9Disguise> &7You may not disguise as people who are muted or banned." | |
stop | |
set {_rank} to getPlayerdata({_p1}, "rank") | |
if {_rank} is set: #Not in the database | |
if {_rank} is not "" or "All" or "Ultra" or "Hero" or "Legend" or "Titan" or "Eternal": | |
send "&9Disguise> &7You may not disguise as users who are staff, youtubers, or twitchers." | |
stop | |
send "&9Disguise> &7Disguise Active: &f%arg-1%" | |
set {_localp} to arg 1 parsed as a player | |
rankLoad({_localp} , 2, 1) | |
if {mineplex.level.%arg-1%} is not set: | |
set {mineplex.level.%arg-1%} to "&70" | |
if {mineplex.rank.%arg-1%} is not set: | |
set {mineplex.rank.%arg-1%} to "" | |
execute console command "/odisguise %player% player %arg-1%" | |
set {mineplex.disguise.%player%} to arg-1 parsed as offline player | |
set {_player} to arg 1 | |
if {mineplex.rank.%{_player}%} is not set: | |
set {mineplex.rank.%{_player}%} to "" | |
set player tab name to "%{mineplex.rank.%{_player}%}%&e%arg-1%" | |
updateRankAPI(player) | |
command /api [<string>] [<string>] [<string>]: | |
trigger: | |
if arg 1 is not set: | |
send "&9API> &7Mineplex Core API" | |
send "&9API> &7/api (api name)" | |
send "&9API> &7Current API's; &adisplayrank&7, &adisplayname" | |
send "&9API> &7Use /api (api name) (player) to view a different players's api output" | |
else: | |
if arg 2 is set: | |
set {_p} to arg-2 | |
else: | |
set {_p} to "%player%" | |
if arg 1 is "displayrank": | |
if {mineplex.api.displayrank.%{_p}%} is not set: | |
set {mineplex.api.displayrank.%{_p}%} to "null" | |
send "&9API> &7Raw API Output; &f%{mineplex.api.displayrank.%{_p}%}%" | |
else if arg 1 is "displayname": | |
if {mineplex.api.displayname.%{_p}%} is not set: | |
set {mineplex.api.displayname.%{_p}%} to "null" | |
send "&9API> &7Raw API Output; &f%{mineplex.api.displayname.%{_p}%}%" | |
else: | |
send "&9API> &7Invalid API!" | |
command /give [<string>] [<string>] [<string>] [<string>] [<string>]: | |
aliases: /g, /item, /i | |
permission: mineplex.admin | |
permission message: &9Permissions> &7This requires Permission Rank [&9ADMIN&7]. | |
trigger: | |
if arg 1 is not set: | |
send "&9Give: &7Listing Commands:" | |
send "&4/give (item) Admin" | |
send "&4/give (player) (item) (amount) Admin" | |
send "&4/give (player) (item) (amount) (Enchantment:level) Admin" | |
send "&4/give all (item) (amount) Admin" | |
send "&4/give all (item) (amount) (Enchantment:level) Admin" | |
else if arg 5 is set: | |
send "&9Give: &7Listing Commands:" | |
send "&4/give (item) Admin" | |
send "&4/give (player) (item) (amount) Admin" | |
send "&4/give (player) (item) (amount) (Enchantment:level) Admin" | |
send "&4/give all (item) (amount) Admin" | |
send "&4/give all (item) (amount) (Enchantment:level) Admin" | |
else: | |
if arg 2 is not set: | |
set {_i1} to arg-1 | |
replace all "_" with " " in {_i1} | |
set {_i} to "%{_i1}%" parsed as an item | |
if {_i} is an item: | |
send "&9Give> &7You gave &e1 %{_i}% &7to &e%player%&7." | |
give player {_i} | |
else: | |
send "&9Item Search> &e0 &7matches for [&e%arg-1%&7]." | |
send "&9Item(s) Search> &7Invalid [&e%arg-1%&7]." | |
if arg 2 is set: | |
if arg 3 is set: | |
if arg 1 is "all": | |
set {_i1} to arg-2 | |
replace all "_" with " " in {_i1} | |
set {_i} to "%{_i1}%" parsed as an item | |
set {_a} to arg-3 parsed as a number | |
if {_i} is an item: | |
if {_a} is a number: | |
if arg 4 is set: | |
set {_e} to arg-4 parsed as text | |
set {_oe} to arg-4 parsed as text | |
replace all "_" with " " in {_e} | |
replace all ":" with " " in {_e} | |
if "%{_e}%" parsed as an enchantment type is an enchantment type: | |
set {_e} to "%{_e}%" parsed as an enchantment type | |
enchant {_i} with "%{_e}%" parsed as a enchantment type | |
else: | |
send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]." | |
send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &eALL&7." | |
send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to all players | |
loop all players: | |
loop {_a} times: | |
give loop-player {_i} | |
else: | |
send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]." | |
send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7." | |
send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players | |
loop all players: | |
give loop-player {_i} | |
else: | |
send "&9Item Search> &e0 &7matches for [&e%{_i1}%&7]." | |
send "&9Item(s) Search> &7Invalid [&e%{_i}%&7]." | |
else: | |
set {_i1} to arg-2 | |
replace all "_" with " " in {_i1} | |
set {_i} to "%{_i1}%" parsed as an item | |
set {_a} to arg-3 parsed as a number | |
set {_p} to arg-1 parsed as a player | |
if {_i} is an item: | |
if {_p} is online: | |
if {_a} is a number: | |
if arg 4 is set: | |
set {_e} to arg-4 parsed as text | |
set {_oe} to arg-4 parsed as text | |
replace all "_" with " " in {_e} | |
replace all ":" with " " in {_e} | |
if "%{_e}%" parsed as an enchantment type is an enchantment type: | |
set {_e} to "%{_e}%" parsed as an enchantment type | |
enchant {_i} with "%{_e}%" parsed as a enchantment type | |
else: | |
send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]." | |
send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &e%{_p}%&7." | |
send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to {_p} | |
loop {_a} times: | |
give {_p} {_i} | |
else: | |
send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]." | |
send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7." | |
send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p} | |
give {_p} {_i} | |
else: | |
send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]." | |
send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]." | |
stop | |
else: | |
send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]." | |
send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]." | |
else: | |
if arg 1 is "all": | |
set {_i1} to arg-2 | |
replace all "_" with " " in {_i1} | |
set {_i} to "%{_i1}%" parsed as an item | |
if {_i} is an item: | |
send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7." | |
send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players | |
loop all players: | |
give loop-player {_i} | |
else: | |
send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]." | |
send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]." | |
else: | |
set {_i1} to arg-2 | |
replace all "_" with " " in {_i1} | |
set {_i} to "%{_i1}%" parsed as an item | |
set {_p} to arg-1 parsed as a player | |
if {_i} is an item: | |
if {_p} is online: | |
send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7." | |
send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p} | |
give {_p} {_i} | |
else: | |
send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]." | |
send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]." | |
stop | |
else: | |
send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]." | |
send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]." | |
#/givestat player stat amount | |
command /givestat [<offline player>] [<string>] [<string>] [<string>]: | |
permission: mineplex.support | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9Stats> &e/givestat (player) (stat) (amount)" | |
else if arg 1 is set: | |
if arg 2 is set: | |
if arg 3 parsed as a number is set: | |
if arg 2 is "Global.ExpEarned": | |
set {_lvl} to arg 3 parsed as a number | |
if {_lvl} is less than 0: | |
send "&9Stats> &7Unknown value for &eGlobal.ExpEarned&7!" | |
stop | |
else if {_lvl} is less than 20: | |
set {_temp} to "&7%{_lvl}%" | |
set {mineplex.level.%arg-1%} to "%{_temp}%" | |
send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7." | |
setPlayerdata(arg-1, "level", "%{_lvl}%") | |
stop | |
else if {_lvl} is less than 40: | |
set {_temp} to "&9%{_lvl}%" | |
set {mineplex.level.%arg-1%} to "%{_temp}%" | |
send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7." | |
setPlayerdata(arg-1, "level", "%{_lvl}%") | |
stop | |
else if {_lvl} is less than 60: | |
set {_temp} to "&2%{_lvl}%" | |
set {mineplex.level.%arg-1%} to "%{_temp}%" | |
send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7." | |
setPlayerdata(arg-1, "level", "%{_lvl}%") | |
stop | |
else if {_lvl} is less than 80: | |
set {_temp} to "&6%{_lvl}%" | |
set {mineplex.level.%arg-1%} to "%{_temp}%" | |
send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7." | |
setPlayerdata(arg-1, "level", "%{_lvl}%") | |
stop | |
else if {_lvl} is less than or equal to 100: | |
set {_temp} to "&c%{_lvl}%" | |
set {mineplex.level.%arg-1%} to "%{_temp}%" | |
send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7." | |
setPlayerdata(arg-1, "level", "%{_lvl}%") | |
stop | |
else if arg 2 is "Global.GemsEarned": | |
set {_num} to arg 3 parsed as a number | |
set {_get} to getPlayerdata(arg-1, "stats.global.gems") | |
set {_cur} to {_get} parsed as a number | |
add {_num} to {_cur} | |
setPlayerdata(arg-1, "stats.global.gems", "%{_cur}%") | |
send "&9Stats> &7Applied &e%{_num}% Global.GemsEarned &7to &e%arg-1%&7." | |
else if arg 2 is "Global.GamesPlayed": | |
set {_num} to arg 3 parsed as a number | |
set {_get} to getPlayerdata(arg-1, "stats.global.games") | |
set {_cur} to {_get} parsed as a number | |
add {_num} to {_cur} | |
setPlayerdata(arg-1, "stats.global.games", "%{_cur}%") | |
send "&9Stats> &7Applied &e%{_num}% Global.GamesPlayed &7to &e%arg-1%&7." | |
else if arg 2 is "Global.DailyRewards": | |
set {_num} to arg 3 parsed as a number | |
set {_get} to getPlayerdata(arg-1, "stats.global.dailyr") | |
set {_cur} to {_get} parsed as a number | |
add {_num} to {_cur} | |
setPlayerdata(arg-1, "stats.global.dailyr", "%{_cur}%") | |
send "&9Stats> &7Applied &e%{_num}% Global.DailyRewards &7to &e%arg-1%&7." | |
else if arg 2 is "Global.TimesVoted": | |
set {_num} to arg 3 parsed as a number | |
set {_get} to getPlayerdata(arg-1, "stats.global.voted") | |
set {_cur} to {_get} parsed as a number | |
add {_num} to {_cur} | |
setPlayerdata(arg-1, "stats.global.voted", "%{_cur}%") | |
send "&9Stats> &7Applied &e%{_num}% Global.TimesVoted &7to &e%arg-1%&7." | |
else if arg 2 is "Global.ChestsOpened": | |
set {_num} to arg 3 parsed as a number | |
set {_get} to getPlayerdata(arg-1, "stats.global.chests") | |
set {_cur} to {_get} parsed as a number | |
add {_num} to {_cur} | |
setPlayerdata(arg-1, "stats.global.chests", "%{_cur}%") | |
send "&9Stats> &7Applied &e%{_num}% Global.ChestsOpened &7to &e%arg-1%&7." | |
else: | |
send "&9Stats> &e/givestat (player) (stat) (amount)" | |
else: | |
send "&9Stats> &e/givestat (player) (stat) (amount)" | |
else: | |
send "&9Stats> &e/givestat (player) (stat) (amount)" | |
command /stats [<offline player>] [<string>]: | |
trigger: | |
if arg 1 is not set: | |
set {_p} to player | |
set {_good} to true | |
else: | |
if arg 1 is online: | |
set {_p} to arg 1 | |
set {_good} to true | |
else: | |
send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]." | |
if {_good} is true: | |
open chest with 5 rows named "%{_p}%'s Stats" to player | |
wait 1 tick | |
set {_tm} to {mineplex.time.%{_p}%} | |
if {_tm} is less than 60: | |
set {_global.time} to "%{_final}%.0 Seconds" | |
else if {_tm} is less than 3600: | |
set {_final} to {_tm} / 60 | |
set {_global.time} to "%{_final}% Minutes" | |
else if {_tm} is less than 86400: | |
set {_final} to {_tm} / 3600 | |
set {_global.time} to "%{_final}% Hours" | |
else if {_tm} is less than 604800: | |
set {_final} to {_tm} / 86400 | |
set {_global.time} to "%{_final}% Days" | |
else: | |
set {_final} to {_tm} / 604800 | |
set {_global.time} to "%{_final}% Weeks" | |
set {_global.gems} to getPlayerdata({_p}, "stats.global.gems") | |
set {_global.games} to getPlayerdata({_p}, "stats.global.games") | |
set {_global.dailyr} to getPlayerdata({_p}, "stats.global.dailyr") | |
set {_global.voted} to getPlayerdata({_p}, "stats.global.voted") | |
set {_global.chests} to getPlayerdata({_p}, "stats.global.chests") | |
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 | |
command /mcr: | |
trigger: | |
send "&9Plugin> &7Mineplex Core" | |
send "&9Plugin> &7Running MCR: &e{@MCRVER}" | |
send "&9Plugin> &7Hotfix/Release Cycle: &e{@MCRHOTFIX}" | |
send "&9Plugin> &7by &aWheezyGold7931&7, &eOttelino&7, &eTheSkripterDK&7, &eTorksi&7, &7and &eItzRenderman" | |
send "&9Plugin> &7GitHub Contributors: NaiculS, termanator1128, IsGeorgeCurious, Techno3600, TreyRuffy, and WilliePlaysMC." | |
send "&9Plugin> &7Special thanks to SoftBreeze, Rezz, Boobah, TonyMaster21, LimeGlass, and Citrin_" | |
send "" | |
send "&9Patreon> &7Huge Thanks to my Patreons:" | |
send "&9Patreon> &eNone, anymore" | |
send "&9Patreon> &7If you want to be listed there than support me on Patreon!:" | |
send "&9Patreon> &bhttps://www.patreon.com/WheezyGold7931" | |
command /a [<text>]: | |
aliases: /admin | |
trigger: | |
if arg 1 is not set: | |
send "&9Admin> &7Corect Usage: /a (message)" | |
stop | |
if {mineplex.disguise.%player%} is set: | |
send "&9Admin> &7Disguised users cannot use /a while disguised!" | |
stop | |
else: | |
set {_p} to player | |
set {_get} to getPlayerdata(player, "muted") | |
if {_get} is "yes": | |
if {muted::%player%::type} is "perm": | |
send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent." | |
stop | |
if {muted::%player%::type} is "temp": | |
set {_waited} to difference between {muted::%player%::when} and now | |
if {_waited} is less than {muted::%player%::time}: | |
send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%." | |
stop | |
if {mineplex.rank.%{_p}%} is "": | |
set {_display} to "Player %{_p}%" | |
else: | |
set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%" | |
if player has permission "mineplex.trainee": | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "%{_display}% &d%arg-1%" to loop-player | |
play "NOTE_PLING" to loop-player at volume 0.5 | |
else: | |
send "%{_display}% &d%arg-1%" | |
play "NOTE_PLING" to player at volume 0.5 | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "%{_display}% &d%arg-1%" to loop-player | |
play "NOTE_PLING" to loop-player at volume 0.5 | |
command /ma [<player>] [<text>]: | |
permission: mineplex.trainee | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.disguise.%player%} is set: | |
send "&9Admin> &7Disguised users cannot use /a while disguised!" | |
stop | |
else: | |
set {_p} to player | |
if {mineplex.rank.%{_p}%} is "": | |
set {_display} to "&fPlayer %{_p}%" | |
else: | |
set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%" | |
if {mineplex.rank.%arg-1%} is "": | |
set {_display2} to "&fPlayer %arg-1%" | |
else: | |
set {_display2} to "%{mineplex.displaya.%arg-1%}% %arg-1%" | |
if player has permission "mineplex.trainee": | |
if argument 1 and argument 2 is set: | |
send "&d-> %{_display2}% &d%arg 2%" | |
send "&d<- %{_display}% &d%arg 2%" to arg-1 | |
set {mineplex.lasta.%player%} to arg-1 | |
play "NOTE_PLING" to player at volume 0.5 | |
play "NOTE_PLING" to arg-1 at volume 0.5 | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if loop-player is not player or arg-1: | |
send "%{_display}% &d-> %{_display2}% &d%arg 2%" to loop-player | |
else: | |
send "&9Message> &cErr...something went wrong?" | |
else: | |
send "&9Permissions> &7You do not have permission to do that." | |
command /ra [<text>]: | |
permission: mineplex.trainee | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.disguise.%player%} is set: | |
set {_p} to {mineplex.disguise.%player%} | |
else: | |
set {_p} to player | |
if {mineplex.rank.%{_p}%} is "": | |
set {_display} to "&fPlayer %{_p}%" | |
else: | |
set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%" | |
if {mineplex.rank.%{mineplex.lasta.%player%}%} is "": | |
set {_display2} to "&fPlayer %{mineplex.lasta.%player%}%" | |
else: | |
set {_display2} to "%{mineplex.displaya.%{mineplex.lasta.%player%}%}% %{mineplex.lasta.%player%}%" | |
if {mineplex.lasta.%player%} is not set: | |
send "&9Message> &7You have not messaged anyone recently." | |
stop | |
else: | |
if argument 1 is set: | |
send "&d-> %{_display2}% &d%arg 1%" | |
send "&d<- %{_display}% &d%arg-1%" to {mineplex.lasta.%player%} | |
play "NOTE_PLING" to player at volume 0.5 | |
play "NOTE_PLING" to {mineplex.lasta.%player%} at volume 0.5 | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if loop-player is not player or {mineplex.lasta.%player%}: | |
send "%{_display}% &d-> %{_display2}% &d%arg 1%" to loop-player | |
else: | |
send "&9Message> &cErr...something went wrong?" | |
command /vanish: | |
aliases: /incognito | |
permission: mineplex.trainee | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.vanish.%player%} is true: | |
loop all players: | |
loop-value doesn't have permission "mineplex.admin" | |
add loop-value to {_vanishto::*} | |
reveal player from all players | |
set {mineplex.vanish.%player%} to false | |
send "&9Moderation> &7Disabled moderator mode." | |
send "&9Incognito> &7You are no longer incognito. Your status will only change when you run &e/vanish &7again." | |
else: | |
loop all players: | |
loop-value doesn't have permission "mineplex.admin" | |
add loop-value to {_vanishto::*} | |
hide player from {_vanishto::*} | |
set {mineplex.vanish.%player%} to true | |
send "&9Moderation> &7Enabled moderator mode." | |
send "&9Incognito> &7You are now incognito. Your status will only change when you run &e/vanish &7again." | |
function friendButtons(p: player) :: number: | |
set {_t} to "Steve" parsed as an offline player | |
set slot 0 of {_p}'s current inventory to {_t}'s skull named "&fFriends" with lore "" | |
set slot 2 of {_p}'s current inventory to rose named "&fFriend Requests" with lore "" | |
set slot 4 of {_p}'s current inventory to tnt named "&fDelete Friends" with lore "" | |
set slot 6 of {_p}'s current inventory to book and quill named "&fSend Friend Request" with lore "" | |
set slot 8 of {_p}'s current inventory to sign item named "&7Toggle friends to display in chat" with lore "" | |
function friendClean(p: player) :: number: | |
set {_s} to 18 | |
loop 27 times: | |
set slot {_s} of {_p}'s current inventory to air | |
add 1 to {_s} | |
if {_s} = 44: | |
exit loop | |
friendButtons({_p}) | |
function friendMain(p: player) :: number: | |
open chest with 6 rows named "Friends" to {_p} | |
friendClean({_p}) | |
set {_s} to 18 | |
loop {friends.list.%{_p}%::*}: | |
set {_t} to "%loop-value%" parsed as offline player | |
if {_t} is online: | |
set {_a} to "&2Online" | |
set {_w} to "&e%{_t}'s world%" | |
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" | |
else: | |
set {_a} to "&cOffline" | |
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" | |
add 1 to {_s} | |
if {_s} = 44: | |
exit loop | |
function friendDel(p: player) :: number: | |
open chest with 6 rows named "Delete Friends" to {_p} | |
friendClean({_p}) | |
set {_s} to 18 | |
loop {friends.list.%{_p}%::*}: | |
set {_t} to "%loop-value%" parsed as offline player | |
if {_t} is online: | |
set {_a} to "&2Online" | |
set {_w} to "&e%{_t}'s world%" | |
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" | |
else: | |
set {_a} to "&cOffline" | |
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" | |
add 1 to {_s} | |
if {_s} = 44: | |
exit loop | |
function friendReq(p: player) :: number: | |
open chest with 6 rows named "Friend Requests" to {_p} | |
friendClean({_p}) | |
set {_s} to 18 | |
loop {friends.request.%{_p}%::*}: | |
set {_t} to "%loop-value%" parsed as offline player | |
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" | |
add 1 to {_s} | |
if {_s} = 44: | |
exit loop | |
command /friend [<string>] [<string>]: | |
aliases: /f | |
trigger: | |
if arg 1 is not set: | |
friendMain(player) | |
else: | |
if arg 1 is "%player%": | |
send "&9Friends> &7You cannot friend yourself!" | |
stop | |
stop | |
loop {friends.list.%arg-1%::*}: | |
if loop-value is "%player%": | |
set {_f} to true | |
loop {friends.request.%arg-1%::*}: | |
if loop-value is "%player%": | |
set {_a} to true | |
if {_a} is true: | |
send "&9Friends> &a%arg-1% &7has yet to respond to your friend request." | |
else if {_f} is true: | |
send "&9Friends> &7You are already friends with &a%arg-1%" | |
else: | |
add "%player%" to {friends.request.%arg-1%::*} | |
send "&9Friends> &7Added &a%arg-1% &7to your friends list!" | |
on inventory click: | |
if inventory name of player's current inventory is "Friends": | |
if clicked slot is 2: | |
friendReq(player) | |
if clicked slot is 4: | |
friendDel(player) | |
cancel event | |
if inventory name of player's current inventory is "Friend Requests": | |
if clicked slot is 0: | |
friendMain(player) | |
if clicked slot is 4: | |
friendDel(player) | |
else: | |
set {_n} to name of clicked item | |
if {_n} contains "&7Friend request from ": | |
replace all "&7Friend request from " with "" in {_n} | |
set {_f} to uncolored {_n} | |
remove {_f} from {friends.request.%player%::*} | |
add {_f} to {friends.list.%player%::*} | |
add "%player%" to {friends.list.%{_f}%::*} | |
send "&9Friends> &aYou &7and &a%{_f}% &7are now friends!" | |
friendReq(player) | |
cancel event | |
if inventory name of player's current inventory is "Delete Friends": | |
if clicked slot is 0: | |
friendMain(player) | |
if clicked slot is 2: | |
friendReq(player) | |
else: | |
if "%clicked item%" is "player head": | |
if clicked slot is not 0: | |
set {_n} to name of clicked item | |
set {_f} to uncolored {_n} | |
replace all " " with "" in {_f} | |
remove {_f} from {friends.list.%player%::*} | |
remove {_f} from {friends.list.%{_l}%::*} | |
send "&9Friends> &7Deleted &a%{_f}% &7from your friends list!" | |
friendDel(player) | |
cancel event | |
command /chatslow [<integer>]: | |
aliases: /cs | |
permission: mineplex.srmod | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.disguise.%player%} is set: | |
set {_p} to {mineplex.disguise.%player%} | |
else: | |
set {_p} to player | |
if argument 1 is set: | |
if {mineplex.chatsilence} is set: | |
send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat." | |
stop | |
else: | |
if {mineplex.chatslow} is not set: | |
set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan | |
send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players | |
else: | |
set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan | |
send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players | |
send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players | |
else: | |
if {mineplex.chatsilence} is set: | |
send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat." | |
stop | |
else: | |
if {mineplex.chatslow} is set: | |
delete {mineplex.chatslow} | |
send "&9Chat> &6%{_p}% &7has disabled chat slow." to all players | |
else: | |
send "&9Message> &cYou didn't enter a time limit! Defaulting to 10 seconds." | |
set {mineplex.chatslow} to "10 seconds" parsed as timespan | |
send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players | |
send "&9Chat> &6%{_p}% &7has set the chat delay to &610 &7seconds." to all players | |
command /silence: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.chatslow} is set: | |
delete {mineplex.chatslow} | |
send "&9Chat> &6%player% &7has disabled chat slow." to all players | |
set {mineplex.chatsilence} to true | |
send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players | |
stop | |
if {mineplex.chatsilence} is set: | |
delete {mineplex.chatsilence} | |
send "&9Chat> &7The chat is no longer silenced." to all players | |
else: | |
set {mineplex.chatsilence} to true | |
send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players | |
command /locate [<string>]: | |
aliases: /find, /where | |
permission: mineplex.trainee | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if argument 1 is set: | |
set {_tmp} to arg 1 parsed as an offline player | |
if {_tmp} is online: | |
set {_mineplex.locate.temp} to "%{_tmp}'s world%" | |
send "&9Locate> &7Located [&e%arg-1%&7] at &9%{_mineplex.locate.temp}%" | |
else: | |
send "&9Locate> &7Failed to locate [&e%arg-1%&7]." | |
else: | |
send "&9Locate> &7Player argument missing." | |
command /rank [<string>] [<offline player>] [<string>]: | |
permission: mineplex.support | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if argument 1 is not set: | |
send "&9Client Manager> &7Listing Commands:" | |
send "&4/rank set <player> <rank>: &fSets the target user's rank" | |
send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank" | |
stop | |
if argument 1 is not "set" or "test": | |
send "&9Client Manager> &7Listing Commands:" | |
send "&4/rank set <player> <rank>: &fSets the target user's rank" | |
send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank" | |
stop | |
if argument 1 is "set": | |
if argument 2 or argument 3 is not set: | |
send "&9Client Manager> &7Listing Rank Update Commands:" | |
send "&f/rank set (player) (rank): &eupdates chosen player's rank to the chosen rank" | |
send "" | |
send "&9Rank Update> &7Listing Rank List:" | |
send "&9Ranks> &7ALL, ULTRA, HERO, LEGEND, TITAN, ETERNAL, TRAINEE, MODERATOR, SNR_MODERATOR, CLANS_MOD, JNR_DEV, SUPPORT, ADMIN, LEADER, DEVELOPER, OWNER, ARTIST, MAPLEAD, BUILDER, MAPPER, EVENT, TWITCH, YOUTUBE, YT." | |
#send "&9Ranks> &7ULTRA" | |
#send "&9Ranks> &7HERO" | |
#send "&9Ranks> &7LEGEND" | |
#send "&9Ranks> &7TITAN" | |
#send "&9Ranks> &7ETERNAL" | |
#send "&9Ranks> &7TRAINEE" | |
#send "&9Ranks> &7MODERATOR" | |
#send "&9Ranks> &7SNR_MODERATOR" | |
#send "&9Ranks> &7CLANS_MOD" | |
#send "&9Ranks> &7JNR_DEV" | |
#send "&9Ranks> &7SUPPORT" | |
#send "&9Ranks> &7ADMIN" | |
#send "&9Ranks> &7LEADER" | |
#send "&9Ranks> &7DEVELOPER" | |
#send "&9Ranks> &7OWNER" | |
#send "&9Ranks> &7ARTIST" | |
#send "&9Ranks> &7MAPLEAD" | |
#send "&9Ranks> &7BUILDER" | |
#send "&9Ranks> &7MAPPER" | |
#send "&9Ranks> &7EVENT" | |
#send "&9Ranks> &7TWITCH" | |
#send "&9Ranks> &7YOUTUBE" | |
#send "&9Ranks> &7YT" | |
stop | |
set {_uuid} to uuid of arg-2 | |
set {_allcap} to convert arg-3 to all caps | |
if argument 3 is "ALL": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "" | |
execute console command "/__mp__dp__ %arg-2%" | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to None!" | |
send "&9Client Manager> &7Your rank has been updated to None!" to arg 2 | |
set arg-2 tab name to "&e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "All") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "ULTRA": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&b&lULTRA " | |
execute console command "/__mp__dp__ %arg-2%" | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Ultra!" | |
send "&9Client Manager> &7Your rank has been updated to Ultra!" to arg 2 | |
set arg-2 tab name to "&b&lULTRA &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Ultra") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "HERO": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&d&lHERO " | |
execute console command "/__mp__dp__ %arg-2%" | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Hero!" | |
send "&9Client Manager> &7Your rank has been updated to Hero!" to arg 2 | |
set arg-2 tab name to "&d&lHERO &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Hero") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "LEGEND": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&a&lLEGEND " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.legend" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Legend!" | |
send "&9Client Manager> &7Your rank has been updated to Legend!" to arg 2 | |
set arg-2 tab name to "&a&lLEGEND &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Legend") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "TITAN": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&c&lTITAN " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Titan!" | |
send "&9Client Manager> &7Your rank has been updated to Titan!" to arg 2 | |
set arg-2 tab name to "&c&lTITAN &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Titan") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "ETERNAL": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&3&lETERNAL " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Eternal!" | |
send "&9Client Manager> &7Your rank has been updated to Eternal!" to arg 2 | |
set arg-2 tab name to "&3&lETERNAL &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Eternal") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "TRAINEE": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&6&lTRAINEE " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Trainee!" | |
send "&9Client Manager> &7Your rank has been updated to Trainee!" to arg 2 | |
set arg-2 tab name to "&6&lTRAINEE &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Trainee") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "MODERATOR": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&6&lMOD " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Mod!" | |
send "&9Client Manager> &7Your rank has been updated to Mod!" to arg 2 | |
set arg-2 tab name to "&6&lMOD &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Mod") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "SNR_MODERATOR": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&6&lSR.MOD " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Sr.Mod!" | |
send "&9Client Manager> &7Your rank has been updated to Sr.Mod!" to arg 2 | |
set arg-2 tab name to "&6&lSR.MOD &e%arg-2%" | |
updateRankAPI(arg-2) | |
set "rank" to "SrMod" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" | |
setPlayerdata(arg-2, "rank", "SrMod") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "CLANS_MOD": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&6&lC.MOD " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to C.Mod!" | |
send "&9Client Manager> &7Your rank has been updated to C.Mod!" to arg 2 | |
set arg-2 tab name to "&6&lC.MOD &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "CMod") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "ADMIN": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&4&lADMIN " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.support" to arg-2's permissions | |
add "mineplex.admin" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Admin!" | |
send "&9Client Manager> &7Your rank has been updated to Admin!" to arg 2 | |
set arg-2 tab name to "&4&lADMIN &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Admin") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "APEX": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&9&lAPEX " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.support" to arg-2's permissions | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.admin" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Apex Minecraft Hosting!" | |
send "&9Client Manager> &7Your rank has been updated to Apex Minecraft Hosting!" to arg 2 | |
set arg-2 tab name to "&9&lAPEX &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Apex") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "LEADER": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&4&lLEADER " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.admin" to arg-2's permissions | |
add "mineplex.support" to arg-2's permissions | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.leader" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Leader!" | |
send "&9Client Manager> &7Your rank has been updated to Leader!" to arg 2 | |
set arg-2 tab name to "&4&lLEADER &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Leader") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "OWNER": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&4&lOWNER " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.admin" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.dev" to arg-2's permissions | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.leader" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.support" to arg-2's permissions | |
add "mineplex.owner" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Owner!" | |
send "&9Client Manager> &7Your rank has been updated to Owner!" to arg 2 | |
set arg-2 tab name to "&4&lOWNER &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Owner") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "BUILDER": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&9&lBUILDER " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.titan" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Builder!" | |
send "&9Client Manager> &7Your rank has been updated to Builder!" to arg 2 | |
set arg-2 tab name to "&9&lBUIDLER &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Builder") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "MAPPER": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&9&lMAPPER " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Mapper!" | |
send "&9Client Manager> &7Your rank has been updated to Mapper!" to arg 2 | |
set arg-2 tab name to "&9&lMAPPER &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Mapper") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "SUPPORT": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&9&lSUPPORT " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.support" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Support!" | |
send "&9Client Manager> &7Your rank has been updated to Support!" to arg 2 | |
set arg-2 tab name to "&9&lSUPPORT &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Support") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "ARTIST": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&9&lARTIST " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Artist!" | |
send "&9Client Manager> &7Your rank has been updated to Artist!" to arg 2 | |
set arg-2 tab name to "&9&lARTIST &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Artist") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "MAPLEAD": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&9&lMAPLEAD " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to MapLead!" | |
send "&9Client Manager> &7Your rank has been updated to MapLead!" to arg 2 | |
set arg-2 tab name to "&9&lMAPLEAD &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Maplead") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "JNR_DEV": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&6&lJR.DEV " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Jr.Dev!" | |
send "&9Client Manager> &7Your rank has been updated to Jr.Dev!" to arg 2 | |
set arg-2 tab name to "&6&lJR.DEV &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "JrDev") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "DEVELOPER": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&4&lDEV " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.trainee" to arg-2's permissions | |
add "mineplex.mod" to arg-2's permissions | |
add "mineplex.srmod" to arg-2's permissions | |
add "mineplex.jrdev" to arg-2's permissions | |
add "mineplex.2fa" to arg-2's permissions | |
add "mineplex.admin" to arg-2's permissions | |
add "mineplex.leader" to arg-2's permissions | |
add "mineplex.support" to arg-2's permissions | |
add "mineplex.owner" to arg-2's permissions | |
add "mineplex.builder" to arg-2's permissions | |
add "mineplex.dev" to arg-2's permissions | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.admin" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Dev!" | |
send "&9Client Manager> &7Your rank has been updated to Dev!" to arg 2 | |
set arg-2 tab name to "&4&lDEV &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Dev") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "TWITCH": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&5&lTWITCH " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.twitch" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
add "mineplex.youtube" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Twitch!" | |
send "&9Client Manager> &7Your rank has been updated to Twitch!" to arg 2 | |
set arg-2 tab name to "&5&lTWITCH &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Twitch") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "YOUTUBE": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&c&lYOUTUBE " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to YouTube!" | |
send "&9Client Manager> &7Your rank has been updated to YouTube!" to arg 2 | |
set arg-2 tab name to "&c&lYOUTUBE &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Youtube") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "EVENT": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&f&lEVENT " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to Event!" | |
send "&9Client Manager> &7Your rank has been updated to Event!" to arg 2 | |
set arg-2 tab name to "&f&lEVENT &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Event") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else if argument 3 is "YT": | |
set {_c} to caseSensitive(arg-3, "%{_allcap}%") | |
if {_c} is true: | |
set {mineplex.rank.%arg-2%} to "&5&lYT " | |
execute console command "/__mp__dp__ %arg-2%" | |
add "mineplex.youtube" to arg-2's permissions | |
add "mineplex.legend" to arg-2's permissions | |
add "mineplex.titan" to arg-2's permissions | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to YT!" | |
send "&9Client Manager> &7Your rank has been updated to YT!" to arg 2 | |
set arg-2 tab name to "&5&lYT &e%arg-2%" | |
updateRankAPI(arg-2) | |
setPlayerdata(arg-2, "rank", "Yt") | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
rankLoad(arg-2, 2, 0) | |
else if argument 1 is "test": | |
if arg-2 or arg-3 is not set: | |
send "&4/rank test <player> <rank>: Temporarily sets the target user's rank" | |
else: | |
if arg 2 is online: | |
if {mineplex.testrank.%arg-2%} is not set: | |
if arg 3 is "ULTRA": | |
set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%} | |
set {mineplex.rank.%arg-2%} to "&b&lULTRA " | |
execute console command "/__mp__dp__ %arg-2%" | |
set {_or} to uncolored {mineplex.testrank.%arg-2%} | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!" | |
send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!" | |
send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2 | |
send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2 | |
set arg-2 tab name to "&b&lULTRA &e%arg-2%" | |
updateRankAPI(arg-2) | |
wait 5 ticks | |
rankLoad(arg-2, 2, 1) | |
else if arg 3 is "HERO": | |
set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%} | |
set {mineplex.rank.%arg-2%} to "&d&lHERO " | |
execute console command "/__mp__dp__ %arg-2%" | |
set {_or} to uncolored {mineplex.testrank.%arg-2%} | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!" | |
send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!" | |
send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2 | |
send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2 | |
set arg-2 tab name to "&d&lHERO &e%arg-2%" | |
updateRankAPI(arg-2) | |
wait 5 ticks | |
rankLoad(arg-2, 2, 1) | |
else if arg 3 is "LEGEND": | |
set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%} | |
set {mineplex.rank.%arg-2%} to "&a&lLEGEND " | |
execute console command "/__mp__dp__ %arg-2%" | |
set {_or} to uncolored {mineplex.testrank.%arg-2%} | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!" | |
send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!" | |
send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2 | |
send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2 | |
set arg-2 tab name to "&a&lLEGEND &e%arg-2%" | |
updateRankAPI(arg-2) | |
wait 5 ticks | |
rankLoad(arg-2, 2, 1) | |
else if arg 3 is "TITAN": | |
set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%} | |
set {mineplex.rank.%arg-2%} to "&c&lTITAN " | |
execute console command "/__mp__dp__ %arg-1%" | |
set {_or} to uncolored {mineplex.testrank.%arg-2%} | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!" | |
send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!" | |
send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2 | |
send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2 | |
set arg-2 tab name to "&c&lTITAN &e%arg-2%" | |
updateRankAPI(arg-2) | |
wait 5 ticks | |
rankLoad(arg-2, 2, 1) | |
else if arg 3 is "ETERNAL": | |
set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%} | |
set {mineplex.rank.%arg-2%} to "&3&lETERNAL " | |
execute console command "/__mp__dp__ %arg-2%" | |
set {_or} to uncolored {mineplex.testrank.%arg-2%} | |
send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!" | |
send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!" | |
send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2 | |
send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2 | |
set arg-2 tab name to "&3&lETERNAL &e%arg-2%" | |
updateRankAPI(arg-2) | |
wait 5 ticks | |
rankLoad(arg-2, 2, 1) | |
else: | |
send "&9Client Manager> &c&lInvalid rank!" | |
else: | |
send "&9Client Manager> &c&lThis player already has a test rank!" | |
else: | |
send "&9Online Player Search> &e0 &7matches for [&e%arg-2%&7]." | |
command /powerplay [<offline player>]: | |
permission: mineplex.jrdev | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is set: | |
if {mineplex.ppc.%arg-1%} is not set: | |
set {mineplex.ppc.%arg-1%} to true | |
send "&9PPC> &7%arg-1% Power Play: &aTrue" | |
else: | |
delete {mineplex.ppc.%arg-1%} | |
send "&9PPC> &7%arg-1% Power Play: &cFalse" | |
else: | |
send "&9PPC> &7/powerplay (player)" | |
command /shard [<offline player>] [<string>] [<string>]: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9Shard> &7Missing Args: &e/shard <player> <amount>" | |
else: | |
if arg 2 is not set: | |
send "&9Shard> &7Missing Args: &e/shard <player> <amount>" | |
else: | |
if arg 1 is not online: | |
send "&9Shard> &7Could not find player &e%arg-1%" | |
else: | |
set {_num} to arg 2 parsed as an integer | |
if {_num} is an integer: | |
add {_num} to {mineplex.shards.%arg-1%} | |
send "&9Shard> &7You gave &e%arg-2% Shards &7to &e%arg-1%&7." | |
send "&9Shard> &e%player% &7gave you &e%arg-2% Shards&7." to arg-1 | |
addShards(arg-1, {_num}) | |
else: | |
send "&9Shard> &7Invalid Shards Amount" | |
command /gem [<offline player>] [<string>] [<string>]: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9Gem> &7Missing Args: &e/gem <player> <amount>" | |
else: | |
if arg 2 is not set: | |
send "&9Gem> &7Missing Args: &e/gem <player> <amount>" | |
else: | |
if arg 1 is not online: | |
send "&9Gem> &7Could not find player &e%arg-1%" | |
else: | |
set {_num} to arg 2 parsed as an integer | |
if {_num} is an integer: | |
addGems(arg-1, {_num}) | |
send "&9Gem> &7You gave &e%arg-2% Gems &7to &e%arg-1%&7." | |
send "&9Gem> &e%player% &7gave you &e%arg-2% Gems&7." to arg-1 | |
else: | |
send "&9Gem> &7Invalid Gems Amount" | |
command /getadmin: | |
permission: mineplex.jrdev | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.rank.%player%} is "&6&lJR.DEV ": | |
if {mineplex.disguise.%player%} is set: | |
set {_p} to {mineplex.disguise.%player%} | |
else: | |
set {_p} to player | |
if {mineplex.adminmode.%player%} is true: | |
remove "mineplex.admin" from player's permissions | |
remove "mineplex.support" from player's permissions | |
remove "mineplex.builder" from player's permissions | |
remove "mineplex.youtube" from player's permissions | |
set {mineplex.adminmode.%player%} to false | |
send "&9Admin Mode> &7%{_p}% Admin Mode: &cFalse" | |
else: | |
set {mineplex.adminmode.%player%} to true | |
add "mineplex.admin" to player's permissions | |
add "mineplex.builder" to player's permissions | |
add "mineplex.support" to player's permissions | |
add "mineplex.youtube" to player's permissions | |
send "&9Admin Mode> &7%{_p}% Admin Mode: &aTrue" | |
else: | |
send "&9Admin Mode> &7/getadmin is only for JR.DEV!" | |
command /__mp__dp__ <player>: | |
executable by: console | |
trigger: | |
remove "mineplex.trainee" from arg-1's permissions | |
remove "mineplex.legend" from arg-1's permissions | |
remove "mineplex.titan" from arg-1's permissions | |
remove "mineplex.mod" from arg-1's permissions | |
remove "mineplex.srmod" from arg-1's permissions | |
remove "mineplex.admin" from arg-1's permissions | |
remove "mineplex.leader" from arg-1's permissions | |
remove "mineplex.owner" from arg-1's permissions | |
remove "mineplex.jrdev" from arg-1's permissions | |
remove "mineplex.2fa" from arg-1's permissions | |
remove "mineplex.dev" from arg-1's permissions | |
remove "mineplex.twitch" from arg-1's permissions | |
remove "mineplex.youtube" from arg-1's permissions | |
remove "mineplex.builder" from arg-1's permissions | |
function rawreport(arg1: player , arg2: player , arg3: text , arg4: text , arg5: text) :: string: | |
if {_arg3} is "Hacking": | |
set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1} | |
set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2} | |
set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3} | |
set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4} | |
set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5} | |
set {mineplex.report.open.%{mineplex.report.id}%} to true | |
send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2} | |
else if {_arg3} is "Chat-Abuse": | |
set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1} | |
set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2} | |
set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3} | |
set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4} | |
set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5} | |
set {mineplex.report.open.%{mineplex.report.id}%} to true | |
send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2} | |
else if {_arg3} is "Gameplay": | |
set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1} | |
set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2} | |
set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3} | |
set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4} | |
set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5} | |
set {mineplex.report.open.%{mineplex.report.id}%} to true | |
send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2} | |
else: | |
stop | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if {mineplex.pref.report.%loop-player%} is true: | |
send "&9[Report ##%{mineplex.report.id}%] &7%{_arg2}% has reported %{_arg1}% for a &e%{_arg3}% &7offence with reason &e%{_arg5}%&7!" to loop-player | |
add 1 to {mineplex.report.id} | |
command /report [<offline player>] [<text>]: | |
permission: mineplex.titan | |
permission message: &9Report> &cThe report feature is currently in a trial phase for Titan players | |
trigger: | |
if arg-2 is set: | |
if arg-1 is player: | |
send "&9Report> &cYou cannot report yourself." | |
stop | |
open chest with 3 rows named "Report %arg-1%" to player | |
format slot 11 of player with red dye named "&c&lHacking" with lore "&7X-ray, Forcefield, Speed, Fly etc" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Hacking", "%player's world%", arg-2)] | |
format slot 13 of player with yellow dye named "&e&lChat Abuse" with lore "&7Verbal Abuse, Spam, Harassment, Trolling, etc" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Chat-Abuse", "%player's world%", arg-2)] | |
format slot 15 of player with green dye named "&a&lGameplay" with lore "&7Map and Bug Exploits" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Gameplay", "%player's world%", arg-2)] | |
else: | |
send "&9Report> &cInvalid Usage: &e/report <player> <reason>" | |
command /reporthandle [<string>] [<string>]: | |
aliases: /rh | |
permission: mineplex.mod | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9Report> &7Corect Usage: &e/reporthandle <report id>" | |
else: | |
set {_id} to arg-1 parsed as a number | |
if {_id} is a number: | |
if {mineplex.report.open.%{_id}%} is true: | |
if {mineplex.report.hand.%{_id}%} is not set: | |
set {mineplex.report.hand.%{_id}%} to player | |
set {_sus} to {mineplex.report.player.%{_id}%} parsed as an offline player | |
set {_ip} to ip address of {_sus} | |
loop {mineplex.totalaccounts.%{_ip}%::*}: | |
add 1 to {_accounts} | |
if {_accounts} is not set: | |
set {_accounts} to 1 | |
send "" | |
send "&9Report ##%{_id}%> &bReport Overview" | |
send "&9Report ##%{_id}%> &bSuspect - &6%{mineplex.report.player.%{_id}%}%" | |
send "&9Report ##%{_id}%> &bType - &6%{mineplex.report.type.%{_id}%}%" | |
send "&9Report ##%{_id}%> &bTeam - &6None" | |
send "&9Report ##%{_id}%>" | |
send "&9Report ##%{_id}%> &6SoonTM &btotal reports" | |
send "&9Report ##%{_id}%>" | |
send "&9Report ##%{_id}%> &7(1) &6%{mineplex.report.reporter.%{_id}%}% ##1 &7- ""&b%{mineplex.report.reason.%{_id}%}%&7""" | |
send "&9Report ##%{_id}%>" | |
send "&9Report ##%{_id}%> &bView chat log" | |
mcrjson("%player%", "&9Report ##%{_id}%> ||&bClose this report||ttp:&bClick to close this report||cmd:/reportclose %{_id}% undetermined") | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if {mineplex.pref.report.%loop-player%} is true: | |
send "&9[Report %{_id}%] &e%player% &7is handling this report." to loop-player | |
else: | |
send "&9Report> &7This report is already being handling!" | |
else: | |
send "&9Report> &7This report has already been closed or does not exsit!" | |
else: | |
send "&9Report> &cYour arguments are inappropriate for this command!" | |
send "&9Report> &e/reporthandle (id)" | |
command /reportclose [<string>] [<string>] [<string>]: | |
aliases: /rc | |
permission: mineplex.mod | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9Report> &7Corect Usage: &e/reportclose (report id)" | |
send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE" | |
stop | |
if arg 2 is not set: | |
send "&9Report> &7Corect Usage: &e/reportclose (report id)" | |
send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE" | |
stop | |
else: | |
set {_id} to arg-1 parsed as a number | |
if {mineplex.report.hand.%{_id}%} is not player: | |
send "&9Report> &cYou can only close your own report!" | |
stop | |
if {_id} is a number: | |
if {mineplex.report.open.%{_id}%} is true: | |
if arg 2 is "UNDETERMINED": | |
set {_r} to "&f&lCould not determine" | |
set {mineplex.report.open.%{_id}%} to false | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if {mineplex.pref.report.%loop-player%} is true: | |
send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player | |
else if arg 2 is "MUTED": | |
set {_r} to "&e&lMuted" | |
set {mineplex.report.open.%{_id}%} to false | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if {mineplex.pref.report.%loop-player%} is true: | |
send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player | |
else if arg 2 is "BANNED": | |
set {_r} to "&c&lBanned" | |
set {mineplex.report.open.%{_id}%} to false | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if {mineplex.pref.report.%loop-player%} is true: | |
send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player | |
else if arg 2 is "ABUSE": | |
set {_r} to "&4&lAbuse of report system" | |
set {mineplex.report.open.%{_id}%} to false | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
if {mineplex.pref.report.%loop-player%} is true: | |
send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player | |
else: | |
send "&9Report> &cInvalid report reason!" | |
else: | |
send "&9Report> &7This report has already been closed or does not exsit!" | |
else: | |
send "&9Report> &cYour arguments are inappropriate for this command!" | |
send "&9Report> &e/reportclose (report id) (reason)" | |
send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE" | |
command /s [<text>]: | |
permission: mineplex.mod | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.disguise.%player%} is set: | |
set {_p} to {mineplex.disguise.%player%} | |
else: | |
set {_p} to player | |
if argument 1 is set: | |
broadcast "&f&l%{_p}% &b%arg-1%" | |
else: | |
send "&9Broadcast> &7Corect Usage: /s <message>." | |
command /gm [<player>]: | |
permission: mineplex.builder | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if {mineplex.disguise.%player%} is set: | |
set {_p} to {mineplex.disguise.%player%} | |
else: | |
set {_p} to player | |
if argument 1 is not set: | |
if player's gamemode is survival: | |
set the player's gamemode to creative | |
send "&9Game Mode> &7%{_p}% Creative Mode: &aTrue" | |
else: | |
set the player's gamemode to survival | |
send "&9Game Mode> &7%{_p}% Creative Mode: &cFalse" | |
else: | |
if player has permission "mineplex.admin": | |
if arg-1's gamemode is survival: | |
set the arg-1's gamemode to creative | |
send "&9Game Mode> &7%arg-1% Creative Mode: &aTrue" | |
else: | |
set the arg-1's gamemode to survival | |
send "&9Game Mode> &7%arg-1% Creative Mode: &cFalse" | |
else: | |
send "&9Permissions> &7You do not have permission to do that." | |
command /ignore [<offline player>] [<string>]: | |
trigger: | |
if arg 1 is not set: | |
if {mineplex.ignorelist.%player%::*} is not set: | |
send "&b&m=====================[&f&lIgnoring&b&m]======================" | |
send "" | |
send "&fWelcome to your Ignore List!" | |
send "" | |
send "&fTo ignore people, type &a/ignore <Player Name>" | |
send "" | |
send "&fType &a/ignore &fat any time to view the ignored!" | |
send "" | |
send "&b&m=====================================================" | |
else: | |
send "&b&m=====================[&f&lIgnoring&b&m]======================" | |
loop {mineplex.ignorelist.%player%::*}: | |
mcrjson("%player%", "&7Ignoring %loop-value% &f - ||&c&lUnignore||ttp:&fStop ignoring %loop-value%||cmd:/unignore %loop-value%||") | |
send "&b&m=====================================================" | |
else: | |
loop {mineplex.ignorelist.%player%::*}: | |
if loop-value is "%arg-1%": | |
set {_pre} to true | |
if {_pre} is true: | |
send "&9Ignore> &a%arg-1% &7has already been ignored." | |
else: | |
add "%arg-1%" to {mineplex.ignorelist.%player%::*} | |
send "&9Ignore> &7Now ignoring &a%arg-1%" | |
command /unignore [<offline player>] [<string>]: | |
trigger: | |
if arg 1 is set: | |
send "&9Ignore> &7No longer ignoring &a%arg-1%" | |
remove "%arg-1%" from {mineplex.ignorelist.%player%::*} | |
command /message [<player>] [<text>]: | |
aliases: /tell, /m, /w, /msg, /whisper | |
trigger: | |
if {mineplex.disguise.%player%} is set: | |
set {_p} to {mineplex.disguise.%player%} | |
else: | |
set {_p} to player | |
set {_get} to getPlayerdata(player, "muted") | |
if {_get} is "yes": | |
if {muted::%player%::type} is "perm": | |
send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent." | |
stop | |
if {muted::%player%::type} is "temp": | |
set {_waited} to difference between {muted::%player%::when} and now | |
if {_waited} is less than {muted::%player%::time}: | |
send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%." | |
stop | |
if argument 1 is set: | |
if argument 2 is set: | |
if {mineplex.pref.pm.%arg-1%} is false: | |
send "&d%arg-1% has private messaging disabled." | |
stop | |
loop {mineplex.ignorelist.%player%::*}: | |
if loop-value is "%arg-1%": | |
send "&9Ignore> &7You are ignoring that player" | |
stop | |
loop {mineplex.ignorelist.%arg-1%::*}: | |
if loop-value is "%player%": | |
send "&9Ignore> &7That player is ignoring you" | |
stop | |
send "&6&l%{_p}% > %arg-1% &e&l%arg-2%" | |
send "&6&l%{_p}% > %arg-1% &e&l%arg-2%" to arg-1 | |
play "NOTE_PLING" to player at volume 0.5 | |
play "NOTE_PLING" to arg-1 at volume 0.5 | |
set {mineplex.lastm.%player%} to "%arg-1%" parsed as player | |
if {mineplex.rank.%arg-1%} is "&4&lDEV ": | |
send "&d%arg-1% is often AFK or minimized, due to plugin development." | |
send "&dPlease be patient if they do not reply instantly." | |
else: | |
send "&9Message> &cErr...something went wrong?" | |
else: | |
send "&9Message> &cErr...something went wrong?" | |
command /ping: | |
trigger: | |
send "&9Chat> &7PONG!" | |
on command: | |
command is "minecraft:me": | |
send "&9Chat> &7Nope, not allowed!" | |
cancel event | |
command /me [<string>]: | |
aliases: /minecraft:me | |
trigger: | |
if arg 1 is not set: | |
send "&cUsage: /me <action...>" | |
else: | |
send "&9Chat> &7Nope, not allowed!" | |
command /newsconfirm <number>: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
mcrjson("%player%", "&9Hub Manager>|| &a[CONFIRM]||ttp:Are you absolutely sure???||cmd:/news delete %arg-1%|| &6News Entry %arg-1% &7deletion?") | |
command /news [<string>] [<string>] [<string>]: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9News Manager> &7Available news arguments for this command:" | |
send "&6/news list &7Lists (numbered) stored news messages from database. &4Admin" | |
send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &4Admin" | |
send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &4Admin" | |
send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &4Admin" | |
send "&4*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &4Admin" | |
else: | |
if arg 1 is "list": | |
send "&9Hub Manager> &7Current server news messages:" | |
mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 1 : %{mineplex.news.line1}%||cmd:/newsconfirm 1|| &6News 1 &7: &f%{mineplex.news.line1}%") | |
mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 2 : %{mineplex.news.line2}%||cmd:/newsconfirm 2|| &6News 2 &7: &f%{mineplex.news.line2}%") | |
mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 3 : %{mineplex.news.line3}%||cmd:/newsconfirm 3|| &6News 3 &7: &f%{mineplex.news.line3}%") | |
mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 4 : %{mineplex.news.line4}%||cmd:/newsconfirm 4|| &6News 4 &7: &f%{mineplex.news.line4}%") | |
else if arg 1 is "add": | |
if arg 2 is set: | |
set {_news} to arg-2 | |
if arg 3 is set: | |
set {_news} to "%arg-2% %arg-3%" | |
replace all "&" with "§" in {_news} | |
if {mineplex.news.line1}'s length is 0: | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'" | |
set {mineplex.news.line1} to {_news} | |
send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!" | |
else if {mineplex.news.line2}'s length is 0: | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'" | |
set {mineplex.news.line2} to {_news} | |
send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!" | |
else if {mineplex.news.line3}'s length is 0: | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'" | |
set {mineplex.news.line3} to {_news} | |
send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!" | |
else if {mineplex.news.line4}'s length is 0: | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'" | |
set {mineplex.news.line4} to {_news} | |
send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!" | |
else: | |
send "&9Hub Manager> &c&lNo free news slots!" | |
else: | |
send "&9Hub Manager> &cYour arguments are inappropriate for this command!" | |
else if arg 1 is "delete": | |
if arg 2 is set: | |
if arg 2 is "1": | |
set {mineplex.news.line1} to "" | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '1'" | |
send "&9Hub Manager> &7The news entry at position &61 &7has been deleted!" | |
else if arg 2 is "2": | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '2'" | |
set {mineplex.news.line2} to "" | |
send "&9Hub Manager> &7The news entry at position &62 &7has been deleted!" | |
else if arg 2 is "3": | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '3'" | |
set {mineplex.news.line3} to "" | |
send "&9Hub Manager> &7The news entry at position &63 &7has been deleted!" | |
else if arg 2 is "4": | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '4'" | |
set {mineplex.news.line4} to "" | |
send "&9Hub Manager> &7The news entry at position &64 &7has been deleted!" | |
else: | |
send "&9Hub Manager> &cThe specified new position is invalid!" | |
else: | |
send "&9Hub Manager> &cYour arguments are inappropriate for this command!" | |
else if arg 1 is "set": | |
if arg 2 is set: | |
if arg 3 is set: | |
set {_news} to arg 3 | |
replace all "&" with "§" in {_news} | |
if arg 2 is "1": | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'" | |
set {mineplex.news.line1} to {_news} | |
send "&9Hub Manager> &7The news entry at position &61 &7has been updated to: %{_news}%" | |
else if arg 2 is "2": | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'" | |
set {mineplex.news.line2} to {_news} | |
send "&9Hub Manager> &7The news entry at position &62 &7has been updated to: %{_news}%" | |
else if arg 2 is "3": | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'" | |
set {mineplex.news.line3} to {_news} | |
send "&9Hub Manager> &7The news entry at position &63 &7has been updated to: %{_news}%" | |
else if arg 2 is "4": | |
if {mineplex.mode} is "sql": | |
update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'" | |
set {mineplex.news.line4} to {_news} | |
send "&9Hub Manager> &7The news entry at position &64 &7has been updated to: %{_news}%" | |
else: | |
send "&9Hub Manager> &cThe specified new position is invalid!" | |
else: | |
send "&9Hub Manager> &cYour arguments are inappropriate for this command!" | |
else: | |
send "&9Hub Manager> &cYour arguments are inappropriate for this command!" | |
else: | |
send "&9News Manager> &7Available news arguments for this command:" | |
send "&6/news list &7Lists (numbered) stored news messages from database. &cAdmin" | |
send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &cAdmin" | |
send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &cAdmin" | |
send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &cAdmin" | |
send "&c*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &cAdmin" | |
command /r [<text>]: | |
aliases: /reply | |
trigger: | |
if {mineplex.disguise.%player%} is set: | |
set {_p} to {mineplex.disguise.%player%} | |
else: | |
set {_p} to player | |
if {mineplex.lastm.%player%} is set: | |
if argument 1 is set: | |
if {mineplex.lastm.%player%} is online: | |
send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%" | |
send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%" to {mineplex.lastm.%player%} | |
else: | |
send "&9Message> &e%{mineplex.lastm.%player%}% &7is no longer online!" | |
else: | |
send "&9Message> &cErr...something went wrong?" | |
else: | |
send "&9Message> &7You have not messaged anyone recently." | |
command /party [<string>] [<player>]: | |
aliases: /z | |
trigger: | |
if argument 1 is not set: | |
send "&9Party> &7Listing Party Commands:" | |
send "&f/party <Player>: &eJoin/Create/Invite Player" | |
send "&f/party leave: &eLeave your current party" | |
send "&f/party kick <Player>: &eKick player from your Party" | |
send "&f/party info: &eDisplays info on the current Party." | |
else: | |
if argument 1 is "kick": | |
if {party.%player%} is not set: | |
message "&9Party> &7You don't have a party" | |
else: | |
if {party.%player%} is not player: | |
message "&9Party> &7You have to be a party leader to do this" | |
stop | |
if player arg is not set: | |
message "&9Party> &7Player needed. /party kick <player>" | |
else: | |
if {party.%player%::*} doesn't contain player arg: | |
message "&9Party> &7The player needs to be in your party" | |
stop | |
message "&9Party> &7You kicked %player arg% from the party" | |
message "&9Party> &7You've been kicked by %player% from his party" to player arg | |
loop {party.%player%::*}: | |
if loop-value = player arg: | |
delete {party.%player%::%loop-index%} | |
delete {party.%player arg%} | |
delete {party.%player arg%.chat} | |
else if arg 1 is "leave": | |
if {party.%player%} is not set: | |
message "&9Party> &7You don't have a party" | |
else: | |
if {party.%player%} is player: | |
message "&9Party> &7You can't leave if you are the leader. Do /party disband" | |
stop | |
message "&9Party> &7You left your party" | |
message "&9Party> &7%player% left your party" to {party.%player%} | |
set {party.%player%.chat} to false | |
loop {party.%{party.%player%}%::*}: | |
if loop-value = player: | |
delete {party.%{party.%player%}%::%loop-index%} | |
delete {party.%player%} | |
delete {party.%player%.chat} | |
else if arg 1 is "disband": | |
if {party.%player%} is not set: | |
message "&9Party> &cYou don't have a party" | |
else: | |
if {party.%player%} is not player: | |
message "&9Party> &7You have to be a party leader to do this" | |
stop | |
message "&9Party> &7You disband your party" | |
loop {party.%player%::*}: | |
loop-value is not player: | |
message "&9Party> &7Your party has been disbanded" to loop-value | |
delete {party.%loop-value%.chat} | |
delete {party.%loop-value%} | |
delete {party.%player%} | |
delete {party.%player%.chat} | |
delete {party.%player%::*} | |
else if arg 1 is "info": | |
if {party.%player%} is not set: | |
message "&9Party> &7You don't have a party" | |
else: | |
message "&9Party> &7Party Details:" | |
message "Party Leader: &7%{party.%player%}%" | |
set {_partyMember} to "" | |
loop {party.%{party.%player%}%::*}: | |
set {_partyMember} to "%{_partyMember}% %loop-value%" | |
message "Your Party: &7%{_partyMember}%" | |
else: | |
set {_mineplex.last.party} to arg-1 parsed as player | |
if {_mineplex.last.party} is online: | |
if {party.%player%} is set: | |
add {_mineplex.last.party} to {party.%player%::*} | |
set {party.%player%.chat} to true | |
set {party.%arg-1%.chat} to true | |
set {party.%{_mineplex.last.party}%} to player | |
message "&9Party> &7You invited %{_mineplex.last.party}% to the party." | |
else: | |
set {party.%player%} to player | |
message "&9Party> &7Created a party." | |
add player to {party.%player%::*} | |
make player execute command "/party %arg-1%" | |
else: | |
send "&9Party> &7That player is not online." | |
command /announce [<text>]: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if argument 1 is set: | |
send all players title "&eAnnouncement" with subtitle "&f%arg-1%" for 10 seconds | |
broadcast "&9Announcement> &b%arg-1%" | |
else: | |
send "&9Message> &cErr...something went wrong?" | |
command /global [<text>]: | |
permission: mineplex.jrdev | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg 1 is not set: | |
send "&9Message> &cErr...something went wrong?" | |
else: | |
broadcast "&9Announcement> &b%arg-1%" | |
every 3 seconds: | |
set {mineplex.lag.avg.1} to tps | |
wait 1 second | |
set {mineplex.lag.avg.2} to tps | |
wait 1 second | |
set {mineplex.lag.avg.3} to tps | |
command /lag: | |
trigger: | |
if player has permission "mineplex.jrdev": | |
set {_avg} to {mineplex.lag.avg.1} + {mineplex.lag.avg.2} + {mineplex.lag.avg.3} | |
set {_avg} to {_avg} / 3 | |
set {_tps} to tps | |
set {_f} to free ram | |
set {_m} to max ram | |
send "&9LagMeter> &7Live-------&e%{_tps}%" | |
send "&9LagMeter> &7Avg--------&e%{_avg}%" | |
send "&9LagMeter> &eMEM (RAM)" | |
send "&9LagMeter> &7Free-------&e%{_f}%MB" | |
send "&9LagMeter> &7Max--------&e%{_m}%MB" | |
else: | |
send "&9Chat> &7PONG!" | |
#Punish Systems/Commands | |
function punishWarn(s: player , p: offline player , r: text) :: player: | |
send "&9Punish> &7%{_s}% issued a friendly warning to you." to {_p} | |
send "&9Punish> &7&lReason: &7%{_r}%" to {_p} | |
add 1 to {mineplex.punish.past.warn.%{_p}%} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% issued a friendly warning to %{_p}%." to loop-player | |
function punishReportBan(s: player , p: offline player , r: text) :: player: | |
set {banned::%{_p}%} to true | |
set {banned::%{_p}%::type} to "report" | |
set {banned::%{_p}%::reason} to {_r} | |
set {banned::%{_p}%::staff} to {_s} | |
set {banned::%{_p}%::now} to now | |
setPlayerdata({_p}, "banned", "yes") | |
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}%" | |
add 1 to {mineplex.punish.past.reportban.%{_p}%} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% report banned %{_p}% for Permanent." to loop-player | |
function punishBan(s: player , p: offline player , r: text) :: player: | |
set {banned::%{_p}%} to true | |
set {banned::%{_p}%::type} to "perm" | |
set {banned::%{_p}%::reason} to {_r} | |
set {banned::%{_p}%::staff} to {_s} | |
set {banned::%{_p}%::now} to now | |
setPlayerdata({_p}, "banned", "yes") | |
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}%" | |
add 1 to {mineplex.punish.past.permban.%{_p}%} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% banned %{_p}% for Permanent." to loop-player | |
function punishDTempBan(s: player , p: offline player, r: text, d: number) :: player: | |
set {_duration} to "%{_d}% days" parsed as timespan | |
set {banned::%{_p}%} to true | |
set {banned::%{_p}%::type} to "temp" | |
set {banned::%{_p}%::time} to {_duration} | |
set {banned::%{_p}%::reason} to {_r} | |
set {banned::%{_p}%::staff} to {_s} | |
set {banned::%{_p}%::when} to now | |
add 1 to {mineplex.punish.past.tempban.%{_p}%} | |
setPlayerdata({_p}, "banned", "yes") | |
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}%" | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player | |
function punishHTempBan(s: player , p: offline player, r: text, d: number) :: player: | |
set {_duration} to "%{_d}% hours" parsed as timespan | |
set {banned::%{_p}%} to true | |
set {banned::%{_p}%::type} to "temp" | |
set {banned::%{_p}%::time} to {_duration} | |
set {banned::%{_p}%::reason} to {_r} | |
set {banned::%{_p}%::staff} to {_s} | |
set {banned::%{_p}%::when} to now | |
setPlayerdata({_p}, "banned", "yes") | |
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}%" | |
add 1 to {mineplex.punish.past.tempban.%{_p}%} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player | |
function punishMute(s: player, p: offline player, r: text) :: player: | |
set {muted::%{_p}%} to true | |
set {muted::%{_p}%::type} to "perm" | |
set {muted::%{_p}%::reason} to {_r} | |
set {muted::%{_p}%::by} to {_s} | |
add 1 to {mineplex.punish.past.permmute.%{_p}%} | |
setPlayerdata({_p}, "muted", "yes") | |
send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p} | |
send "&9Punish> &7%{muted::%{_p}%::by}% muted %{_p}% for Permanent." to {_p} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% muted %{_p}% for Permanent." to loop-player | |
function punishHTempMute(s: player, p: offline player, r: text, d: number) :: player: | |
set {_duration} to "%{_d}% hours" parsed as timespan | |
set {muted::%{_p}%} to true | |
set {muted::%{_p}%::type} to "temp" | |
set {muted::%{_p}%::reason} to {_r} | |
set {muted::%{_p}%::time} to {_duration} | |
set {muted::%{_p}%::by} to {_s} | |
set {muted::%{_p}%::when} to now | |
add 1 to {mineplex.punish.past.permmute.%{_p}%} | |
setPlayerdata({_p}, "muted", "yes") | |
send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p} | |
send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player | |
function punishDTempMute(s: player, p: offline player, r: text, d: number) :: player: | |
set {_duration} to "%{_d}% days" parsed as timespan | |
set {muted::%{_p}%} to true | |
set {muted::%{_p}%::type} to "temp" | |
set {muted::%{_p}%::reason} to {_r} | |
set {muted::%{_p}%::time} to {_duration} | |
set {muted::%{_p}%::by} to {_s} | |
set {muted::%{_p}%::when} to now | |
add 1 to {mineplex.punish.past.permmute.%{_p}%} | |
setPlayerdata({_p}, "muted", "yes") | |
send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p} | |
send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p} | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player | |
function punishUnban(s: string, p: string) :: player: | |
delete {banned::%{_p}%} | |
delete {banned::%{_p}%::*} | |
setPlayerdata({_p}, "banned", "no") | |
function punishUnmute(s: player, p: string) :: player: | |
delete {muted::%{_p}%} | |
delete {muted::%{_p}%::*} | |
setPlayerdata({_p}, "muted", "no") | |
loop all players: | |
if loop-player has permission "mineplex.trainee": | |
send "&9Punish> &7%{_s}% unmuted %{_p}%" to loop-player | |
on connect: | |
set {_get} to getPlayerdata(player, "banned") | |
if {_get} is "yes": | |
if player has permission "mineplex.admin": | |
if {mineplex.config.unbanadmin} is "true": | |
punishUnban("Expired", "%player%") | |
stop | |
if {banned::%player%::type} is "perm": | |
kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%" | |
stop | |
if {banned::%player%::type} is "report": | |
kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%" | |
stop | |
if {banned::%player%::type} is "temp": | |
set {_waited} to difference between {banned::%player%::when} and now | |
if {_waited} is less than {banned::%player%::time}: | |
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}%" | |
else: | |
punishUnban("Expired", "%player%") | |
on inventory click: | |
if inventory name of player's current inventory is " Punish": | |
cancel event | |
clicked slot >= 45 | |
set {_clickedslot.%player%} to (clicked slot - 44) | |
if {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} is set: | |
if "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}%" contains "&eRemoved by: ": | |
send "" to console | |
else: | |
set {_reasonchanger.%player%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}% ||||&eRemoved by: &f%player%||&eRemove Reason: &f%{punishgui.%player%::2}%" | |
set {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} to "%{_reasonchanger.%player%}%" | |
close player's inventory | |
delete {p.%{punishgui.%player%::1}%::history::*} | |
set {_slot} to 0 | |
loop {reversed.p.%{punishgui.%player%::1}%::history::*}: | |
add 1 to {_slot} | |
set {_reversedslot} to 1 | |
loop {reversed.p.%{punishgui.%player%::1}%::history::*}: | |
set {p.%{punishgui.%player%::1}%::history::%{_reversedslot}%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_slot}%}%" | |
remove 1 from {_slot} | |
add 1 to {_reversedslot} | |
if "%{_reasonchanger.%player%}%" contains "ChatOffense": | |
punishUnmute(player, {punishgui.%player%::1}) | |
if "%{_reasonchanger.%player%}%" contains "Hacking" or "Exploiting" or "Other": | |
punishUnban("memes", {punishgui.%player%::1}) | |
if "%{_reasonchanger.%player%}%" contains "Warning": | |
stop | |
command /p [<offline player>] [<text>]: | |
aliases: /punish | |
permission: mineplex.trainee | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
if arg-2 is not set: | |
send "&9Punish> &7Commands List:" | |
send "&6/punish &7<player> <reason> &6Mod" | |
if arg-2 is set: | |
if {p.%arg-1%::Chat1} is not set: | |
set {p.%arg-1%::Client3} to "__mp__tempban__ %arg-1% %player% 30" | |
set {p.%arg-1%::ClientL3} to "&fBan Duration: &e30.0 Days" | |
set {p.%arg-1%::Client2} to "__mp__tempban__ %arg-1% %player% 30" | |
set {p.%arg-1%::ClientL2} to "&fBan Duration: &e30.0 Days" | |
set {p.%arg-1%::ClientL1} to "&fBan Duration: &e1.0 Days" | |
set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 1" | |
set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% 4 %player%" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e4.0 Hours" | |
set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 2 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.0 Hours" | |
set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 1 %player%" | |
set {p.%arg-1%::ChatL2} to "&fMute Duration: &e1.0 Days" | |
set {p.%arg-1%::Chat3} to "__mp__tempmute__ %arg-1% 30 %player%" | |
set {p.%arg-1%::ChatL3} to "&fMute Duration: &e30.0 Days" | |
if {p.%arg-1%::pOffences.Chat1} is 1: | |
set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 4 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e4.0 Hours" | |
if {p.%arg-1%::pOffences.Chat1} is 2: | |
set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 10 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e10.0 Hours" | |
if {p.%arg-1%::pOffences.Chat1} is 3: | |
set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.0 Days" | |
if {p.%arg-1%::pOffences.Chat1} is 4: | |
set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.4 Days" | |
if {p.%arg-1%::pOffences.Chat1} is 5: | |
set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 3 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.8 Days" | |
if {p.%arg-1%::pOffences.Chat1} is 6: | |
set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 7 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e7.0 Days" | |
if {p.%arg-1%::pOffences.Chat1} is 7: | |
set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 14 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e14.0 Days" | |
if {p.%arg-1%::pOffences.Chat1} is 8: | |
set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 30 %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &e30.0 Days" | |
if {p.%arg-1%::pOffences.Chat1} is 9: | |
set {p.%arg-1%::Chat1} to "__mp__mute__ %arg-1% %player%" | |
set {p.%arg-1%::ChatL1} to "&fMute Duration: &ePermanent" | |
if {p.%arg-1%::pOffences.Chat2} is 1: | |
set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 2 %player%" | |
set {p.%arg-1%::ChatL2} to "&fMute Duration: &e2.0 Days" | |
if {p.%arg-1%::pOffences.Chat2} is 2: | |
set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 4 %player%" | |
set {p.%arg-1%::ChatL2} to "&fMute Duration: &e4.0 Days" | |
if {p.%arg-1%::pOffences.Chat2} is 3: | |
set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 7 %player%" | |
set {p.%arg-1%::ChatL2} to "__mp__tempmute__ %arg-1% 7 %player%" | |
if {p.%arg-1%::pOffences.Chat2} is 4: | |
set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 14 %player%" | |
set {p.%arg-1%::ChatL2} to "&fMute Duration: &e14.0 Days" | |
if {p.%arg-1%::pOffences.Chat2} is 5: | |
set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 30 %player%" | |
set {p.%arg-1%::ChatL2} to "&fMute Duration: &e30.0 Days" | |
if {p.%arg-1%::pOffences.Chat2} is 6: | |
set {p.%arg-1%::Chat2} to "__mp__mute__ %arg-1% %player%" | |
set {p.%arg-1%::ChatL2} to "&fMute Duration: &ePermanent" | |
if {p.%arg-1%::pOffences.Chat3} is 1: | |
set {p.%arg-1%::Chat3} to "__mp__mute__ %arg-1% %player%" | |
set {p.%arg-1%::ChatL3} to "&fMute Duration: &ePermanent" | |
if {p.%arg-1%::pOffences.General} is 1: | |
set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 8" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e8.0 Hours" | |
if {p.%arg-1%::pOffences.General} is 2: | |
set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 16" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e16.0 Hours" | |
if {p.%arg-1%::pOffences.General} is 3: | |
set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 1" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e1.4 Days" | |
if {p.%arg-1%::pOffences.General} is 4: | |
set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 3" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e3.0 Days" | |
if {p.%arg-1%::pOffences.General} is 5: | |
set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 7" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e7.0 Days" | |
if {p.%arg-1%::pOffences.General} is 6: | |
set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 14" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e14.0 Days" | |
if {p.%arg-1%::pOffences.General} is 7: | |
set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 30" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &e30.0 Days" | |
if {p.%arg-1%::pOffences.General} is 8: | |
set {p.%arg-1%::General} to "__mp__ban__ %arg-1% %player%" | |
set {p.%arg-1%::GeneralL} to "&fBan Duration: &ePermanent" | |
if {p.%arg-1%::pOffences.Client1} is 1: | |
set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 2" | |
set {p.%arg-1%::ClientL1} to "&fBan Duration: &e2.0 Days" | |
if {p.%arg-1%::pOffences.Client1} is 2: | |
set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 4" | |
set {p.%arg-1%::ClientL1} to "&fBan Duration: &e4.0 Days" | |
if {p.%arg-1%::pOffences.Client1} is 3: | |
set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 7" | |
set {p.%arg-1%::ClientL1} to "&fBan Duration: &e7.0 Days" | |
if {p.%arg-1%::pOffences.Client1} is 4: | |
set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 16" | |
set {p.%arg-1%::ClientL1} to "&fBan Duration: &e16.0 Days" | |
if {p.%arg-1%::pOffences.Client1} is 5: | |
set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 30" | |
set {p.%arg-1%::ClientL1} to "&fBan Duration: &e30.0 Days" | |
if {p.%arg-1%::pOffences.Client1} is 6: | |
set {p.%arg-1%::Client1} to "__mp__ban__ %arg-1% %player%" | |
set {p.%arg-1%::ClientL1} to "&fBan Duration: &ePermanent" | |
if {p.%arg-1%::pOffences.Client2} is 1: | |
set {p.%arg-1%::Client2} to "__mp__ban__ %arg-1% %player%" | |
set {p.%arg-1%::ClientL2} to "&fBan Duration: &ePermanent" | |
if {p.%arg-1%::pOffences.Client3} is 1: | |
set {p.%arg-1%::Client3} to "__mp__ban__ %arg-1% %player%" | |
set {p.%arg-1%::ClientL3} to "&fBan Duration: &ePermanent" | |
if {p.%arg-1%::pOffences.Chat1} is not set: | |
set {p.%arg-1%::pOffences.Chat1} to 0 | |
set {p.%arg-1%::pOffences.Chat2} to 0 | |
set {p.%arg-1%::pOffences.Chat3} to 0 | |
set {p.%arg-1%::pOffences.General} to 0 | |
set {p.%arg-1%::pOffences.Client1} to 0 | |
set {p.%arg-1%::pOffences.Client2} to 0 | |
set {p.%arg-1%::pOffences.Client3} to 0 | |
if player has permission "mineplex.trainee" or "mineplex.mod": | |
delete {reversed.p.%arg-1%::history::*} | |
set {_slot} to 0 | |
loop {p.%arg-1%::history::*}: | |
add 1 to {_slot} | |
set {_reversedslot} to 1 | |
loop {p.%arg-1%::history::*}: | |
set {reversed.p.%arg-1%::history::%{_reversedslot}%} to "%{p.%arg-1%::history::%{_slot}%}%" | |
remove 1 from {_slot} | |
add 1 to {_reversedslot} | |
open chest with 6 rows named " Punish" to player | |
wait 1 tick | |
format slot 4 of player with arg-1's skull named "&a&l%arg-1%" with lore "&r%arg-2%" to be unstealable | |
format slot 10 of player with book and quill named "&a&lChat Offense" with lore "&7Verbal Abuse, Spam, Harrassment, Trolling, etc" to be unstealable | |
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}] | |
format slot 12 of player with hopper named "&a&lGeneral Offense" with lore "&7Command/Map/Class/Skill exploits, etc" to be unstealable | |
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}] | |
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 | |
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}] | |
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::*}] | |
if player has permission "mineplex.mod": #Access all punishments! | |
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}] | |
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}] | |
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}] | |
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}] | |
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::*}] | |
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::*}] | |
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::*}] | |
set {_banned} to getPlayerdata(arg-1, "banned") | |
set {_muted} to getPlayerdata(arg-1, "muted") | |
set {_slot} to 45 | |
loop {reversed.p.%arg-1%::history::*}: | |
set {punishgui.%player%::*} to "%arg 1%" | |
add arg 2 to {punishgui.%player%::*} | |
if "%loop-value%" contains "&ePunishment Type: &fChatOffense": | |
if {_muted} is true: | |
if "%loop-value%" does not contain "&eRemoved by: ": | |
set slot {_slot} of player's current inventory to shiny book and quill named "&a&lChat Offense" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%" | |
add 1 to {_slot} | |
if "%loop-value%" contains "&ePunishment Type: &fHacking": | |
if {_banned} is true: | |
if "%loop-value%" does not contain "&eRemoved by: ": | |
set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to iron sword named "&a&lClient Mod" with lore "%loop-value%" | |
add 1 to {_slot} | |
if "%loop-value%" contains "&ePunishment Type: &fExploiting": | |
if {_banned} is true: | |
if "%loop-value%" does not contain "&eRemoved by: ": | |
set slot {_slot} of player's current inventory to shiny hopper named "&a&lGeneral Offense" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%" | |
add 1 to {_slot} | |
if "%loop-value%" contains "&ePunishment Type: &fWarning": | |
set slot {_slot} of player's current inventory to paper named "&a&lWarning" with lore "%loop-value%" | |
add 1 to {_slot} | |
if "%loop-value%" contains "&ePunishment Type: &fOther": | |
if {_banned} is true: | |
if "%loop-value%" does not contain "&eRemoved by: ": | |
set slot {_slot} of player's current inventory to shiny redstone block named "&a&lPermanent Ban" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%" | |
add 1 to {_slot} | |
else: | |
set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%" | |
add 1 to {_slot} | |
if "%loop-value%" contains "&ePunishment Type: &rOther": | |
set slot {_slot} of player's current inventory to enchanted book named "&a&lPermanent Report Ban" with lore "%loop-value%" | |
add 1 to {_slot} | |
if {_slot} = 54: | |
exit loop | |
if {mineplex.rank.%player%} is "&6&LJR.DEV " or "&4&lDEV ": | |
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 | |
#Prefs System | |
function prefsSystem(p: player , t: number) :: number: | |
if {_t} is 1: | |
if {mineplex.pref.hg.%{_p}%} is true: | |
set {mineplex.pref.hg.%{_p}%} to false | |
else: | |
set {mineplex.pref.hg.%{_p}%} to true | |
else if {_t} is 2: | |
if {mineplex.pref.hpv.%{_p}%} is true: | |
set {mineplex.pref.hpv.%{_p}%} to false | |
hide all players from {_p} | |
else: | |
set {mineplex.pref.hpv.%{_p}%} to true | |
reveal all players from {_p} | |
loop all players: | |
if {mineplex.vanish.%loop-player%} is true: | |
add loop-player to {%{_p}%.vanishlist::*} | |
loop all players: | |
if loop-player does not have permission "mineplex.admin": | |
hide {%{_p}%.vanishlist::*} from all players | |
delete {%{_p}%.vanishlist::*} | |
else if {_t} is 3: | |
if {mineplex.pref.pc.%{_p}%} is true: | |
set {mineplex.pref.pc.%{_p}%} to false | |
else: | |
set {mineplex.pref.pc.%{_p}%} to true | |
else if {_t} is 4: | |
if {mineplex.pref.pm.%{_p}%} is true: | |
set {mineplex.pref.pm.%{_p}%} to false | |
else: | |
set {mineplex.pref.pm.%{_p}%} to true | |
else if {_t} is 5: | |
if {mineplex.pref.gwen.%{_p}%} is true: | |
set {mineplex.pref.gwen.%{_p}%} to false | |
else: | |
set {mineplex.pref.gwen.%{_p}%} to true | |
else if {_t} is 6: | |
if {mineplex.pref.report.%{_p}%} is true: | |
set {mineplex.pref.report.%{_p}%} to false | |
else: | |
set {mineplex.pref.report.%{_p}%} to true | |
else if {_t} is 7: | |
if {mineplex.pref.ff.%{_p}%} is true: | |
set {mineplex.pref.ff.%{_p}%} to false | |
else: | |
set {mineplex.pref.ff.%{_p}%} to true | |
else if {_t} is 8: | |
if {mineplex.ff.%{_p}%} is true: | |
set {mineplex.ff.%{_p}%} to false | |
delete {mineplex.ff.list::%{_p}%} | |
else: | |
set {mineplex.ff.%{_p}%} to true | |
set {mineplex.ff.list::%{_p}%} to true | |
else if {_t} is 9: | |
if {mineplex.pref.rm.%{_p}%} is true: | |
set {mineplex.pref.rm.%{_p}%} to false | |
else: | |
set {mineplex.pref.rm.%{_p}%} to true | |
else if {_t} is 10: | |
if {mineplex.pref.aj.%{_p}%} is true: | |
set {mineplex.pref.aj.%{_p}%} to false | |
else: | |
set {mineplex.pref.aj.%{_p}%} to true | |
else if {_t} is 11: | |
if {mineplex.pref.daw.%{_p}%} is true: | |
set {mineplex.pref.daw.%{_p}%} to false | |
else: | |
set {mineplex.pref.daw.%{_p}%} to true | |
else if {_t} is 12: | |
if {mineplex.pref.cj.%{_p}%} is true: | |
set {mineplex.pref.cj.%{_p}%} to false | |
else: | |
set {mineplex.pref.cj.%{_p}%} to true | |
else if {_t} is 13: | |
if {mineplex.pref.sct.%{_p}%} is true: | |
set {mineplex.pref.sct.%{_p}%} to false | |
else: | |
set {mineplex.pref.sct.%{_p}%} to true | |
else if {_t} is 14: | |
if {mineplex.pref.hm.%{_p}%} is true: | |
set {mineplex.pref.hm.%{_p}%} to false | |
else: | |
set {mineplex.pref.hm.%{_p}%} to true | |
else if {_t} is 15: | |
if {mineplex.pref.pr.%{_p}%} is true: | |
set {mineplex.pref.pr.%{_p}%} to false | |
else: | |
set {mineplex.pref.pr.%{_p}%} to true | |
else if {_t} is 16: | |
if {mineplex.pref.spfr.%{_p}%} is true: | |
set {mineplex.pref.spfr.%{_p}%} to false | |
else: | |
set {mineplex.pref.spfr.%{_p}%} to true | |
else if {_t} is 17: | |
if {mineplex.pref.dfg.%{_p}%} is true: | |
set {mineplex.pref.dfg.%{_p}%} to false | |
else: | |
set {mineplex.pref.dfg.%{_p}%} to true | |
else if {_t} is 18: | |
if {mineplex.pref.sci.%{_p}%} is true: | |
set {mineplex.pref.sci.%{_p}%} to false | |
else: | |
set {mineplex.pref.sci.%{_p}%} to true | |
else if {_t} is 19: | |
if {mineplex.pref.dpg.%{_p}%} is true: | |
set {mineplex.pref.dpg.%{_p}%} to false | |
else: | |
set {mineplex.pref.dpg.%{_p}%} to true | |
else if {_t} is 20: | |
if {mineplex.pref.hif.%{_p}%} is true: | |
set {mineplex.pref.hif.%{_p}%} to false | |
else: | |
set {mineplex.pref.hif.%{_p}%} to true | |
function profile_system(arg1: text , arg2: text , p: player, p2: player) :: number: | |
set {_wither} to "MHF_WSkeleton" parsed as a player | |
if {_arg1} is "menu": | |
if {_arg2} is "profile": | |
wait 2 ticks | |
open chest with 3 rows named "My Profile" to {_p} | |
wait 4 ticks | |
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})] | |
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})] | |
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 | |
if {_arg2} is "prefs": | |
if {_p} has permission "mineplex.trainee": | |
open chest with 6 rows named "My Preferences" to {_p} | |
wait 3 tick | |
format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})] | |
format slot 21 of {_p} with diamond named "&eExclusive Preferences" to run [profile_system("menu", "staff", {_p}, {_p2})] | |
format slot 23 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})] | |
format slot 25 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})] | |
format slot 31 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})] | |
else: | |
open chest with 5 rows named "My Preferences" to {_p} | |
wait 3 tick | |
format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 37 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 38 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 39 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 40 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 41 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 42 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 43 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})] | |
format slot 21 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})] | |
format slot 23 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})] | |
format slot 25 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})] | |
if {_arg2} is "user": | |
open chest with 6 rows named "User Preferences" to {_p} | |
wait 3 tick | |
format slot 0 of {_p} with bed named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})] | |
format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
if {mineplex.pref.hg.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.hpv.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.pc.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.pm.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.rm.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {_arg2} is "game": | |
open chest with 6 rows named "Game Mechanic Preference" to {_p} | |
wait 3 tick | |
format slot 0 of {_p} with bed named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})] | |
format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
if {mineplex.pref.aj.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.daw.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.cj.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {_arg2} is "misc": | |
open chest with 6 rows named "Miscellaneous Preference" to {_p} | |
wait 3 tick | |
format slot 0 of {_p} with bed named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})] | |
format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
if {mineplex.pref.sct.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.hm.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {_arg2} is "social": | |
open chest with 6 rows named "Social Preferences" to {_p} | |
wait 3 tick | |
format slot 0 of {_p} with bed named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})] | |
format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
if {mineplex.pref.pr.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.spfr.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.dfg.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.sci.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.dpg.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {_arg2} is "staff": | |
open chest with 6 rows named "Exclusive Preferences" to {_p} | |
wait 3 tick | |
format slot 0 of {_p} with bed named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})] | |
format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable | |
if {mineplex.pref.hif.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.ff.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.gwen.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.report.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
if {mineplex.pref.ff.%{_p}%} is true: | |
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})] | |
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})] | |
else: | |
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})] | |
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})] | |
command /prefs: | |
trigger: | |
profile_system("menu", "prefs", player, player) | |
#GWEN CODING!! (Using my old plugin Shield) (I took it down as I was ripping off json.sk but wtevr) lol | |
on damage: | |
if victim's name is "BeamCow" or "BeamGuar": | |
cancel event | |
on death: | |
if victim's name is "BeamCow" or "BeamGuar": | |
clear drops | |
on quit: | |
delete {forcefield.past.%player%} | |
function beamGo(p: player) :: number: | |
apply slowness 255 to {_p} for 7 seconds | |
set {_p2} to location 3 meters in front of {_p} | |
add 5 to y-coordinate of {_p2} | |
set {_p3} to location 3 meters behind {_p} | |
add 5 to y-coordinate of {_p3} | |
set {_p4} to location 3 meters left of {_p} | |
add 5 to y-coordinate of {_p4} | |
set {_p5} to location 3 meters right of {_p} | |
add 5 to y-coordinate of {_p5} | |
spawn a guardian at {_p2} | |
add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity | |
set {_t2} to last spawned entity | |
spawn a guardian at {_p3} | |
add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity | |
set {_t3} to last spawned entity | |
spawn a guardian at {_p4} | |
add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity | |
set {_t4} to last spawned entity | |
spawn a guardian at {_p5} | |
add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity | |
set {_t5} to last spawned entity | |
set {_player} to {_p} | |
set {_r} to randomize "BHWFEAEG619" | |
set {_s} to "Chiss" parsed as a player | |
setPlayerdata({_p}, "banned", "yes") | |
punishBan({_s} ,{_player} , "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%") | |
set {banned::%{_player}%} to true | |
set {banned::%{_player}%::type} to "perm" | |
set {banned::%{_player}%::reason} to "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%" | |
set {banned::%{_player}%::staff} to "Chiss" | |
set {banned::%{_player}%::when} to now | |
add "&ePunishment Type: &fOther||||&eReason: &f[GWEN] Token: %{_r}%||||&eStaff: &fChiss||||&eDate: &f%now%" to {p.%{_player}%::history::*} | |
Beam({_p}, {_t2}) | |
Beam({_p}, {_t3}) | |
Beam({_p}, {_t4}) | |
Beam({_p}, {_t5}) | |
wait 5.2 seconds | |
broadcast "&9GWEN> &7%{_p}% has been banned. I am always watching" | |
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}%" | |
command /gwenban <player>: | |
permission: mineplex.admin | |
permission message: &9Permissions> &7You do not have permission to do that. | |
trigger: | |
beamGo(arg-1) | |
on shoot: | |
if projectile is an arrow: | |
if difference between {bow.%shooter%} and now is less than 2 ticks: | |
gwenAlert((shooter), ("Fast Bow")) | |
set {bow.%shooter%} to now | |
every 4 second : | |
set {autoclick.check} to true | |
wait 3 second | |
set {autoclick.check} to false | |
loop all players : | |
delete {player.click.%loop-player%} | |
on left click : | |
{autoclick.check} is true | |
add 1 to {player.click.%player%} | |
{player.click.%player%} > 69 | |
gwenAlert((player), ("High CPS (%{player.click.%player%} / 3% clicks/second)")) | |
on walk on water: | |
set {_loc} to location of player | |
add 2 to y-coordinate of {_loc} | |
if block at {_loc} is air: | |
add 1 to {gwen.jesus.%player%} | |
if {gwen.jesus.%player%} is greater than 6: | |
gamemode of player is survival | |
gwenAlert((player), ("Jesus")) | |
delete {gwen.jesus.%player%} | |
on consume: | |
if difference between {fasteat.%player%} and now is less than 10 ticks: | |
cancel event | |
set {fasteat.%player%} to now | |
gwenAlert((player), ("FastEat")) | |
set {fasteat.%player%} to now | |
on damage: | |
if attacker is a player: | |
if victim is a player: | |
if attacker's gamemode is survival or adventure: | |
damage cause isn't thorns or a projectile: | |
set {_reach.%attacker%} to distance between attacker and victim | |
set {_ping} to attacker's ping | |
if {_reach.%attacker%} is greater than 5.67: | |
if {_ping} is greater than 350: | |
gwenAlert((attacker), ("Reach")) | |
if {_ping} is less than 350: | |
gwenAlert((attacker), ("Reach")) | |
on damage of a player : | |
block at victim is not cobweb | |
victim is not riding | |
victim is not on fire | |
victim's y-coordinate is greater than 5 | |
set {_loc9} to block north east victim | |
set {_loc8} to block south west victim | |
blocks within {_loc9} to {_loc8} is air | |
set {_loc} to location of victim | |
wait 10 ticks | |
set {_loc2} to location of victim | |
distance between {_loc} and {_loc2} = 0 | |
victim's ping < 250 | |
gwenAlert((victim), ("Velocity")) | |
#Systems | |
on leftclick holding tnt: | |
if {mineplex.tntlauncher} is true: | |
player has 1 tnt | |
spawn a primed tnt 1 meter above the player | |
add "{Fuse:60}" to nbt of the spawned entity | |
push the spawned entity in direction of player at speed 0.9 | |
push the spawned entity upwards at speed 0.2 | |
remove 1 tnt from player | |
on rightclick holding tnt: | |
if {mineplex.tntlauncher} is true: | |
player has 1 tnt | |
spawn a primed tnt 1 meter above the player | |
add "{Fuse:60}" to nbt of the spawned entity | |
push the spawned entity in direction of player at speed 0.9 | |
push the spawned entity upwards at speed 0.2 | |
remove 1 tnt from player | |
#Modules | |
on load: | |
delete {mineplex::modules::*} | |
set {mineplex.modulesapi.online} to true | |
on unload: | |
delete {mineplex::modules::*} | |
set {mineplex.modulesapi.online} to false | |
command /modules: | |
trigger: | |
send "&9Modules> &7Modules API version 0.1" | |
send "&9Modules> &7Going to *attempt* to list modules." | |
send "&9Modules> &7This does not mean that your module is not loaded." | |
loop {mineplex::modules::*}: | |
send "&9Modules> &e%loop-value%" | |
#add "Bungee Module" to {mineplex::modules::*} | |
#remove "Bungee Module" from {mineplex::modules::*} | |
#MPS | |
#on load: | |
# if {wget} is not set: | |
# download file from "" to file "./WheezyMap.zip" | |
#command /mpsconfirm: | |
# permission: mineplex.op | |
# trigger: | |
# if {mineplex.mps.%player%} is not set: | |
# send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly." | |
# send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1." | |
# copy dir "./mps/Mineplex" to "./mps/%player%-1/" | |
# load world "./mps/%player%-1" | |
# set {mps.%player%-1} to "yes" | |
# wait 20 seconds | |
# else: | |
# 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." | |
# | |
#command /hostserver: | |
# permission: mineplex.op | |
# trigger: | |
# if {mineplex.mps.%player%} is not set: | |
# send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly." | |
# send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1." | |
# create folder "./mps/%player%-1" | |
# load world "./mps/%player%-1" | |
# wait 20 seconds | |
# teleport player to spawn of "./mps/%player%-1" | |
# else: | |
# 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." | |
#command /endserver: | |
# trigger: | |
# loop all players: | |
# loop-player's world is "./mps/%player%-1": | |
# teleport player to spawn of "%arg-1%" | |
# unload world "./mps/%player%-1" | |
# wait 2 seconds | |
# delete folder "./mps/%player%-1/data/" | |
# delete folder "./mps/%player%-1/region/" | |
# delete file "./mps/%player%-1/level.dat" | |
# delete file "./mps/%player%-1/uid.dat" | |
# delete file "./mps/%player%-1/session.lock" | |
# delete dir "./mps/%player%-1" | |
#command /tpwrd <text>: | |
# trigger: | |
# set {_w} to "world" | |
# teleport player to spawn of {_w} | |
#command /menu: | |
# trigger: | |
# open chest with 3 rows named "Private Server Menu" to player | |
# wait 1 tick | |
# 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"] | |
# format slot 13 of player with lava bucket named "&aRemove Player" with lore "||&e" to close then run [execute console command "kick Citrin_ lol"] | |
# format slot 15 of player with redstone comparator item named "&aGame Options" with lore "||&e" to close then run [execute console command "say xd"] | |
# 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"] | |
# 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"] | |
# 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"] | |
#skPerms by LimeGlass | |
#Thanks for Letting Me Bake This In! | |
options: | |
prefix: &6[&5SkPerms&6] | |
maincolour: &6 | |
secondcolour: &7 | |
command: /skperms | |
aliases: /perm, /permission | |
permission: skperms.admin | |
#CMD protection is basically extra security for your server. Only players inside of a list variable can use SkPerms | |
CMDprotection: false | |
CMDprotectionMsg: Unknown command. Type ""/help"" for help | |
#The player list is the list variable that contains players that can use SkPerms if CMDprotection is enabled | |
PlayerList: {example::players::*} | |
UseChat: false #use prefix and suffix in the chat | |
#Chat types: | |
#Display - Changes the player's display name (Vault will hook if installed) | |
#Override - !COMING SOON | |
ChatType: "Display" | |
version: 1.0.5 | |
on script load: | |
if file "plugins\SkPerms" exists: | |
delete {skperms::config::*} | |
else: | |
set yaml value "version" from file "plugins\SkPerms\config.yml" to "{@version}" | |
set yaml value "useYML" from file "plugins\SkPerms\config.yml" to false | |
set {skperms::config::version} to yaml value "version" from file "plugins\SkPerms\config.yml" | |
set {skperms::config::useYML} to yaml value "useYML" from file "plugins\SkPerms\config.yml" | |
if {skperms::config::useYML} is true: | |
if {skperms::players::*} is not set: | |
stop | |
delete file "plugins\SkPerms\players.yml" | |
loop {skperms::players::*}: | |
loop {skperms::player::%loop-value%::permissions::*}: | |
add "%loop-value-2%" to yaml list "players.%loop-value-1%.permissions" from file "plugins\SkPerms\players.yml" | |
on script unload: | |
loop {skperms::groups::*}: | |
if {skperms::group::%loop-value%::*} is not set: | |
loop {skperms::group::%loop-value-1%::permissions::*}: | |
loop {skperms::players::*}: | |
remove "%loop-value-2%" from {skperms::player::%loop-value-3%::permissions::*} | |
loop {skperms::players::*}: | |
remove "%loop-value-1%" from {skperms::player::%loop-value-2%::groups::*} | |
if {skperms::player::%loop-value-2%::groups::*} is not empty: | |
loop {skperms::player::%loop-value-2%::groups::*}: | |
loop {skperms::group::%loop-value-1%::permissions::*}: | |
set {_p} to "%loop-value-2%" parsed as player | |
add "%loop-value-4%" to {_p}'s permissions | |
remove "%loop-value%" from {skperms::groups::*} | |
command {@command} [<text>] [<text>] [<text>] [<text>] [<text>]: | |
permission: {@permission} | |
aliases: {@aliases} | |
trigger: | |
if {@CMDprotection} is true: | |
if command sender is not console: | |
if {@PlayerList} doesn't contain player or "%player%": | |
message "{@CMDprotectionMsg}" | |
stop | |
if arg 1 is not set: | |
message "" | |
message "{@prefix} v{@version}:" | |
message "{@maincolour}{@command} deleteDefault" | |
message "{@secondcolour}Deletes default group setting (If set)" | |
message "{@maincolour}{@command} (d|default) (group)" | |
if {skperms::default} is set: | |
message "{@secondcolour}Set the default group {@maincolour}(&7%{skperms::default}%{@maincolour})" | |
else: | |
message "{@secondcolour}Set the default group" | |
message "{@maincolour}{@command} (p|player) (player) (add|remove|list) permission [permission]" | |
message "{@secondcolour}Add/remove/list a players permissions" | |
message "{@maincolour}{@command} (p|player) (player) (add|set|remove|list) group [group]" | |
message "{@secondcolour}Add/remove/set/list a players group" | |
message "{@maincolour}{@command} (g|group) (group) (add|remove|list) permission [permission]" | |
message "{@secondcolour}Add/remove/list a group permission" | |
message "{@maincolour}{@command} (g|group) (group) (add|remove|list) group [group]" | |
message "{@secondcolour}Add/remove/list a groups connected groups" | |
message "{@secondcolour}A group is created once it contains a permission" | |
message "{@maincolour}{@command} (g|group) (group) (prefix|suffix) set (text)" | |
message "{@secondcolour}Set a suffix or prefix to a group" | |
message "" | |
else if arg 1 is "deleteDefault": | |
delete {skperms::default} | |
message "{@prefix} {@maincolour}Removed default group (No group set)" | |
else if arg 1 is "d", "setdefault" or "default": | |
if arg 2 is set: | |
set {skperms::default} to arg 2 | |
message "{@prefix} {@maincolour}Set default group to &l%arg 2%" | |
else: | |
message "{@prefix} {@maincolour}Error: Group not specified" | |
else if arg 1 is "p" or "player": | |
if arg 2 is not set: | |
message "{@prefix} {@maincolour}Error: Player not specified" | |
else if arg 2 is set: | |
if arg 3 is "a" or "add": | |
if arg 4 is "p", "permission" or "permissions": | |
if arg 5 is set: | |
if {skperms::groups::*} doesn't contain arg 2: | |
add arg 2 to {skperms::groups::*} | |
set {_player} to arg 2 parsed as player | |
add arg 5 to {_player}'s permissions | |
set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions | |
message "{@prefix} {@maincolour}Added %arg 5% to %arg 2%'s permissions" | |
else: | |
message "{@prefix} {@maincolour}Error: Permission not specified" | |
else if arg 4 is "g", "group" or "groups": | |
if arg 5 is set: | |
if {skperms::groups::*} doesn't contain arg 2: | |
add arg 2 to {skperms::groups::*} | |
if {skperms::player::%arg 2%::groups::*} doesn't contain arg 5: | |
add arg 5 to {skperms::player::%arg 2%::groups::*} | |
else: | |
message "{@prefix} {@secondcolour}%arg 2% already has group %arg 5%" | |
stop | |
message "{@prefix} {@maincolour}Added %arg 2% to group %arg 5%" | |
if {@UseChat} is true: | |
if {@ChatType} is "Display" or "display": | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 5: | |
if {skperms::group::%arg 5%::prefix} is set: | |
if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%" | |
else if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to "%player%" | |
loop all players: | |
if {skperms::player::%player%::groups::*} is not set: | |
set loop-player's display name to "%player%" | |
else: | |
message "{@prefix} {@maincolour}Error: Group not specified" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified" | |
else if arg 3 is "s" or "set": | |
if arg 4 is "g", "group" or "groups": | |
if arg 5 is set: | |
if {skperms::groups::*} doesn't contain arg 2: | |
add arg 2 to {skperms::groups::*} | |
delete {skperms::player::%arg 2%::groups::*} | |
add arg 5 to {skperms::player::%arg 2%::groups::*} | |
message "{@prefix} {@maincolour}Set %arg 2% to group %arg 5%" | |
if {@UseChat} is true: | |
if {@ChatType} is "Display" or "display": | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 5: | |
if {skperms::group::%arg 5%::prefix} is set: | |
if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%" | |
else if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to "%player%" | |
loop all players: | |
if {skperms::player::%player%::groups::*} is not set: | |
set loop-player's display name to "%player%" | |
else: | |
message "{@prefix} {@maincolour}Error: Group not specified" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified" | |
else if arg 3 is "r" or "remove": | |
if arg 4 is "p", "permission" or "permissions": | |
if arg 5 is set: | |
set {_player} to arg 2 parsed as player | |
remove arg 5 from {_player}'s permissions | |
set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions | |
message "{@prefix} {@maincolour}Removed %arg 5% from %arg 2%'s permissions" | |
else: | |
message "{@prefix} {@maincolour}Error: Permission not specified" | |
else if arg 4 is "g", "group" or "groups": | |
if arg 5 is set: | |
if {skperms::player::%arg 2%::groups::*} contains arg 5: | |
remove arg 5 from {skperms::player::%arg 2%::groups::*} | |
message "{@prefix} {@maincolour}Removed %arg 2% from group %arg 5%" | |
if {@UseChat} is true: | |
if {@ChatType} is "Display" or "display": | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 5: | |
if {skperms::group::%arg 5%::prefix} is set: | |
if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%" | |
else if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to "%player%" | |
loop all players: | |
if {skperms::player::%player%::groups::*} is not set: | |
set loop-player's display name to "%player%" | |
else: | |
message "{@prefix} {@maincolour}Error: Player %arg 2% doesn't have that group" | |
else: | |
message "{@prefix} {@maincolour}Error: Group not specified" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified" | |
else if arg 3 is "l" or "list": | |
if arg 4 is "p", "permission" or "permissions": | |
set {_player} to arg 2 parsed as player | |
message "{@prefix} {@maincolour}%{_player}'s permissions%" | |
else if arg 4 is "g", "group" or "groups": | |
message "{@prefix} {@maincolour}%{skperms::player::%arg 2%::groups::*}%" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified" | |
else if arg 1 is "g", "group" or "groups": | |
if arg 2 is not set: | |
message "{@prefix} {@maincolour}Error: Group not specified" | |
else if arg 2 is set: | |
if arg 3 is "a" or "add": | |
if arg 4 is "p", "permission" or "permissions": | |
if arg 5 is set: | |
if {skperms::groups::*} doesn't contain arg 2: | |
add arg 2 to {skperms::groups::*} | |
add arg 5 to {skperms::group::%arg 2%::permissions::*} | |
message "{@prefix} {@maincolour}Added %arg 5% to group %arg 2%'s permissions" | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 2: | |
loop {skperms::group::%arg 2%::permissions::*}: | |
add "%loop-value-2%" to loop-player's permissions | |
else: | |
message "{@prefix} {@maincolour}Error: Permission not specified" | |
else if arg 4 is "g", "group" or "groups": | |
if arg 5 is set: | |
if {skperms::groups::*} doesn't contain arg 2: | |
add arg 2 to {skperms::groups::*} | |
loop {skperms::group::%arg 5%::permissions::*}: | |
add "%loop-value%" to {skperms::group::%arg 2%::permissions::*} | |
message "{@prefix} {@maincolour}Added %arg 5%'s permissions to group %arg 2%" | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 2: | |
loop {skperms::group::%arg 2%::permissions::*}: | |
add "%loop-value-2%" to loop-player's permissions | |
else: | |
message "{@prefix} {@maincolour}Error: Group not specified" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified" | |
else if arg 3 is "r" or "remove": | |
if arg 4 is "p", "permission" or "permissions": | |
if arg 5 is set: | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 2: | |
loop {skperms::group::%arg 2%::permissions::*}: | |
remove "%loop-value-2%" from loop-player's permissions | |
remove arg 5 from {skperms::group::%arg 2%::permissions::*} | |
message "{@prefix} {@maincolour}Removed %arg 5% from group %arg 2%'s permissions" | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 2: | |
loop {skperms::group::%arg 2%::permissions::*}: | |
add "%loop-value-2%" to loop-player's permissions | |
else: | |
message "{@prefix} {@maincolour}Error: Permission not specified" | |
else if arg 4 is "g", "group" or "groups": | |
if arg 5 is set: | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 2: | |
loop {skperms::group::%arg 2%::permissions::*}: | |
remove "%loop-value-2%" from loop-player's permissions | |
loop {skperms::group::%arg 5%::permissions::*}: | |
remove "%loop-value%" from {skperms::group::%arg 2%::permissions::*} | |
add 1 to {_l} | |
message "{@prefix} {@maincolour}Removed %{_l}% of %arg 5%'s permissions from group %arg 2%" | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 2: | |
loop {skperms::group::%arg 2%::permissions::*}: | |
add "%loop-value-2%" to loop-player's permissions | |
else: | |
message "{@prefix} {@maincolour}Error: Group not specified" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified" | |
else if arg 3 is "l" or "list": | |
if arg 4 is "p", "permission" or "permissions": | |
message "{@prefix} {@maincolour}%{skperms::group::%arg 2%::permissions::*}%" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified" | |
else if arg 3 is "prefix" or "suffix": | |
if arg 4 is "set": | |
if arg 5 is set: | |
set {skperms::group::%arg 2%::%arg 3%} to arg 5 | |
message "{@prefix} {@maincolour}%arg 3% set to %arg 5%" | |
if {@UseChat} is true: | |
if {@ChatType} is "Display" or "display": | |
loop all players: | |
if {skperms::player::%player%::groups::*} contains arg 5: | |
if {skperms::group::%arg 5%::prefix} is set: | |
if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%" | |
else if {skperms::group::%arg 5%::suffix} is set: | |
set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%" | |
else: | |
set loop-player's display name to "%player%" | |
loop all players: | |
if {skperms::player::%player%::groups::*} is not set: | |
set loop-player's display name to "%player%" | |
else: | |
message "{@prefix} {@maincolour}Prefix/Suffix not specified" | |
else: | |
message "{@prefix} {@maincolour}Error: Type not specified (Type ""set"")" | |
#on quit: | |
# set {skperms::player::%player%::permissions::*} to player's permissions | |
on join: | |
loop 2 times: | |
remove "%player%" from {skperms::players::*} | |
add "%player%" to {skperms::players::*} | |
loop {skperms::groups::*}: | |
if player has permission "skperms.group.%loop-value%": | |
if {skperms::player::%player%::groups::*} doesn't contain "%loop-value%": | |
add "%loop-value%" to {skperms::player::%player%::groups::*} | |
if {skperms::default} is set: | |
loop {skperms::group::%{skperms::default}%::permissions::*}: | |
add "%loop-value%" to player's permissions | |
loop {skperms::player::%player%::permissions::*}: | |
add "%loop-value%" to player's permissions | |
if {skperms::player::%player%::groups::*} is not empty: | |
loop {skperms::player::%player%::groups::*}: | |
loop {skperms::group::%loop-value%::permissions::*}: | |
add "%loop-value-2%" to player's permissions | |
if {@UseChat} is true: | |
if {@ChatType} is "Display" or "display": | |
if {skperms::group::%loop-index%::prefix} is set: | |
if {skperms::group::%loop-index%::suffix} is set: | |
set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%%{skperms::group::%loop-index%::suffix}%" | |
else: | |
set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%" | |
else if {skperms::group::%loop-index%::suffix} is set: | |
set player's display name to coloured "%player%%{skperms::group::%loop-index%::suffix}%" | |
else: | |
set player's display name to "%player%" | |
loop all players: | |
if {skperms::player::%player%::groups::*} is not set: | |
set loop-player's display name to "%player%" | |
on load: | |
set {_time} to difference between {mineplex.starttime} and now | |
broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7has been loaded! (%{_time}%)" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment