Guest User

Mineplex Skript!

a guest
Apr 20th, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 420.25 KB | None | 0 0
  1. on load:
  2. set {mineplex.starttime} to now
  3.  
  4. #(Old ugly acci text here)
  5. #
  6. #Mineplex Core Remake
  7. #The best and only Mineplex Copy
  8. #by Michael (Champion112) and 12 more users,
  9. #Enjoy!
  10. script options:
  11. $ use permissions
  12.  
  13. #! MCR Settings
  14.  
  15.  
  16. #! If you want to use MySQL features edit the details below
  17. script options:
  18. $ db url jdbc:mysql://<HOST>:3306/<DATABASE>
  19. $ db username <USERNAME>
  20. $ db password <PASSWORD>
  21.  
  22.  
  23. #! This value can be set to the following:
  24. #! "file": Stores the playerdata into files (Default)
  25. #! "sql": Stores the playerdata into a sql database (Details must be setup above)
  26. options:
  27. mode: file
  28.  
  29. #! These are internal settings, it is not recomended that you mess with them as they WILL mess up the plugin!
  30. options:
  31. MCRVER: 3.0
  32. MCRHOTFIX: 0
  33. configver: shamu
  34. playerdata: 3
  35.  
  36. #! json.sk code DO NOT MESS WITH THIS! !(Rezz ily)!
  37. options:
  38. debug: false
  39. codes: 0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f|k|l|m|n|o|r
  40.  
  41. function mcrremoveColor(msg: text) :: text:
  42. set {_m::*} to {_msg} split at ""
  43.  
  44. set {_color-codes} to "{@codes}"
  45. set {_colors::*} to {_color-codes} split at "|"
  46.  
  47. set {_new} to ""
  48.  
  49. loop {_m::*}:
  50. set {_char} to loop-value
  51. set {_prev} to the last character of {_new}
  52.  
  53. if {_prev} is "&":
  54.  
  55. loop {_colors::*}:
  56.  
  57. if loop-value-2 is {_char}:
  58. set {_skip} to true
  59.  
  60. if {_skip} is set:
  61. delete {_skip}
  62.  
  63. else:
  64. set {_new} to "%{_new}%%{_char}%"
  65.  
  66. return {_new}
  67.  
  68. function mcrjsonColorize(msg: text, default-color: text = "&r") :: text:
  69. set {_m::*} to {_msg} split at ""
  70.  
  71. set {_color-codes} to "{@codes}"
  72. set {_colors::*} to {_color-codes} split at "|"
  73.  
  74. set {_color} to colored {_default-color}
  75. set {_code} to the first character of {_color}
  76.  
  77. set {_new} to ""
  78. set {_skip} to 0
  79.  
  80. loop amount of {_m::*} times:
  81.  
  82. if {_skip} is more than or equal to 1:
  83. subtract 1 from {_skip}
  84.  
  85. else:
  86. set {_char} to {_m::%loop-number%}
  87. set {_next} to {_m::%loop-number + 1%}
  88.  
  89. if {@debug} is true:
  90. broadcast "&a[Character Check] &r%loop-number%: &7%{_char}% &r&onext: &8%{_next}% &r[%{_color}%color&r]"
  91.  
  92. if {_char} is "&" or {_code}:
  93.  
  94. if {@debug} is true:
  95. broadcast "&a[Color Check] &rFOUND: &o%{_char}%%{_next}% &7&m<--&7&o is it valid?"
  96.  
  97. loop {_colors::*}:
  98.  
  99. if loop-value-2 is {_next}:
  100. set {_color} to "%{_color}%%{_code}%%{_next}%"
  101.  
  102. if {_next} is "r":
  103. set {_color} to {_default-color}
  104.  
  105. set {_new} to "%{_new}%%{_color}%"
  106. set {_skip} to 1
  107.  
  108. if {_skip} is less than or equal to 0:
  109. set {_new} to "%{_new}%%{_char}%"
  110.  
  111. else if {_char} is " ":
  112. set {_new} to "%{_new}% %{_color}%"
  113.  
  114. else:
  115. set {_new} to "%{_new}%%{_char}%"
  116.  
  117. return {_new}
  118.  
  119. function mcrjsonSanitize(msg: text) :: text:
  120. if {@debug} is true:
  121. broadcast "&a[Sanitize] &7&oSanitizing input..."
  122.  
  123. set {_m::*} to {_msg} split at ""
  124.  
  125. loop {_m::*}:
  126.  
  127. if loop-value is """":
  128. set {_m::%loop-index%} to "\""" # """
  129.  
  130. else if loop-value is "\":
  131. set {_m::%loop-index%} to "\\"
  132.  
  133. set {_new} to join {_m::*} with ""
  134. return {_new}
  135.  
  136. function mcrjsonFormat(msg: text, color: boolean = true) :: text:
  137. set {_m::*} to {_msg} split at "||"
  138.  
  139. set {_current} to 1
  140.  
  141. loop {_m::*}:
  142. if {_clusters::%{_current}%} is not set:
  143. set {_clusters::%{_current}%} to ""
  144.  
  145. if {_clusters::%{_current}%::text} is not set:
  146. set {_clusters::%{_current}%::text} to mcrjsonSanitize(loop-value)
  147.  
  148. else:
  149. set {_tag} to the first 4 characters of loop-value
  150. set {_value} to subtext of loop-value from characters 5 to the length of loop-value
  151.  
  152. if {_tag} is "ttp:":
  153. set {_clusters::%{_current}%::tooltip} to mcrjsonSanitize({_value})
  154.  
  155. else if {_tag} is "cmd:":
  156. set {_clusters::%{_current}%::command} to mcrjsonSanitize({_value})
  157.  
  158. else if {_tag} is "sgt:":
  159. set {_clusters::%{_current}%::suggest} to mcrjsonSanitize({_value})
  160.  
  161. else if {_tag} is "url:":
  162.  
  163. if {_value} doesn't contain "http://" or "https://":
  164. set {_value} to "http://%{_value}%"
  165.  
  166. set {_clusters::%{_current}%::url} to mcrjsonSanitize({_value})
  167.  
  168. else if {_tag} is "ins:":
  169. set {_clusters::%{_current}%::insertion} to mcrjsonSanitize({_value})
  170.  
  171. else:
  172. add 1 to {_current}
  173. set {_clusters::%{_current}%::text} to mcrjsonSanitize(loop-value)
  174. set {_clusters::%{_current}%} to ""
  175.  
  176. if {@debug} is true:
  177. broadcast "&a[Tag Check] &3cluster:&b%{_current}% &8(&f&o%{_tag}%&8)"
  178.  
  179. loop {_clusters::*}:
  180.  
  181. if {@debug} is true:
  182. broadcast "&a[Cluster Check] &7&oCluster ##%loop-index% exists."
  183.  
  184. set {_i} to loop-index
  185.  
  186. set {_text} to {_clusters::%{_i}%::text}
  187.  
  188. if {_color} is true:
  189. set {_text} to mcrjsonColorize({_text})
  190.  
  191. if {_json} is not set:
  192. set {_json} to "{""text"":""%{_text}%"""
  193. else:
  194. set {_json} to "%{_json}%,{""text"":""%{_text}%"""
  195.  
  196. if {_clusters::%{_i}%::tooltip} is set:
  197.  
  198. if {_color} is true:
  199. set {_tooltip} to mcrjsonColorize({_clusters::%{_i}%::tooltip})
  200.  
  201. else:
  202. set {_tooltip} to {_clusters::%{_i}%::tooltip}
  203.  
  204. set {_json} to "%{_json}%,""hoverEvent"":{""action"": ""show_text"",""value"": ""%{_tooltip}%""}"
  205.  
  206. if {_clusters::%{_i}%::insertion} is set:
  207. set {_json} to "%{_json}%,""insertion"":""%{_clusters::%{_i}%::insertion}%"",""obfuscated"":false"
  208.  
  209. if {_clusters::%{_i}%::command} is set:
  210. set {_clickable} to "%{_json}%,""clickEvent"":{""action"":""run_command"",""value"":""%{_clusters::%{_i}%::command}%""}"
  211.  
  212. if {_clusters::%{_i}%::suggest} is set:
  213. set {_clickable} to "%{_json}%,""clickEvent"":{""action"": ""suggest_command"",""value"": ""%{_clusters::%{_i}%::suggest}%""}"
  214.  
  215. if {_clusters::%{_i}%::url} is set:
  216. set {_clickable} to "%{_json}%,""clickEvent"":{""action"": ""open_url"",""value"": ""%{_clusters::%{_i}%::url}%""}"
  217.  
  218. if {_clickable} is set:
  219. set {_json} to "%{_clickable}%}"
  220. delete {_clickable}
  221.  
  222. else:
  223. set {_json} to "%{_json}%}"
  224.  
  225. return "{""text"":"""", ""extra"":[%{_json}%]}"
  226.  
  227. function mcrjson(to: text, msg: text, color: boolean = true):
  228. set {_msg} to mcrjsonFormat({_msg}, {_color})
  229. execute console command "/tellraw %{_to}% %{_msg}%"
  230.  
  231. if {@debug} is true:
  232. set {_player} to {_to} parsed as offline player
  233. if {_player} is online:
  234. send uncolored {_msg} to {_player}
  235.  
  236. function mcrjsonBroadcast(msg: text, color: boolean = true):
  237. mcrjson("@a", {_msg}, {_color})
  238.  
  239. #MCR Code
  240. #MCR Code
  241. #MCR Code
  242. #MCR Code
  243. #MCR Code
  244. #MCR Code
  245. #MCR Code
  246.  
  247. on load: #You cannot trust people to enter the correct thing so lets double check for them :)
  248. if "{@mode}" is "file":
  249. set {mineplex.mode} to "file"
  250. send "§9MCR> §eMCR has been set to store playerdata into files!" to the console
  251. else if "{@mode}" is "sql":
  252. set {mineplex.mode} to "sql"
  253. send "§9MCR> §eMCR has been set to store playerdata into SQL!" to the console
  254. send "§9MCR> §eThey better have setup the database correctly" to the console
  255. else:
  256. set {mineplex.mode} to "file"
  257. send "§9MCR> §eMCR has been set to store playerdata into files!" to the console
  258.  
  259. on load:
  260. if {mineplex.mode} is "sql":
  261. update "CREATE TABLE IF NOT EXISTS `accounts` ( `id` INT NULL DEFAULT NULL AUTO_INCREMENT , `name` VARCHAR(40) NOT NULL , `uuid` VARCHAR(100) NOT NULL , `rank` VARCHAR(20) NOT NULL DEFAULT 'All' , `level` INT(20) NOT NULL DEFAULT '0' , `gems` INT(20) NOT NULL DEFAULT '0' , `shards` INT(20) NOT NULL DEFAULT '0' , `banned` VARCHAR(20) NOT NULL DEFAULT 'no' , `muted` VARCHAR(20) NOT NULL DEFAULT 'no' , UNIQUE (`id`)) ENGINE = InnoDB;"
  262. update "CREATE TABLE IF NOT EXISTS `newslist` ( `id` INT(11) NOT NULL AUTO_INCREMENT , `newsString` VARCHAR(256) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL , `newsPosition` VARCHAR(11) NULL DEFAULT NULL , UNIQUE (`id`)) ENGINE = InnoDB;"
  263.  
  264. function parseRank(p: player , r: text) :: string:
  265. set {_uuid} to uuid of {_p}
  266. if {mineplex.mode} is "file":
  267. set {_get} to value "rank" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  268. if {mineplex.mode} is "sql":
  269. set {_get} to first element out of objects in column "rank" from result of query "SELECT rank FROM `accounts` WHERE uuid = '%uuid of {_p}%'"
  270. if {_get} is "All":
  271. set {mineplex.rank.%{_p}%} to ""
  272. return "&fPlayer"
  273. if {_get} is "Ultra":
  274. set {mineplex.rank.%{_p}%} to "&b&lULTRA "
  275. return "&bUltra"
  276. if {_get} is "Hero":
  277. set {mineplex.rank.%{_p}%} to "&d&lHERO "
  278. return "&dHero"
  279. if {_get} is "Legend":
  280. set {mineplex.rank.%{_p}%} to "&a&lLEGEND "
  281. return "&aLegend"
  282. if {_get} is "Titan":
  283. set {mineplex.rank.%{_p}%} to "&c&lTITAN "
  284. return "&cTitan"
  285. if {_get} is "Trainee":
  286. set {mineplex.rank.%{_p}%} to "&6&lTRAINEE "
  287. return "&6Trainee"
  288. if {_get} is "Mod":
  289. set {mineplex.rank.%{_p}%} to "&6&lMOD "
  290. return "&6Mod"
  291. if {_get} is "SrMod":
  292. set {mineplex.rank.%{_p}%} to "&6&lSR.MOD "
  293. return "&6Sr.Mod"
  294. if {_get} is "CMod":
  295. set {mineplex.rank.%{_p}%} to "&6&lC.MOD "
  296. return "&6C.Mod"
  297. if {_get} is "Admin":
  298. set {mineplex.rank.%{_p}%} to "&4&lADMIN "
  299. return "&4Admin"
  300. if {_get} is "Apex":
  301. set {mineplex.rank.%{_p}%} to "&9&lAPEX "
  302. return "&9Apex"
  303. if {_get} is "Leader":
  304. set {mineplex.rank.%{_p}%} to "&4&lLEADER "
  305. return "&4Leader"
  306. if {_get} is "Owner":
  307. set {mineplex.rank.%{_p}%} to "&4&lOWNER "
  308. return "&4Owner"
  309. if {_get} is "Builder":
  310. set {mineplex.rank.%{_p}%} to "&9&lBUILDER "
  311. return "&9Builder"
  312. if {_get} is "Maplead":
  313. set {mineplex.rank.%{_p}%} to "&9&lMAPLEAD "
  314. return "&9Maplead"
  315. if {_get} is "Mapper":
  316. set {mineplex.rank.%{_p}%} to "&9&lMAPPER "
  317. return "&9Mapper"
  318. if {_get} is "JrDev":
  319. set {mineplex.rank.%{_p}%} to "&6&lJR.DEV "
  320. return "&6Jr.Dev"
  321. if {_get} is "Dev":
  322. set {mineplex.rank.%{_p}%} to "&4&lDEV "
  323. return "&4Dev"
  324. if {_get} is "Twitch":
  325. set {mineplex.rank.%{_p}%} to "&5&lTWITCH "
  326. return "&5Twitch"
  327. if {_get} is "Youtube":
  328. set {mineplex.rank.%{_p}%} to "&c&lYOUTUBE "
  329. return "&cYouTube"
  330. if {_get} is "Event":
  331. set {mineplex.rank.%{_p}%} to "&f&lEVENT "
  332. return "&fEvent"
  333. if {_get} is "Yt":
  334. set {mineplex.rank.%{_p}%} to "&5&lYT "
  335. return "&5YT"
  336. if {_get} is "Eternal":
  337. set {mineplex.rank.%{_p}%} to "&3&lETERNAL "
  338. return "&3Eternal"
  339. if {_get} is "Support":
  340. set {mineplex.rank.%{_p}%} to "&9&lSUPPORT "
  341. return "&9Support"
  342. if {_get} is "Artist":
  343. set {mineplex.rank.%{_p}%} to "&9&lARTIST "
  344. return "&9Artist"
  345.  
  346. function parseRankRaw(r: text) :: string:
  347. set {_get} to {_r}
  348. if {_get} is "All":
  349. set {_rank} to ""
  350. if {_get} is "Ultra":
  351. set {_rank} to "&b&lULTRA "
  352. if {_get} is "Hero":
  353. set {_rank} to "&d&lHERO "
  354. if {_get} is "Legend":
  355. set {_rank} to "&a&lLEGEND "
  356. if {_get} is "Titan":
  357. set {_rank} to "&c&lTITAN "
  358. if {_get} is "Trainee":
  359. set {_rank} to "&6&lTRAINEE "
  360. if {_get} is "Mod":
  361. set {_rank} to "&6&lMOD "
  362. if {_get} is "SrMod":
  363. set {_rank} to "&6&lSR.MOD "
  364. if {_get} is "CMod":
  365. set {_rank} to "&6&lC.MOD "
  366. if {_get} is "Admin":
  367. set {_rank} to "&4&lADMIN "
  368. if {_get} is "Apex":
  369. set {_rank} to "&9&lAPEX "
  370. if {_get} is "Leader":
  371. set {_rank} to "&4&lLEADER "
  372. if {_get} is "Owner":
  373. set {_rank} to "&4&lOWNER "
  374. if {_get} is "Builder":
  375. set {_rank} to "&9&lBUILDER "
  376. if {_get} is "Maplead":
  377. set {_rank} to "&9&lMAPLEAD "
  378. if {_get} is "Mapper":
  379. set {_rank} to "&9&lMAPPER "
  380. if {_get} is "JrDev":
  381. set {_rank} to "&6&lJR.DEV "
  382. if {_get} is "Dev":
  383. set {_rank} to "&4&lDEV "
  384. if {_get} is "Twitch":
  385. set {_rank} to "&5&lTWITCH "
  386. if {_get} is "Youtube":
  387. set {_rank} to "&c&lYOUTUBE "
  388. if {_get} is "Event":
  389. set {_rank} to "&f&lEVENT "
  390. if {_get} is "Yt":
  391. set {_rank} to "&5&lYT "
  392. if {_get} is "Eternal":
  393. set {_rank} to "&3&lETERNAL "
  394. if {_get} is "Support":
  395. set {_rank} to "&9&lSUPPORT "
  396. if {_get} is "Artist":
  397. set {_rank} to "&9&lARTIST "
  398. if {_rank} is set:
  399. return {_rank}
  400. else:
  401. return "null"
  402.  
  403. function playerdata(p: offline player) :: boolean:
  404. set {_uuid} to uuid of {_p}
  405. if {mineplex.mode} is "file":
  406. if file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml" doesn't exists:
  407. create file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  408. set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  409. set "player" to "%{_p}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  410. set "rank" to "All" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  411. set "level" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  412. set "gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  413. set "shards" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  414. set "banned" to "no" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  415. set "muted" to "no" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  416. set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  417. set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  418. set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  419. set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  420. set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  421. else:
  422. set {_ver} to value "version" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  423. if {_ver} is not "{@playerdata}":
  424. if {_ver} is "1":
  425. set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  426. set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  427. set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  428. set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  429. set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  430. set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  431. send "&9MCR> &7Your playdata has been updated to the latest version!" to {_p}
  432. if {_ver} is "2":
  433. set "stats.global.gems" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  434. set "stats.global.games" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  435. set "stats.global.dailyr" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  436. set "stats.global.voted" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  437. set "stats.global.chests" to "0" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  438. set "version" to "{@playerdata}" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  439. send "&9MCR> &7Your playdata has been updated to the latest version!" to {_p}
  440. set "player" to "%{_p}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  441. set {_get} to value "rank" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  442. parseRank({_p}, "LOL")
  443. set {_lvl} to value "level" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  444. execute console command "/givestat %{_p}% Global.ExpEarned %{_lvl}%"
  445. set {_sh} to value "shards" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  446. set {mineplex.shards.%{_p}%} to {_sh} parsed as an number
  447. set {_ge} to value "gems" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  448. set {mineplex.gems.%{_p}%} to {_ge} parsed as an number
  449. set {_ban} to value "banned" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  450. if {_ban} is "yes":
  451. set {banned::%{_p}%} to true
  452. else:
  453. set {banned::%{_p}%} to false
  454. set {_mute} to value "muted" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  455. if {_mute} is "yes":
  456. set {muted::%{_p}%} to true
  457. else:
  458. set {muted::%{_p}%} to false
  459. else if {mineplex.mode} is "sql":
  460. set {_getuuid} to first element out of objects in column "uuid" from result of query "SELECT uuid FROM `accounts` WHERE uuid = '%{_uuid}%'"
  461. if {_getuuid} is not set:
  462. update "INSERT INTO `accounts` (`uuid`, `name`) VALUES ('%{_uuid}%', '%{_p}%')"
  463. parseRank({_p}, "LOL")
  464. set {_lvl} to first element out of objects in column "level" from result of query "SELECT level FROM `accounts` WHERE uuid = '%{_uuid}%'"
  465. execute console command "/givestat %{_p}% Global.ExpEarned %{_lvl}%"
  466. set {_sh} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
  467. set {mineplex.shards.%{_p}%} to {_sh}
  468. set {_ge} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
  469. set {mineplex.gems.%{_p}%} to {_ge}
  470. set {_ban} to first element out of objects in column "banned" from result of query "SELECT banned FROM `accounts` WHERE uuid = '%{_uuid}%'"
  471. if {_ban} is "yes":
  472. set {banned::%{_p}%} to true
  473. else:
  474. set {banned::%{_p}%} to false
  475. set {_mute} to first element out of objects in column "muted" from result of query "SELECT muted FROM `accounts` WHERE uuid = '%{_uuid}%'"
  476. if {_mute} is "yes":
  477. set {muted::%{_p}%} to true
  478. else:
  479. set {muted::%{_p}%} to false
  480.  
  481. function getPlayerdata(p: offline player , f: text) :: string:
  482. set {_uuid} to uuid of {_p}
  483. if {mineplex.mode} is "file":
  484. set {_get} to value "%{_f}%" get of "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  485. return {_get}
  486. else if {mineplex.mode} is "sql":
  487. set {_get} to first element out of objects in column "%{_f}%" from result of query "SELECT %{_f}% FROM `accounts` WHERE uuid = '%{_uuid}%'"
  488. return {_get}
  489.  
  490. function setPlayerdata(p: offline player , f: text , v: text) :: boolean:
  491. set {_uuid} to uuid of {_p}
  492. if {mineplex.mode} is "file":
  493. set "%{_f}%" to "%{_v}%" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  494. return true
  495. playerdata({_p})
  496. else if {mineplex.mode} is "sql":
  497. update "UPDATE `accounts` SET `%{_f}%` = '%{_v}%' WHERE uuid = '%{_uuid}%'"
  498. return true
  499. set {_s} to getPlayerdata({_p}, "shards")
  500. set {_g} to getPlayerdata({_p}, "gems")
  501. broadcast "shard: %{_s}% -gem: %{_g}%"
  502. playerdata({_p})
  503.  
  504. function addShards(p: offline player , a: number) :: boolean:
  505. set {_uuid} to uuid of {_p}
  506. if {mineplex.mode} is "file":
  507. set {_get} to getPlayerdata({_p}, "shards")
  508. set {_cur} to {_get} parsed as a number
  509. add {_a} to {_cur}
  510. setPlayerdata({_p}, "shards", "%{_cur}%")
  511. else if {mineplex.mode} is "sql":
  512. set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
  513. add {_a} to {_get}
  514. setPlayerdata({_p}, "shards", "%{_get}%")
  515.  
  516. function delShards(p: offline player , a: number) :: boolean:
  517. set {_uuid} to uuid of {_p}
  518. if {mineplex.mode} is "file":
  519. set {_get} to getPlayerdata({_p}, "shards")
  520. set {_cur} to {_get} parsed as a number
  521. remove {_a} from {_cur}
  522. setPlayerdata({_p}, "shards", "%{_cur}%")
  523. else if {mineplex.mode} is "sql":
  524. set {_get} to first element out of objects in column "shards" from result of query "SELECT shards FROM `accounts` WHERE uuid = '%{_uuid}%'"
  525. remove {_a} from {_get}
  526. setPlayerdata({_p}, "shards", "%{_get}%")
  527.  
  528. function addGems(p: offline player , a: number) :: boolean:
  529. set {_uuid} to uuid of {_p}
  530. if {mineplex.mode} is "file":
  531. set {_get} to getPlayerdata({_p}, "gems")
  532. set {_cur} to {_get} parsed as a number
  533. add {_a} to {_cur}
  534. setPlayerdata({_p}, "gems", "%{_cur}%")
  535. else if {mineplex.mode} is "sql":
  536. set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
  537. add {_a} to {_get}
  538. setPlayerdata({_p}, "gems", "%{_get}%")
  539.  
  540. function delGems(p: offline player , a: number) :: boolean:
  541. set {_uuid} to uuid of {_p}
  542. if {mineplex.mode} is "file":
  543. set {_get} to getPlayerdata({_p}, "gems")
  544. set {_cur} to {_get} parsed as a number
  545. remove {_a} from {_cur}
  546. setPlayerdata({_p}, "gems", "%{_cur}%")
  547. else if {mineplex.mode} is "sql":
  548. set {_get} to first element out of objects in column "gems" from result of query "SELECT gems FROM `accounts` WHERE uuid = '%{_uuid}%'"
  549. remove {_a} from {_get}
  550. setPlayerdata({_p}, "gems", "%{_get}%")
  551.  
  552. on quit:
  553. delete {mineplex.rank.%player%}
  554. delete {mineplex.level.%player%}
  555. delete {mineplex.gems.%player%}
  556. delete {mineplex.shards.%player%}
  557. delete {banned::%player%}
  558. delete {muted::%player%}
  559.  
  560. on connect:
  561. set {_uuid} to uuid of {_p}
  562. playerdata(player)
  563. send "§9MCR> §e%player% (%uuid of player%) has been loaded from playerdata!" to the console
  564.  
  565. function Beam(e1: entity , e2: entity):
  566. spawn a squid at location 0 meter behind {_e1}'s head
  567. set {_el} to last spawned entity
  568. set target of {_el} to {_e2}
  569. apply invisibility to the last spawned entity
  570. add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1, NoAI:1}" to nbt of last spawned entity
  571. set {_targLoc} to location of {_e2}
  572.  
  573. loop 100 times:
  574. teleport {_el} to location 0 meter behind {_e1}'s head
  575. set target of {_el} to {_e2}
  576. add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el}
  577. if "%{_e2}'s name%" is "BeamCow":
  578. teleport {_e2} to {_targLoc}
  579. add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2}
  580. wait 1 tick
  581.  
  582. create a safe explosion with force 2 at {_e1}
  583. loop entities in radius 3 of {_e2}:
  584. make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_e2}))
  585. teleport {_el} 300 blocks below {_el}
  586. teleport {_e2} 300 blocks below {_e2}
  587. kill {_el}
  588. kill {_e2}
  589.  
  590. function ClientBeam(e1: entity , e3: entity , e2: entity):
  591. spawn a cow at location of {_e2}
  592. set {_c} to last spawned entity
  593. add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
  594. spawn a guardian at location 1 meter behind {_e1}'s head
  595. set {_el} to last spawned entity
  596. set target of {_el} to {_e2}
  597. loop all players:
  598. protocol hide {_e1} from loop-player
  599. protocol hide {_e2} from loop-player
  600. protocol show {_e1} to {_e3}
  601. protocol show {_e2} to {_e3}
  602. apply invisibility to {_c}
  603. apply invisibility to the last spawned entity
  604. add "{CustomName:""BeamGuar"", NoGravity:1, Silent:1}" to nbt of last spawned entity
  605. set {_targLoc} to location of {_e2}
  606.  
  607. loop 100 times:
  608. teleport {_el} to location 1 meter behind {_e1}'s head
  609. add "{Motion:[0.0,0.0,0.0]}" to nbt of {_el}
  610. if "%{_e2}'s name%" is "BeamCow":
  611. teleport {_e2} to {_targLoc}
  612. add "{Motion:[0.0,0.0,0.0]}" to nbt of {_e2}
  613. wait 1 tick
  614.  
  615. create a safe explosion with force 2 at {_e2}
  616. loop entities in radius 3 of {_c}:
  617. make {_e1} damage loop-entity by (3 - (distance between loop-entity and {_c}))
  618. teleport {_el} 300 blocks below {_el}
  619. teleport {_e2} 300 blocks below {_e2}
  620. kill {_el}
  621. kill {_c}
  622.  
  623. function configRefresh(n: number) :: number:
  624. set {mineplex.config.config} to value "config" get of "plugins/Mineplex-Core-Remake/config.yml"
  625. set {mineplex.config.servername} to value "servername" get of "plugins/Mineplex-Core-Remake/config.yml"
  626. set {mineplex.config.website} to value "website" get of "plugins/Mineplex-Core-Remake/config.yml"
  627. set {mineplex.config.appealwebsite} to value "appealwebsite" get of "plugins/Mineplex-Core-Remake/config.yml"
  628. set {mineplex.config.ruleswebsite} to value "ruleswebsite" get of "plugins/Mineplex-Core-Remake/config.yml"
  629. set {mineplex.config.youtube} to value "youtube" get of "plugins/Mineplex-Core-Remake/config.yml"
  630. set {mineplex.config.twitter} to value "twitter" get of "plugins/Mineplex-Core-Remake/config.yml"
  631. set {mineplex.config.shoplink} to value "shoplink" get of "plugins/Mineplex-Core-Remake/config.yml"
  632. set {mineplex.config.world} to value "worldname" get of "plugins/Mineplex-Core-Remake/config.yml"
  633. set {mineplex.config.doublejump} to value "doublejump" get of "plugins/Mineplex-Core-Remake/config.yml"
  634. set {mineplex.config.autoop} to value "autoop" get of "plugins/Mineplex-Core-Remake/config.yml"
  635. set {mineplex.config.unbanadmin} to value "unbanadmin" get of "plugins/Mineplex-Core-Remake/config.yml"
  636.  
  637. function configPopulate(n: number) :: number:
  638. create file "plugins/Mineplex-Core-Remake/config.yml"
  639. set "config" to "{@configver}" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  640. set "servername" to "Mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  641. set "website" to "www.mineplex.com" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  642. set "appealwebsite" to "www.mineplex.com/appeals" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  643. set "ruleswebsite" to "www.mineplex.com/rules" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  644. set "youtube" to "http://youtube.com/mineplexgamesofficial" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  645. set "twitter" to "http://twitter.com/mineplex" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  646. set "shoplink" to "www.mineplex.com/shop" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  647. set "worldname" to "world" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  648. set "doublejump" to "true" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  649. set "autoop" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  650. set "unbanadmin" to "false" in yaml file "plugins/Mineplex-Core-Remake/config.yml"
  651.  
  652. function updateRankAPI(p: player) :: player:
  653. wait 5 ticks
  654. if {mineplex.rank.%{_p}%} is not set:
  655. set {mineplex.rank.%{_p}%} to ""
  656. if {mineplex.disguise.%{_p}%} is set:
  657. set {_br} to uncolored {mineplex.rank.%{_p}%}
  658. set {_dr} to uncolored {mineplex.rank.%{mineplex.disguise.%{_p}%}%}
  659. if {mineplex.rank.%{mineplex.disguise.%{_p}%}%} is set:
  660. make all players see {_p}'s prefix as "%{mineplex.rank.%{mineplex.disguise.%{_p}%}%}%&r&e"
  661. else:
  662. make all players see {_p}'s prefix as "&e"
  663. set {_br} to convert string "%{_br}%" to lowercase
  664. set {_br} to 1st char in each word of "%{_br}%" to caps
  665. set {_dr} to convert string "%{_dr}%" to lowercase
  666. set {_dr} to 1st char in each word of "%{_dr}%" to caps
  667. replace all " " in {_br} with ""
  668. replace all " " in {_dr} with ""
  669. if {_dr} is "":
  670. set {_dr} to "No Rank"
  671. if {_br} contains "mod":
  672. replace all "mod" with "Mod" in {_br}
  673. if {_dr} contains "mod":
  674. replace all "mod" with "Mod" in {_dr}
  675. if {_br} contains "dev":
  676. replace all "dev" with "Dev" in {_br}
  677. if {_dr} contains "dev":
  678. replace all "dev" with "Dev" in {_dr}
  679. if {_dr} contains "lead":
  680. replace all "lead" with "Lead" in {_dr}
  681. if {_br} contains "lead":
  682. replace all "lead" with "Lead" in {_br}
  683. if {_br} is "":
  684. set {_br} to "No Rank"
  685. if {_br} contains "mod":
  686. replace all "mod" with "Mod" in {_br}
  687. if {_br} contains "dev":
  688. replace all "dev" with "Dev" in {_br}
  689. if {_br} contains "mod":
  690. replace all "mod" with "Mod" in {_br}
  691. if {_br} contains "tube":
  692. replace all "tube" with "Tube" in {_br}
  693. loop {mineplex.patreon::*}:
  694. if loop-value is "%{_p}%":
  695. set {_br} to "P.%{_br}%"
  696. set {mineplex.api.displayrank.%{_p}%} to "%{_dr}% (%{_br}%)"
  697. set {mineplex.api.displayname.%{_p}%} to "%{mineplex.disguise.%{_p}%}%"
  698. else:
  699. set {_br} to uncolored {mineplex.rank.%{_p}%}
  700. if {mineplex.rank.%{_p}%} is set:
  701. make all players see {_p}'s prefix as "%{mineplex.rank.%{_p}%}%&r&e"
  702. else:
  703. make all players see {_p}'s prefix as "&e"
  704. set {_br} to convert string "%{_br}%" to lowercase
  705. set {_br} to 1st char in each word of "%{_br}%" to caps
  706. if {_br} is "":
  707. set {_br} to "No Rank"
  708. if {_br} contains "mod":
  709. replace all "mod" with "Mod" in {_br}
  710. if {_br} contains "dev":
  711. replace all "dev" with "Dev" in {_br}
  712. if {_br} contains "mod":
  713. replace all "mod" with "Mod" in {_br}
  714. if {_br} contains "tube":
  715. replace all "tube" with "Tube" in {_br}
  716. if {_br} contains "lead":
  717. replace all "lead" with "Lead" in {_br}
  718. if {_br} contains "dev":
  719. replace all "dev" with "Dev" in {_br}
  720. loop {mineplex.patreon::*}:
  721. if loop-value is "%{_p}%":
  722. set {_br} to "P.%{_br}%"
  723. set {mineplex.api.displayrank.%{_p}%} to "%{_br}%"
  724. set {mineplex.api.displayname.%{_p}%} to "%{_p}%"
  725.  
  726. function mcs(p: player , m: text) :: number:
  727. if {mineplex.overridechat} is true:
  728. if {mineplex.disguise.%{_p}%} is set:
  729. set {_player} to {mineplex.disguise.%{_p}%}
  730. else:
  731. set {_player} to {_p}
  732. set {_prerank} to getPlayerdata({_player}, "rank")
  733. set {_rank} to parseRankRaw({_prerank})
  734. if {_rank} is not set:
  735. set {_rank} to ""
  736. if {_rank} is "null":
  737. set {_rank} to ""
  738. if {mineplex.level.%{_player}%} is not set:
  739. set {mineplex.level.%{_player}%} to "&70"
  740. replace all " fuck " with " **** " in {_m}
  741. replace all " bitch " with " ***** " in {_m}
  742. replace all " ass " with " *** " in {_m}
  743. replace all " nigger " with " *** " in {_m}
  744. replace all " cunt " with " *** " in {_m}
  745. replace all " f|_|ck " with " ****** " in {_m}
  746. replace all " shit " with " **** " in {_m}
  747. if {_m} is {mineplex.lastsent.%{_p}%}:
  748. if {_p} does not have permission "mineplex.mod":
  749. send "&9Chat> &7This message is too similar to your previous message." to {_p}
  750. return -1
  751. stop
  752. if {mineplex.authlock.%{_p}%} is true:
  753. return -1
  754. stop
  755. set {mineplex.lastsent.%{_p}%} to {_m}
  756. loop all players:
  757. if {mineplex.pref.pc.%loop-player%} is true:
  758. if {mineplex.rank.%{_player}%} is set:
  759. set {_lvl} to {mineplex.level.%{_player}%}
  760. if {_player} is "WheezyGold7931":
  761. set {_lvl} to "&c101"
  762. loop {mineplex.ignorelist.%loop-player%::*}:
  763. if loop-value-2 is "%{_player}%":
  764. set {_ignore.%loop-player-1%} to true
  765. if {_ignore.%loop-player-1%} is not set:
  766. if {mineplex.rank.%{_player}%} is not "":
  767. set {_sanitizedm} to uncolored {_m}
  768. loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
  769. if loop-value-2 is {_player}:
  770. set {_brank} to uncolored {mineplex.rank.%{_player}%}
  771. set {_rank} to "&6&lP.%{_brank}%"
  772. else:
  773. set {_rank} to {mineplex.rank.%{_player}%}
  774. mcrjson("%loop-player%", "%{_lvl}%|| %{_rank}%||ttp:%{mineplex.hover.%{_player}%}%||&e%{_player}% &f%{_sanitizedm}%", false)
  775. else:
  776. send "%{_lvl}% %{mineplex.rank.%{_player}%}%&e%{_player}% &f%{_m}%" to loop-player
  777. return -1
  778. else:
  779. stop
  780.  
  781. function caseSensitive(source: String, compareTo: String) :: boolean:
  782. if size of split {_source} at {_compareTo} is 2:
  783. return true
  784. else: #Hi Snow
  785. return false
  786.  
  787. function gwenAlert(p: player , r: text) :: number:
  788. if {mineplex.disguise.%{_p}%} is set:
  789. set {_player} to {mineplex.disguise.%{_p}%}
  790. else:
  791. set {_player} to {_p}
  792. loop all players:
  793. if loop-player has permission "mineplex.trainee":
  794. if {mineplex.pref.gwen.%loop-player%} is true:
  795. send "&b&kK&r &c&lGWEN > &6%{_player}% &esuspected of &a%{_r}%&e." to loop-player
  796.  
  797. #Config Loading
  798.  
  799. on script unload:
  800. broadcast "&9MCR> &7Mineplex Core is recompiling!"
  801.  
  802. on load:
  803. if file "plugins/Mineplex-Core-Remake/config.yml" doesn't exists:
  804. configPopulate(1)
  805. # set {mineplex.config.servername} to colored value "servername" get of "plugins/Mineplex-Core-Remake/config.yml"
  806. configRefresh(1)
  807. wait 1 second
  808. if {mineplex.config.config} is "{@configver}":
  809. broadcast "&9MCR> &7Config &e{@configver} &7is up to date!"
  810. else:
  811. broadcast "&9Mineplex Core> &7Your Config is not up to Date! Updating this shit for you!"
  812. configPopulate(1)
  813. broadcast "&9Mineplex Core> &7Config Re-Populated!"
  814. broadcast "&9Mineplex Core> &7Going to reload plugin now!"
  815. broadcast "&9Mineplex Core> &7Going to reload plugin now!"
  816. wait 1 second
  817. configRefresh(1)
  818. broadcast "&9Mineplex Core> &7Config Done!"
  819. if {mineplex.usescoreboard} is not set:
  820. set {mineplex.usescoreboard} to true
  821.  
  822. #Main Command/Toggles
  823. command /mineplex-core [<string>] [<string>] [<string>]:
  824. aliases: /mpcore
  825. permission: op
  826. permission message: &9Permissions> &7You do not have permission to do that.
  827. trigger:
  828. if arg-1 is not set:
  829. send "&a"
  830. send "&9Core Settings> &7Listing Commands:"
  831. send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
  832. send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
  833. send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
  834. send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
  835. send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
  836. send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
  837. send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
  838. send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
  839. send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
  840. send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
  841. send "&a"
  842. else if arg-1 is set:
  843. if arg-1 is "help":
  844. send "&a"
  845. send "&9Core Settings> &7Listing Commands:"
  846. send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
  847. send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
  848. send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
  849. send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
  850. send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
  851. send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
  852. send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
  853. send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
  854. send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
  855. send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
  856. send "&a"
  857. else if arg-1 is "Chat":
  858. if arg-2 is not set:
  859. send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
  860. else if arg-2 is set:
  861. if arg-2 is "true":
  862. set {mineplex.overridechat} to true
  863. send "&9Core Settings> &7Now using the Mineplex Chat System (MCS)."
  864. else if arg-2 is "false":
  865. set {mineplex.overridechat} to false
  866. send "&9Core Settings> &7No longer using the Mineplex Chat System (MCS)."
  867. else:
  868. send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
  869. else:
  870. send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
  871. else if arg-1 is "Scoreboard":
  872. if arg-2 is not set:
  873. send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
  874. else if arg-2 is set:
  875. if arg-2 is "true":
  876. set {mineplex.usescoreboard} to true
  877. send "&9Core Settings> &7Now using the Mineplex Scoreboard System."
  878. else if arg-2 is "false":
  879. set {mineplex.usescoreboard} to false
  880. send "&9Core Settings> &7No longer using the Mineplex Scoreboard System."
  881. else:
  882. send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
  883. else:
  884. send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
  885. else if arg-1 is "ForcefieldOff":
  886. if arg-2 is not set:
  887. send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
  888. else:
  889. delete {mineplex.pref.ff.%arg-2%}
  890. delete {mineplex.ff.list::%arg-2%}
  891. send "&9MCR> &7Done!"
  892. else if arg-1 is "News":
  893. if arg-2 is not set:
  894. send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
  895. else if arg-2 is set:
  896. if arg-2 is "true":
  897. set {mineplex.news.allow} to true
  898. send "&9Core Settings> &7Now using the Mineplex News System."
  899. else if arg-2 is "false":
  900. set {mineplex.news.allow} to false
  901. send "&9Core Settings> &7No longer using the Mineplex News System."
  902. else:
  903. send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
  904. else:
  905. send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
  906. else if arg-1 is "TNT":
  907. if arg-2 is not set:
  908. send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
  909. else if arg-2 is set:
  910. if arg-2 is "true":
  911. set {mineplex.tntlauncher} to true
  912. send "&9Core Settings> &7Now using the Throwing TNT Mechanics."
  913. else if arg-2 is "false":
  914. set {mineplex.tntlauncher} to false
  915. send "&9Core Settings> &7No longer using the Throwing TNT Mechanics."
  916. else:
  917. send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
  918. else:
  919. send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
  920. else if arg-1 is "purgehistory":
  921. if arg 2 is not set:
  922. send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
  923. else:
  924. send "&9MCR> &7Purged %arg-2%'s history"
  925. delete {p.%arg-2%::*}
  926. delete {punishgui.%arg-2%::*}
  927. delete {reversed.p.%arg-2%::history::*}
  928. delete {reversed.p.%arg-2%::*}
  929. else if arg-1 is "reload":
  930. configRefresh(1)
  931. send "&9Core Settings> &7The main configuration file has been refreshed."
  932. else if arg-1 is "Carl":
  933. spawn 1 creeper at location of player
  934. set {_carl} to spawned creeper
  935. set name of last spawned entity to "&a&lCarl the Creeper"
  936. add "{NoAI:1b}" to nbt of {_carl}
  937. add "{powered:1}" to nbt of {_carl}
  938. apply slowness 255 to last spawned entity for 999 days
  939. set {kitnpc} to location of player
  940. send "&9Core Settings> &7Carl has been spawned in a fixed position at your current location."
  941. else if arg-1 is "admin":
  942. if arg-2 is set:
  943. set {mineplex.rank.%arg-2%} to "&4&lADMIN "
  944. set {_mineplex.setadmin.temp} to "%arg-2%" parsed as player
  945. execute console command "/__mp__dp__ %arg-2%"
  946. add "mineplex.trainee" to {_mineplex.setadmin.temp}'s permissions
  947. add "mineplex.mod" to {_mineplex.setadmin.temp}'s permissions
  948. add "mineplex.srmod" to {_mineplex.setadmin.temp}'s permissions
  949. add "mineplex.admin" to {_mineplex.setadmin.temp}'s permissions
  950. add "mineplex.legend" to {_mineplex.setadmin.temp}'s permissions
  951. add "mineplex.builder" to {_mineplex.setadmin.temp}'s permissions
  952. updateRankAPI({_mineplex.setadmin.temp})
  953. send "&9Core Settings> &7Temporarily added Admin permissions to %arg-2%."
  954. else:
  955. send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
  956. else if arg-1 is "TreasurePoint":
  957. if arg-2 is "1" or "2" or "3" or "4":
  958. set {mineplex.chestpoint.%arg-2%} to target block
  959. send "&9Core Settings> &7Treasure Point %arg-2% has been set to your targeted block."
  960. else:
  961. send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
  962. else if arg-1 is "TreasurePointSub":
  963. if arg-2 is "1" or "2" or "3" or "4":
  964. if arg-3 is "1" or "2" or "3" or "4" or "5" or "6" or "7" or "8":
  965. set {mineplex.chestpoint.%arg-2%.sub.%arg-3%} to target block
  966. send "&9Core Settings> &7Treasure Point Sub %arg-3% of Treasure Point %arg-2% has been set to your targeted block."
  967. else:
  968. send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
  969. else:
  970. send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
  971. else:
  972. send "&a"
  973. send "&9Core Settings> &7Listing Commands:"
  974. send "&4/Mineplex-Core Chat (True/False) &7Toggles the MCR Chat system to override the default chat system. &4Operator"
  975. send "&4/Mineplex-Core Admin (Player) &7Give the target administrator permissions temporarily. &4Operator"
  976. send "&4/Mineplex-Core News (True/False) &7Toggles whether the MCR News system is being used. &4Operator"
  977. send "&4/Mineplex-Core Scoreboard (True/False) &7Toggles whether the MCR Scoreboard is being used. &4Operator"
  978. send "&4/Mineplex-Core TreasurePoint (1/2/3/4) &7Sets the Treasure point to your targeted block. &4Operator"
  979. send "&4/Mineplex-Core TreasurePointSub (1/2/3/4) (1/2/3/4/5/6/7/8) &7Sets the Opening Treasure point to your targeted block. &4Operator"
  980. send "&4/Mineplex-Core Carl &7Spawn Carl the Creeper in a fixed position at your current location. &4Operator"
  981. send "&4/Mineplex-Core TNT (True/False) &7Toggles the Throwing TNT Mechanics to be true or false. &4Operator"
  982. send "&4/Mineplex-Core purgehistory (player) &7Purges a player's punish history. &4Operator"
  983. send "&4/Mineplex-Core ForcefieldOff (Player) &7Forces a player to toggle off thier forcefield. &4Operator"
  984. send "&a"
  985.  
  986. command /help [<string>]:
  987. trigger:
  988. send "&9MCR> &7Please see &bhttps://github.com/WheezyGold7931/Mineplex-Core/wiki/Commands-and-Permissions &7for updated commands!"
  989.  
  990. command /recompile [<string>]:
  991. aliases: /rec
  992. permission: op
  993. permission message: &9Permissions> &7You do not have permission to do that.
  994. trigger:
  995. if arg 1 is not set:
  996. broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7will be recompiling in two seconds."
  997. wait 2 second
  998. player command "/sk reload Mineplex"
  999. else:
  1000. if arg 1 is "-s":
  1001. broadcast "&9MCR> &7Mineplex Core will be recompiling in two seconds. (Silent)"
  1002. execute console command "/sk reload Mineplex"
  1003.  
  1004. #Thanks XeXRainnn
  1005.  
  1006. on quit:
  1007. delete {mineplex.%player%.notice}
  1008.  
  1009. command /bugreport [<string>]:
  1010. trigger:
  1011. if arg 1 is not set:
  1012. send "&9MCR> &7Commands List:"
  1013. send "&f/bugreport <bug> &7Reports a bug to the MCR Developers &fPlayer"
  1014. else:
  1015. if {mineplex.%player%.notice} is not set:
  1016. send "&9MCR> &7Abuse of this system will result in a blacklist of this feature! If you are sure about reporting this, repeat the command."
  1017. set {mineplex.%player%.notice} to true
  1018. stop
  1019. set {_pl} to "%list of plugins%"
  1020. replace all " and " with ",+" in {_pl}
  1021. replace all " " with "" in {_pl}
  1022. replace all ", " with ",++" in {_pl}
  1023. set {_ra} to arg-1
  1024. replace all "`" with "" in {_ra}
  1025. replace all "*" with "" in {_ra}
  1026. replace all " " with "%%20" in {_ra}
  1027. set {_mc} to minecraft version
  1028. set {_sk} to skript version
  1029. set {_bk} to bukkit version
  1030. set {_mcr} to "{@MCRVER}"
  1031. set {_url} to uncolored "http://mpcore.us/mcr/bugreport.php?plugins=%{_pl}%&&rmcver=%{_mc}%&&rskver=%{_sk}%&&rbukkit=%{_bk}%&&rplayer=%player%&&rbug=%{_ra}%&&rmcrver=%{_mcr}%"
  1032. $ thread
  1033. set {_response::*} to contents from url {_url}
  1034. send "&9MCR> &7Please Wait!"
  1035. wait 5 seconds
  1036. if {_response::1} is "600":
  1037. send "&9MCR> &7Bug Report was &eSuccessful&7!"
  1038. else if {_response::1} contains "602":
  1039. set {_thing} to {_response::1}
  1040. replace all "602 " with "" in {_thing}
  1041. send "&9MCR> &7Bug Report was marked as &eInvalid&7!"
  1042. send "&9MCR> &7Bug Report returned the error: &e%{_thing}%&7!"
  1043. else if {_response::1} contains "603":
  1044. set {_thing} to {_response::1}
  1045. replace all "603 " with "" in {_thing}
  1046. send "&9MCR> &c&lYou are blacklisted from the bug report system!"
  1047. send "&9MCR> &7&lReason: &7%{_thing}%"
  1048. else if {_response::1} contains "604":
  1049. set {_thing} to {_response::1}
  1050. replace all "604 " with "" in {_thing}
  1051. send "&9MCR> &7Bug Report returned a diffrent response: &e%{_thing}%"
  1052. else if {_response::1} is not set:
  1053. send "&9MCR> &7The bug report was malformed and we did not get a response!"
  1054.  
  1055. command /rules:
  1056. trigger:
  1057. send "&9Rules> &7The rules can be found here: &a%{mineplex.config.ruleswebsite}%"
  1058.  
  1059. #CarlBae
  1060.  
  1061. on load:
  1062. if {poll.id.last} is not set:
  1063. set {poll.id.last} to 0
  1064.  
  1065. on join:
  1066. set {_player} to "%player%"
  1067. replace all "s" in {_player} with "sssss"
  1068. send "&2&lCarl the Creeper> &aHey %{_player}%! I have sssome amazing rewardsss for you! Come sssee me!"
  1069. if {spintickets.%player%} is not set:
  1070. set {spintickets.%player%} to 0
  1071. if {mineplex.polltaken.0.%player%} is not set:
  1072. set {mineplex.polltaken.0.%player%} to true
  1073. if {mineplex.thankrewards.%player%} is not set:
  1074. set {mineplex.thankrewards.%player%} to 0
  1075.  
  1076. command /thank [<offline player>]:
  1077. trigger:
  1078. if arg 1 is set:
  1079. if arg 1 is player:
  1080. send "&9Thank> &7You cannot thank yourself!"
  1081. else:
  1082. if arg 1 is online:
  1083. if {mineplex.thank.last.%player%} is not set:
  1084. set {_good} to true
  1085. else:
  1086. set {_t} to difference between {mineplex.thank.last.%player%} and now
  1087. set {_tc} to "24 hours" parsed as a timespan
  1088. if {_t} is more than {_tc}:
  1089. set {_good} to true
  1090. if {_good} is true:
  1091. send "&9Thank> &7You thanked &e%arg-1% &7and earned &b5 Treasure Shards&7!"
  1092. send "&9Thank> &e%player% &7used &e/thank &7on you! +&b5 Treasure Shards&7!%nl%&9Thank> &7You can claim your reward at &eCarl the Creeper" to arg-1
  1093. addShards(player, 5)
  1094. add 5 to {mineplex.thankrewards.%arg-1%}
  1095. set {mineplex.thank.last.%player%} to now
  1096. else:
  1097. send "&9Thank> &7You can only /thank once per day!"
  1098. stop
  1099. else:
  1100. send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
  1101. else:
  1102. send "&9Thank> &7Usage: &e/thank <player>"
  1103.  
  1104. function carlSpin(p: player) :: number:
  1105. if {spintickets.%{_p}%} >= 1:
  1106. remove 1 from {spintickets.%{_p}%}
  1107. wait 5 ticks
  1108. open chest with 3 rows named "Carl's Spinner" to {_p}
  1109. set {opener.%{_p}%} to true
  1110. loop 30 times:
  1111. inventory name of {_p}'s current inventory is "Carl's Spinner"
  1112. play "NOTE_PLING" to {_p} at volume 0.5
  1113. format slot 0 of {_p} with white stained glass pane to be unstealable
  1114. format slot 1 of {_p} with white glass to be unstealable
  1115. format slot 2 of {_p} with white glass to be unstealable
  1116. format slot 3 of {_p} with white glass to be unstealable
  1117. format slot 4 of {_p} with hopper to be unstealable
  1118. format slot 5 of {_p} with white glass to be unstealable
  1119. format slot 6 of {_p} with white glass to be unstealable
  1120. format slot 7 of {_p} with white glass to be unstealable
  1121. format slot 8 of {_p} with white stained glass pane to be unstealable
  1122. set {_randomint1.%{_p}%} to random integer between 95 and 375
  1123. format slot 9 of {_p} with prismarine shard named "&b%{_randomint1.%{_p}%}% Shards" to be unstealable
  1124. format slot 8 of {_p} with white stained glass pane to be unstealable
  1125. set {_randomint2.%{_p}%} to random integer between 95 and 375
  1126. format slot 10 of {_p} with prismarine shard named "&b%{_randomint2.%{_p}%}% Shards" to be unstealable
  1127. format slot 8 of {_p} with white stained glass pane to be unstealable
  1128. set {_randomint3.%{_p}%} to random integer between 95 and 375
  1129. format slot 11 of {_p} with prismarine shard named "&b%{_randomint3.%{_p}%}% Shards" to be unstealable
  1130. format slot 8 of {_p} with white stained glass pane to be unstealable
  1131. set {_randomint4.%{_p}%} to random integer between 95 and 375
  1132. format slot 12 of {_p} with prismarine shard named "&b%{_randomint4.%{_p}%}% Shards" to be unstealable
  1133. format slot 8 of {_p} with white stained glass pane to be unstealable
  1134. set {_randomint5.%{_p}%} to random integer between 95 and 375
  1135. format slot 13 of {_p} with prismarine shard named "&b%{_randomint5.%{_p}%}% Shards" to be unstealable
  1136. format slot 8 of {_p} with white stained glass pane to be unstealable
  1137. set {_randomint6.%{_p}%} to random integer between 95 and 375
  1138. format slot 14 of {_p} with prismarine shard named "&b%{_randomint6.%{_p}%}% Shards" to be unstealable
  1139. format slot 8 of {_p} with white stained glass pane to be unstealable
  1140. set {_randomint7.%{_p}%} to random integer between 95 and 375
  1141. format slot 15 of {_p} with prismarine shard named "&b%{_randomint7.%{_p}%}% Shards" to be unstealable
  1142. format slot 8 of {_p} with white stained glass pane to be unstealable
  1143. set {_randomint8.%{_p}%} to random integer between 95 and 375
  1144. format slot 16 of {_p} with prismarine shard named "&b%{_randomint8.%{_p}%}% Shards" to be unstealable
  1145. format slot 8 of {_p} with white stained glass pane to be unstealable
  1146. set {_randomint9.%{_p}%} to random integer between 95 and 375
  1147. format slot 17 of {_p} with prismarine shard named "&b%{_randomint9.%{_p}%}% Shards" to be unstealable
  1148. format slot 18 of {_p} with white stained glass pane to be unstealable
  1149. format slot 19 of {_p} with white glass to be unstealable
  1150. format slot 20 of {_p} with white glass to be unstealable
  1151. format slot 21 of {_p} with white glass to be unstealable
  1152. format slot 22 of {_p} with white glass to be unstealable
  1153. format slot 23 of {_p} with white glass to be unstealable
  1154. format slot 24 of {_p} with white glass to be unstealable
  1155. format slot 25 of {_p} with white glass to be unstealable
  1156. format slot 26 of {_p} with white stained glass pane to be unstealable
  1157. delete {_randomint1.%{_p}%}
  1158. delete {_randomint2.%{_p}%}
  1159. delete {_randomint3.%{_p}%}
  1160. delete {_randomint4.%{_p}%}
  1161. delete {_randomint6.%{_p}%}
  1162. delete {_randomint7.%{_p}%}
  1163. delete {_randomint8.%{_p}%}
  1164. delete {_randomint9.%{_p}%}
  1165. wait 0.2 seconds
  1166. send "&9Carl> &7You won &b%{_randomint5.%{_p}%}% Shards!" to {_p}
  1167. addShards({_p}, {_randomint5.%{_p}%})
  1168. wait 3 ticks
  1169. delete {_randomint5.%{_p}%}
  1170. delete {opener.%{_p}%}
  1171. wait 1 second
  1172. close {_p}'s inventory
  1173. else:
  1174. send "&9Carl's Spinner> &7You don't have a Carl Spinner Ticket!" to {_p}
  1175.  
  1176. function ytlink(p: player) :: number:
  1177. set {_t} to difference between {carl.ytr.%{_p}%} and now
  1178. set {_tc} to "1 day" parsed as a timespan
  1179. if {_t} is less than {_tc}:
  1180. message "&6&m=====================================" to {_p}
  1181. message "&b &f" to {_p}
  1182. message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p}
  1183. message " &a%{mineplex.config.youtube}%" to {_p}
  1184. message "&b &f" to {_p}
  1185. message "&6&m=====================================" to {_p}
  1186. stop
  1187. else:
  1188. set {carl.ytr.%{_p}%} to now
  1189. addShards({_p}, 250)
  1190. message "&6&m=====================================" to {_p}
  1191. message "&b &f" to {_p}
  1192. message " &f&lClick to Open in Web Browser and visit our YouTube page" to {_p}
  1193. message " &a%{mineplex.config.youtube}%" to {_p}
  1194. message "&b &f" to {_p}
  1195. message "&6&m=====================================" to {_p}
  1196. wait 60 seconds
  1197. message "&9Carl> &7Rewarded 250 Shards for watching the YouTube Video" to {_p}
  1198.  
  1199. function tlink(p: player) :: number:
  1200. message "&6&m=====================================" to {_p}
  1201. message "&b &f" to {_p}
  1202. message " &f&lClick to Open in Web Browser" to {_p}
  1203. message " &a%{mineplex.config.twitter}%" to {_p}
  1204. message "&b &f" to {_p}
  1205. message "&6&m=====================================" to {_p}
  1206.  
  1207. function dailyr(p: player) :: number:
  1208. set {_t} to difference between {carl.dr.%{_p}%} and now
  1209. set {_tc} to "20 hours" parsed as a timespan
  1210. if {_t} is less than {_tc}:
  1211. message "&9Carl> &7Come back in another 24 hours." to {_p}
  1212. stop
  1213. else:
  1214. message "&9Carl> &7Rewarded &e100 Treasure Shards" to {_p}
  1215. message "&9Carl> &7Rewarded &e100 Gems" to {_p}
  1216. message "&9Carl> &7Rewarded &e250 Experience" to {_p}
  1217. set {carl.dr.%{_p}%} to now
  1218. addShards({_p}, 100)
  1219. addGems({_p}, 100)
  1220. set {_cur} to getPlayerdata({_p}, "stats.global.dailyr") parsed as a number
  1221. add 1 to {_cur}
  1222. setPlayerdata({_p}, "stats.global.dailyr", "%{_cur}%")
  1223.  
  1224. function rawVote(p: player , v: number) :: number:
  1225. add 1 to {mineplex.poll.results.%{_v}%.%{poll.id.last}%}
  1226. set {mineplex.polltaken.%{poll.id.last}%.%{_p}%} to true
  1227. addGems({_p}, {mineplex.poll.gems.%{poll.id.last}%})
  1228. message "&9Carl> &7Rewarded &a%{mineplex.poll.gems.%{poll.id.last}%}% Gems&7." to {_p}
  1229.  
  1230. function pollVote(p: player) :: number:
  1231. open chest with 6 rows named "Poll:" to {_p}
  1232. wait 2 ticks
  1233. format slot 13 of {_p} with book and quill named "&a&lVote on Poll" with lore "||&f%{mineplex.poll.question.%{poll.id.last}%}%||||&b1.) &f%{mineplex.poll.a1.%{poll.id.last}%}%||&b2.) &f%{mineplex.poll.a2.%{poll.id.last}%}%||&b3.) &f%{mineplex.poll.a3.%{poll.id.last}%}%||&b4.) &f%{mineplex.poll.a4.%{poll.id.last}%}%||||&eRewards|| &f%{mineplex.poll.gems.%{poll.id.last}%}% Gems" to be unstealable
  1234. format slot 28 of {_p} with emerald named "&aOption 1" with lore "||&f%{mineplex.poll.a1.%{poll.id.last}%}%" to close then run [rawVote({_p}, 1)]
  1235. format slot 30 of {_p} with emerald named "&aOption 2" with lore "||&f%{mineplex.poll.a2.%{poll.id.last}%}%" to close then run [rawVote({_p}, 2)]
  1236. format slot 32 of {_p} with emerald named "&aOption 3" with lore "||&f%{mineplex.poll.a3.%{poll.id.last}%}%" to close then run [rawVote({_p}, 3)]
  1237. format slot 34 of {_p} with emerald named "&aOption 4" with lore "||&f%{mineplex.poll.a4.%{poll.id.last}%}%" to close then run [rawVote({_p}, 4)]
  1238.  
  1239. function claimThank(p: player) :: number:
  1240. set {_am} to {mineplex.thankrewards.%{_p}%}
  1241. set {_tp} to {_am} / 5
  1242. send "&9Carl> &7You collected &b%{_am}% Treasure Shards &7from &e%{_tp}% &7players!" to {_p}
  1243. set {mineplex.thankrewards.%{_p}%} to 0
  1244. set {_get} to getPlayerdata({_p}, "shards")
  1245. set {_cur} to {_get} parsed as a number
  1246. add {_am} to {_cur}
  1247. setPlayerdata({_p}, "shards", "%{_cur}%")
  1248.  
  1249. #Dank as all heck
  1250. function carlGUI(p: player) :: number:
  1251. open chest with 6 rows named "%{_p}%'s Bonuses" to {_p}
  1252. wait 2 ticks
  1253. format slot 10 of {_p} with redstone block named "&c&lRank Monthly Bonus" with lore "||&7Players with a Rank get a Monthly Bonus!||||&bUltra recieves 1 Mythical Chest Monthly||&dHero recieves 2 Mythical Chests Monthly||&aLegend recieves 3 Mythical Chests Monthly||&cTitan recieves 5 Mythical Chests Monthly||||&fPurchase a Rank at;||&f%{mineplex.config.shoplink}%" to close
  1254. set {_t} to difference between {carl.dr.%{_p}%} and now
  1255. set {_tc} to "20 hours" parsed as a timespan
  1256. set {_mc} to {_tc} - {_t}
  1257. set {_st} to "%{_t}%"
  1258. set {_args::*} to {_st} split at " "
  1259. set {_num1} to "%{_args::1}%" parsed as an int
  1260. set {_num2} to 1200
  1261. set {_num3} to {_num2} - {_num1}
  1262. set {_hourconvert} to {_num3} / 60
  1263. set {_finalwait} to "%{_hourconvert}% hours"
  1264. if {_t} is less than {_tc}:
  1265. format slot 12 of {_p} with redstone block named "&c&lDaily Reward" with lore "||&fNext reward in %{_finalwait}%!|| ||&7||&eRewards|| &f100 Treasure Shards|| &f100 Gems|| &f250 Experience||&7||&eCurrent Streak: &f0||&eStreak Bonus: &f0%%||&7||&eHighest Streak: &f0" to close
  1266. else:
  1267. format slot 12 of {_p} with chest named "&a&lDaily Reward" with lore "||&fClick to Claim!|| ||&7||&eRewards|| &f100 Treasure Shards|| &f100 Gems|| &f250 Experience||&7||&eCurrent Streak: 0||&eStreak Bonus: 5||&7||&eHighest Streak: &f1||&eStreak Reset: &f1.3 Days" to close then run [dailyr({_p})]
  1268. format slot 14 of {_p} with creeper head named "&c&lCarl's Spinner" with lore "||&fYou need a Carl Spin Ticket to Spin||&b||&eYour Tickets: &f%{spintickets.%{_p}%}%" to close then run [carlSpin({_p})]
  1269. format slot 16 of {_p} with redstone block named "&c&lPower Play Club" with lore "&eFebruary's Cosmetic|| &fTrue Love Pet||&b &f||&eOther Rewards|| &f2 Game Amplifier|| &f1 Omega Chest||&b||&cGet Power Play Club months at||&b%{mineplex.config.shoplink}%" to close
  1270. format slot 20 of {_p} with water bucket named "&e&lVisit us on Facebook" with lore "||&eRewards|| &f10 Ancient Chest" to close
  1271. set {_t} to difference between {carl.ytr.%{_p}%} and now
  1272. set {_tc} to "1 day" parsed as a timespan
  1273. if {_t} is less than {_tc}:
  1274. format slot 24 of {_p} with apple named "&a&lVisit us on YouTube" with lore "&fCome back Tomorrow for your||&fDaily Reward!||||&fCheck out the lastest Video||&fon the %{mineplex.config.servername}% Channel!||&b||&fBe sure and Subscribe so you ||&fdon't miss a video!||&b||&aClick to visit us on YouTube!" to close then run [ytlink({_p})]
  1275. else:
  1276. format slot 24 of {_p} with apple named "&a&lVisit us on YouTube" with lore "&eClaim your Daily 250 Shard Reward||&fby checking out the latest Video ||&fon the %{mineplex.config.servername}% Channel!||&b||&fBe sure and Subscribe so you ||&fdon't miss a video!||&b||&aClick to visit us on YouTube!" to close then run [ytlink({_p})]
  1277. if {mineplex.polltaken.%{poll.id.last}%.%{_p}%} is set:
  1278. format slot 28 of {_p} with redstone block named "&cVote on Poll" with lore "||&fYou voted on all of the polls!" to close
  1279. else:
  1280. format slot 28 of {_p} with book and quill named "&a&lVote on Poll" with lore "||&f%{mineplex.poll.question.%{poll.id.last}%}%||||&b1.) &f%{mineplex.poll.a1.%{poll.id.last}%}%||&b2.) &f%{mineplex.poll.a2.%{poll.id.last}%}%||&b3.) &f%{mineplex.poll.a3.%{poll.id.last}%}%||&b4.) &f%{mineplex.poll.a4.%{poll.id.last}%}%||||&eRewards|| &f%{mineplex.poll.gems.%{poll.id.last}%}% Gems||||&aClick to go to the vote page!" to run [pollVote({_p})]
  1281. if {mineplex.thankrewards.%{_p}%} is greater than 0:
  1282. format slot 30 of {_p} with emerald named "&a&lThank Rewards" with lore "||&eYour Rewards|| &f%{mineplex.thankrewards.%{_p}%}% Treasure Shards|| ||&fClick to Claim!" to close then run [claimThank({_p})]
  1283. else:
  1284. format slot 30 of {_p} with redstone block named "&c&lThank Rewards" with lore "||&7Earn Thank Rewards from players using /thank||&7on you, or by enabling Game Amplifiers.||&b||&fGet Amplifiers at &a%{mineplex.config.shoplink}%" to close
  1285. format slot 32 of {_p} with tripwire hook named "&a&lWatch an Ad!" with lore "&eEarn 1 Carl Spin Ticket||&fby checking out our partner's Advertisement||||&fYou can watch 5 Ads every 24 hours.||||&fPlease help us keep %{mineplex.config.servername}% awesome||&c&lBe sure to have your AdBlocker disabled!||||&aClick to watch the Ad now!" to be unstealable
  1286. format slot 34 of {_p} with egg named "&a&lVisit us on Twitter" with lore "&fCheck out and follow %{mineplex.config.servername}% on||&fTwitter for Giveaways, Announcements,||&fTeasers, and Tips!||||&aClick to visit us on Twitter" to close then run [tlink({_p})]
  1287. format slot 40 of {_p} with jukebox named "&a&lVote for %{mineplex.config.servername}%" with lore "||&fClick to Vote!||||&eRewards|| &f1 Carl Spin Ticket|| &f400 Gems||||&eCurrent Streak: &f0||&eStreak Bonus: &f+0%%||||&eHighest Streak: &f0" to be unstealable
  1288.  
  1289. command /poll [<text>] [<text>] [<text>] [<text>] [<text>] [<text>] [<integer>] [<string>]:
  1290. permission: mineplex.admin
  1291. permission message: &9Permissions> &7You do not have permission to do that.
  1292. trigger:
  1293. if arg 1 is set:
  1294. if arg 1 is "create":
  1295. if arg 2 is set:
  1296. if arg 3 is set:
  1297. if arg 4 is set:
  1298. if arg 5 is set:
  1299. if arg 6 is set:
  1300. if arg 7 is set:
  1301. add 1 to {poll.id.last}
  1302. send "&9Poll> &7Rolling out poll with id &e%{poll.id.last}%&7!"
  1303. wait 1 second
  1304. set {_arg1} to arg 2
  1305. set {_arg2} to arg 3
  1306. set {_arg3} to arg 4
  1307. set {_arg4} to arg 5
  1308. set {_arg5} to arg 6
  1309. set {mineplex.poll.gems.%{poll.id.last}%} to "%arg 7%" parsed as an integer
  1310. replace every "_" with " " in {_arg1}
  1311. replace every "_" with " " in {_arg2}
  1312. replace every "_" with " " in {_arg3}
  1313. replace every "_" with " " in {_arg4}
  1314. replace every "_" with " " in {_arg5}
  1315. broadcast "&9Poll> &7A new poll is available! Vote in Carl!"
  1316. wait 0.5 seconds
  1317. send "&9Poll> &7The poll has been rolled out successfully!"
  1318. set {mineplex.poll.question.%{poll.id.last}%} to {_arg1}
  1319. set {mineplex.poll.a1.%{poll.id.last}%} to {_arg2}
  1320. set {mineplex.poll.a2.%{poll.id.last}%} to {_arg3}
  1321. set {mineplex.poll.a3.%{poll.id.last}%} to {_arg4}
  1322. set {mineplex.poll.a4.%{poll.id.last}%} to {_arg5}
  1323. set {mineplex.poll.results.1.%{poll.id.last}%} to 0
  1324. set {mineplex.poll.results.2.%{poll.id.last}%} to 0
  1325. set {mineplex.poll.results.3.%{poll.id.last}%} to 0
  1326. set {mineplex.poll.results.4.%{poll.id.last}%} to 0
  1327. else:
  1328. send "&9Poll> &7Correct Usage:"
  1329. send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
  1330. send "&4/poll results [(id)] Admin"
  1331. send ""
  1332. send "&9Poll> &7Example:"
  1333. send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111 Admin"
  1334. else:
  1335. send "&9Poll> &7Correct Usage:"
  1336. send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
  1337. send "&4/poll results [(id)] Admin"
  1338. send ""
  1339. send "&9Poll> &7Example:"
  1340. send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
  1341. else:
  1342. send "&9Poll> &7Correct Usage:"
  1343. send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
  1344. send "&4/poll results [(id)] Admin"
  1345. send ""
  1346. send "&9Poll> &7Example:"
  1347. send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
  1348. else:
  1349. send "&9Poll> &7Correct Usage:"
  1350. send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
  1351. send "&4/poll results [(id)] Admin"
  1352. send ""
  1353. send "&9Poll> &7Example:"
  1354. send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
  1355. else:
  1356. send "&9Poll> &7Correct Usage:"
  1357. send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
  1358. send "&4/poll results [(id)] Admin"
  1359. send ""
  1360. send "&9Poll> &7Example:"
  1361. send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
  1362. else:
  1363. send "&9Poll> &7Correct Usage:"
  1364. send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4) (Gem Reward) Admin"
  1365. send "&4/poll results [(id)] Admin"
  1366. send ""
  1367. send "&9Poll> &7Example:"
  1368. send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
  1369. else if arg 1 is "results":
  1370. if player has permission "mineplex.admin":
  1371. if arg 2 is not set:
  1372. open chest with 5 row named "Poll Results" to player
  1373. format slot 13 of player with book and quill named "&b&lCurrent Poll" with lore "&eOuestion:||&b%{mineplex.poll.question.%{poll.id.last}%}%|| ||&e&lReward: &f%{mineplex.poll.gems.%{poll.id.last}%}% Gems" to be unstealable
  1374. format slot 19 of player with book named "&b&lOption 1" with lore "&eAnswer 1:|| &f%{mineplex.poll.a1.%{poll.id.last}%}%" to be unstealable
  1375. format slot 21 of player with book named "&b&lOption 2" with lore "&eAnswer 2:|| &f%{mineplex.poll.a2.%{poll.id.last}%}%" to be unstealable
  1376. format slot 23 of player with book named "&b&lOption 3" with lore "&eAnswer 3:|| &f%{mineplex.poll.a3.%{poll.id.last}%}%" to be unstealable
  1377. format slot 25 of player with book named "&b&lOption 4" with lore "&eAnswer 4:|| &f%{mineplex.poll.a4.%{poll.id.last}%}%" to be unstealable
  1378. format slot 28 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.1.%{poll.id.last}%}% &evotes||&efor answer 1:|| &f%{mineplex.poll.a1.%{poll.id.last}%}%" to be unstealable
  1379. format slot 30 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.2.%{poll.id.last}%}% &evotes||&efor answer 2:|| &f%{mineplex.poll.a2.%{poll.id.last}%}%" to be unstealable
  1380. format slot 32 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.3.%{poll.id.last}%}% &evotes||&efor answer 3:|| &f%{mineplex.poll.a3.%{poll.id.last}%}%" to be unstealable
  1381. format slot 34 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.4.%{poll.id.last}%}% &evotes||&efor answer 4:|| &f%{mineplex.poll.a4.%{poll.id.last}%}%" to be unstealable
  1382. else:
  1383. set {_id} to arg-2 parsed as a number
  1384. if {_id} is 0:
  1385. send "&9Poll> &cInvalid Poll ID!"
  1386. stop
  1387. if {_id} is greater than {poll.id.last}:
  1388. send "&9Poll> &cInvalid Poll ID!"
  1389. stop
  1390. if {_id} is not set:
  1391. send "&9Poll> &cInvalid Poll ID!"
  1392. stop
  1393. open chest with 5 row named "Poll Results" to player
  1394. format slot 13 of player with book and quill named "&b&lCurrent Poll" with lore "&eOuestion:||&b%{mineplex.poll.question.%{_id}%}%|| ||&e&lReward: &f%{mineplex.poll.gems.%{_id}%}% Gems" to be unstealable
  1395. format slot 19 of player with book named "&b&lOption 1" with lore "&eAnswer 1:|| &f%{mineplex.poll.a1.%{_id}%}%" to be unstealable
  1396. format slot 21 of player with book named "&b&lOption 2" with lore "&eAnswer 2:|| &f%{mineplex.poll.a2.%{_id}%}%" to be unstealable
  1397. format slot 23 of player with book named "&b&lOption 3" with lore "&eAnswer 3:|| &f%{mineplex.poll.a3.%{_id}%}%" to be unstealable
  1398. format slot 25 of player with book named "&b&lOption 4" with lore "&eAnswer 4:|| &f%{mineplex.poll.a4.%{_id}%}%" to be unstealable
  1399. format slot 28 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.1.%{_id}%}% &evotes||&efor answer 1:|| &f%{mineplex.poll.a1.%{_id}%}%" to be unstealable
  1400. format slot 30 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.2.%{_id}%}% &evotes||&efor answer 2:|| &f%{mineplex.poll.a2.%{_id}%}%" to be unstealable
  1401. format slot 32 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.3.%{_id}%}% &evotes||&efor answer 3:|| &f%{mineplex.poll.a3.%{_id}%}%" to be unstealable
  1402. format slot 34 of player with blue stained glass pane named "&b&lVote Count:" with lore "&f%{mineplex.poll.results.4.%{_id}%}% &evotes||&efor answer 4:|| &f%{mineplex.poll.a4.%{_id}%}%" to be unstealable
  1403. else:
  1404. send "&9Permissions> &7You do not have permission to do that."
  1405. else:
  1406. send "&9Poll> &7Correct Usage:"
  1407. send "&4/poll create (Question) (Opt.1) (Opt.2) (Opt.3) (Opt.4 (Gem Reward) Admin"
  1408. send "&4/poll results [(id)] Admin"
  1409. send ""
  1410. send "&9Poll> &7Example:"
  1411. send "/poll create Is_Wheezy_Da_Best? Yes No He_Could_Be Ur_Funny 111"
  1412.  
  1413. command /fixanimation:
  1414. permission: mineplex.dev
  1415. permission message: &9Permissions> &7You do not have permission to do that.
  1416. trigger:
  1417. loop all entities:
  1418. if name of loop-entity is "&a&lCarl the Creeper":
  1419. set {_e1} to loop-entity
  1420. exit loop
  1421. add "{NoAI:0b}" to nbt of {_e1}
  1422. teleport {_e1} 100 blocks below {_e1}
  1423. kill {_e1}
  1424.  
  1425. command /animation:
  1426. permission: mineplex.dev
  1427. permission message: &9Permissions> &7You do not have permission to do that.
  1428. trigger:
  1429. loop all entities:
  1430. if name of loop-entity is "&a&lCarl the Creeper":
  1431. set {_e1} to loop-entity
  1432. exit loop
  1433. set {_loc} to location of {_e1}
  1434. add "{Fuse:999}" to nbt of {_e1}
  1435. add "{ignited:1}" to nbt of {_e1}
  1436. wait 1 second
  1437. loop all players:
  1438. show 1 "Explosion Huge" particles at {_loc} for loop-player
  1439. play raw sound "random.explode1" at {_e1} with pitch 1 volume 10
  1440. play raw sound "random.explode" at {_e1} with pitch 1 volume 10
  1441. wait 0.6 seconds
  1442. spawn 1 creeper at location of {_e1}
  1443. add "{NoAI:0b}" to nbt of {_e1}
  1444. teleport {_e1} 100 blocks below {_e1}
  1445. kill {_e1}
  1446. set {_carl} to spawned creeper
  1447. set name of last spawned entity to "&a&lCarl the Creeper"
  1448. add "{NoAI:1b}" to nbt of {_carl}
  1449. add "{powered:1}" to nbt of {_carl}
  1450. apply slowness 255 to last spawned entity for 999 days
  1451.  
  1452. every 2 minutes:
  1453. execute console command "/animation" #Sue me
  1454.  
  1455. command /ticket [<offline player>] [<string>] [<string>]:
  1456. permission: mineplex.admin
  1457. permission message: &9Permissions> &7You do not have permission to do that.
  1458. trigger:
  1459. if arg-1 is set:
  1460. if arg-2 is set:
  1461. set {_int} to arg-2 parsed as an int
  1462. if {_int} is an int:
  1463. send "&9Tickets> &7You gave &e%arg-2% &7Carl spin tickets to &e%arg-1%" to sender
  1464. send "&9Tickets> &7You recieved &e%arg 2% &7Carl spin tickets" to arg 1
  1465. add {_int} to {spintickets.%arg-1%}
  1466. else:
  1467. send "&9Tickets> &7Listing Commands"
  1468. send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
  1469. else:
  1470. send "&9Tickets> &7Listing Commands"
  1471. send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
  1472. else:
  1473. send "&9Tickets> &7Listing Commands"
  1474. send "&4/ticket <player> <amount> &7Give a player spin tickets &4Admin"
  1475.  
  1476. on inventory close:
  1477. if {opener.%player%} is true:
  1478. wait 2 ticks
  1479. open chest with 3 rows named "Carl's Spinner" to player
  1480.  
  1481. every second:
  1482. loop all entities:
  1483. name of loop-entity contains "&a&lCarl the Creeper"
  1484. teleport loop-entity to {kitnpc}
  1485.  
  1486. on damage:
  1487. name of victim contains "&a&lCarl the Creeper"
  1488. cancel event
  1489.  
  1490. on right click on entity:
  1491. if player is holding chest:
  1492. if name of player's tool is "&aCosmetic Menu":
  1493. stop
  1494. else:
  1495. send "&9MCR> &e##BlameWheezy"
  1496. else:
  1497. name of clicked entity contains "&a&lCarl the Creeper"
  1498. if {nospam.%player%} is true:
  1499. stop
  1500. else:
  1501. set {nospam.%player%} to true
  1502. carlGUI(player)
  1503. wait 1 second
  1504. set {nospam.%player%} to false
  1505.  
  1506. on death:
  1507. set {nospam.%victim%} to false
  1508.  
  1509. on join:
  1510. set {nospam.%player%} to false
  1511.  
  1512. #Broadcast System
  1513.  
  1514. every 10 seconds:
  1515. $ thread
  1516. set {_check} to line 1 from url "https://pastebin.com/raw/8YXXWuiA"
  1517. if {mineplex.globalannounce.%{_check}%} is not set:
  1518. set {mineplex.globalannounce.%{_check}%} to true
  1519. $ thread
  1520. set {_message} to line 1 from url "https://pastebin.com/raw/fGAUXi37"
  1521. send all players title "&eMCR Announcement" with subtitle "&f%{_message}%" for 10 seconds
  1522. broadcast "&9MCR Announcement> &b%{_message}%"
  1523.  
  1524. #Titles
  1525.  
  1526. function createTitle(arg1: player , arg2: text) :: number:
  1527. set {_tploc} to location of {_arg1}
  1528. add 1.6 to y-coordinate of {_tploc}
  1529. spawn a armor stand at {_tploc}
  1530. teleport {%{_arg1}%.title} to {_tploc}
  1531. set {%{_arg1}%.title} to the last spawned entity
  1532. set metadata value "titleOwner" of last spawned entity to "%{_arg1}%"
  1533. add "{CustomName:""%{_arg2}%""}" to nbt of last spawned entity
  1534. add "{NoGravity:1}" to nbt of last spawned entity
  1535. add "{CustomNameVisible:1}" to nbt of last spawned entity
  1536. add "{PersistenceRequired:1}" to nbt of last spawned entity
  1537. add "{Invisible:1}" to nbt of last spawned entity
  1538. add "{Marker:1}" to nbt of last spawned entity
  1539. set {title.%{_arg1}%.active} to true
  1540. set {_tploc} to location of {_arg1}
  1541. add 1.6 to y-coordinate of {_tploc}
  1542. teleport {%{_arg1}%.title} to {_tploc}
  1543.  
  1544. function removeTitle(arg1: player) :: number:
  1545. if {title.%{_arg1}%.active} is true:
  1546. kill {%{_arg1}%.title}
  1547. set {title.%{_arg1}%.active} to false
  1548. delete {%{_arg1}%.title}
  1549. set {_void} to location of {_arg1}
  1550. remove 256 from y-coordinate of {_void}
  1551. loop all entities:
  1552. if metadata value "titleOwner" of loop-entity is "%{_arg1}%":
  1553. add "{NoGravity:0}" to nbt of loop-entity
  1554. teleport loop-entity to {_void}
  1555.  
  1556. set {title.%{_arg1}%.active} to false
  1557. wait 4 ticks
  1558. delete {%{_arg1}%.title}
  1559. else:
  1560. message "[TitleAPI] Error:" to console
  1561. message "[TitleAPI] %{_arg1}% has no title active" to console
  1562. stop
  1563.  
  1564. on any move:
  1565. if {title.%player%.active} is true:
  1566. set {_tploc} to location of player
  1567. add 1.6 to y-coordinate of {_tploc}
  1568. teleport {%player%.title} to {_tploc}
  1569.  
  1570. on any move:
  1571. if {title.%player%.active} is true:
  1572. push {%player%.title} forwards
  1573. set {_tploc} to location of player
  1574. add 1.6 to y-coordinate of {_tploc}
  1575. teleport {%player%.title} to {_tploc}
  1576. make {%player%.title} home towards player
  1577. push {%player%.title} forwards
  1578.  
  1579. command /createtitle [<player>] [<text>]:
  1580. permission: mineplex.dev
  1581. trigger:
  1582. set {_txt} to colored arg 2
  1583. removeTitle(arg 1)
  1584. message "&9Titles> &7Generating title, please wait..."
  1585. wait 5 ticks
  1586. createTitle(arg 1, "%{_txt}%")
  1587. message "&9Titles> &7Title &e%{_txt}% &7Generated."
  1588.  
  1589. #protocol hide {_e1} from loop-player
  1590.  
  1591. on quit:
  1592. removeTitle(player)
  1593.  
  1594. command /removeTitle [<player>]:
  1595. trigger:
  1596. removeTitle(arg-1)
  1597.  
  1598. function trackDB(p: player , t: string) :: string:
  1599. if {_t} is "aprilfools-2017":
  1600. set {_r} to "&5&k?&d 2017 April Fools &5&k?"
  1601. if {_t} is "holiday-cheer":
  1602. set {_r} to "&c&k?&c Has Santa's Number &c&k?"
  1603. if {_t} is "treasure-hunter":
  1604. set {_r} to "&c&k?&c Master Treasure Hunter &c&k?"
  1605. if {_t} is "leveler":
  1606. set {_r} to "&c&k?&c Friend of Douglas &c&k?"
  1607. if {_t} is "lucky":
  1608. set {_r} to "&c&k?&c Hashtag Blessed &c&k?"
  1609. if {_t} is "mineplex-mastery":
  1610. set {_r} to "&c&k?&c Mineplex Master &c&k?"
  1611. if {_t} is "party-animal":
  1612. set {_r} to "&c&k?&c Life is a Party &c&k?"
  1613. if {_t} is "peaceful":
  1614. set {_r} to "&c&k?&c Pacifist &c&k?"
  1615. if {_t} is "perfectionist":
  1616. set {_r} to "&c&k?&c Doer of Things &c&k?"
  1617. if {_t} is "power-play":
  1618. if {mineplex.ppc.%{_p}%} is set:
  1619. set {_r} to "&b&k?&b Power Play Club &b&k?"
  1620. else:
  1621. return "perm"
  1622. if {_t} is "sweet-tooth":
  1623. set {_r} to "&c&k?&c Candy Addict &c&k?"
  1624. if {_t} is "unlucky":
  1625. set {_r} to "&c&k?&c Things Don't Go My Way &c&k?"
  1626. if {_t} is "warrior":
  1627. set {_r} to "&c&k?&c Champion &c&k?"
  1628. if {_t} is "gotta-go":
  1629. set {_r} to "&6┬┴┬┴┤(・_├┬┴┬┴)"
  1630. if {_t} is "santas-helper":
  1631. set {_r} to "&c&l&ka&r &f&lSanta's Helper &r&c&l&ka"
  1632. if {_t} is "staff-trainee":
  1633. if {p} has permisson "mineplex.trainee":
  1634. set {_r} to "&6&kK&r &6Choo Choo &kK"
  1635. else:
  1636. return "perm"
  1637. if {_t} is "staff-moderator":
  1638. if {p} has permisson "mineplex.mod":
  1639. set {_r} to "&6&kK&r &6My name isn't mod &kK"
  1640. else:
  1641. return "perm"
  1642. if {_t} is "staff-sr_moderator":
  1643. if {p} has permisson "mineplex.srmod":
  1644. set {_r} to "&6&kK&r &6My Team's the Best Team &kK"
  1645. else:
  1646. return "perm"
  1647. if {_t} is "staff-leader":
  1648. if {_p} has permission "mineplex.leader":
  1649. set {_r} to "&c&kK&4 What's a leader? &c&kK"
  1650. else:
  1651. return "perm"
  1652. if {_t} is "mcr-patreon":
  1653. if {_p} is "WheezyGold7931" :
  1654. set {_r} to "&6&kK&c&l MCR Patreon &6&kK"
  1655. else:
  1656. return "perm"
  1657. if {_t} is "mcr-staff":
  1658. if {_p} is "WheezyGold7931" or "TheSkripterDK" or "Torksi" or "Y7S" or "ItzRenderman" or "NaiculS" or "Drawfull" or "Keyloren" or "citrin_" or "Torksi" or "Mike70387" or "Nathan100" or "GetRekt3" or "Rage_Dog" or "TonyMaster21":
  1659. set {_r} to "&6&kK&6&l MCR Staff &6&kK"
  1660. else:
  1661. return "perm"
  1662. if {_t} is "mcr-dev":
  1663. if {_p} is "WheezyGold7931" or "TheSkripterDK" or "Torksi" or "ItzRenderman":
  1664. set {_r} to "&6&kK&c&l MCR Dev &6&kK"
  1665. else:
  1666. return "perm"
  1667. if {_t} is "mcr-headcouncil":
  1668. if {_p} is "WheezyGold7931" or "NaiculS" or "Drawfull" or "Keyloren" or "Torksi" or "Mike70387":
  1669. set {_r} to "&6&kK&4&l MCR Head Council &6&kK"
  1670. else:
  1671. return "perm"
  1672. if {_t} is "mcr-creator":
  1673. if {_p} is "WheezyGold7931":
  1674. set {_r} to "&6&kK&d&l MCR Creator &6&kK"
  1675. else:
  1676. return "perm"
  1677. if {_r} is not set:
  1678. set {_r} to "false"
  1679. return {_r}
  1680.  
  1681. command /track [<string>] [<string>]:
  1682. trigger:
  1683. if {mineplex.track.%player%} is set:
  1684. send "&9Track> &7You have disabled your active track"
  1685. removeTitle(player)
  1686. delete {mineplex.track.%player%}
  1687. else:
  1688. if arg 1 is not set:
  1689. send "&9Track> &7You must specify the ID of a track to enable"
  1690. else:
  1691. set {_track} to trackDB(player, arg-1)
  1692. if {_track} is "false":
  1693. send "&9Track> &7That is not a valid track"
  1694. stop
  1695. if {_track} is "perm":
  1696. send "&9Track> &7You have not unlocked any tiers on that track"
  1697. stop
  1698. removeTitle(player)
  1699. wait 5 ticks
  1700. createTitle(player, {_track})
  1701. send "&9Track> &7Your active track has been updated to %{_track}%"
  1702. set {mineplex.track.%player%} to {_track}
  1703.  
  1704. #Cosmetics
  1705. on join:
  1706. message "&9Cosmetics> &7You enabled all Previously enabled Cosmetics" to player
  1707.  
  1708. command /chestmeup:
  1709. trigger:
  1710. give player chest named "&aCosmetic Menu"
  1711.  
  1712. function mountapi(p: player, action: text, type: text) :: number:
  1713. if {_action} is "remove":
  1714. set {_loc} to {_p}'s location
  1715. add -100000 to y-coordinate of {_loc}
  1716. teleport {currentmount.%{_p}%} to {_loc}
  1717. delete {currentmount.%{_p}%}
  1718. message "&9Mount> &7Despawned &e%{currentmount.%{_p}%.type}%" to {_p}
  1719. set {currentmount.%{_p}%.type} to "None"
  1720. if {_action} is "create":
  1721. if {_type} is "slime":
  1722. if {currentmount.%{_p}%} is set:
  1723. message "&9MountAPI> &6[WARN] &7%{_p}% already has a mount active. The Action has been canceled." to console
  1724. stop
  1725. spawn a slime at {_p}
  1726. set {currentmount.%{_p}%} to the last spawned entity
  1727. add "{CustomName:""%{_p}%'s Slime""}" to nbt of last spawned entity
  1728. add "{CustomNameVisible:1}" to nbt of last spawned entity
  1729. add "{PersistenceRequired:1}" to nbt of last spawned entity
  1730. add "{Size:1}" to nbt of last spawned entity
  1731. add "{Attributes:{Name:generic.attackDamage,Base:0},[{Name:generic.followRange,Base:0}]}" to nbt of last spawned entity
  1732. add "{ActiveEffects:[{Id:18,Amplifier:255,Duration:19999980,ShowParticles:0b}]}" to nbt of last spawned entity
  1733. set {currentmount.%{_p}%.type} to "Slime Mount"
  1734. while {currentmount.%{_p}%} is alive:
  1735. wait 15 ticks
  1736. {_p} is online
  1737. if distance between {currentmount.%{_p}%} and {_p} is less than 5:
  1738. make {currentmount.%{_p}%} pathfind to {_p} with speed 1
  1739. else if distance between {currentmount.%{_p}%} and {_p} is more than 15:
  1740. teleport {currentmount.%{_p}%} to {_p}
  1741. else:
  1742. make {currentmount.%{_p}%} pathfind to {_p} with speed 2
  1743.  
  1744.  
  1745.  
  1746. function cosmetic_system(arg1: text , arg2: text , p: player) :: number:
  1747. set {_wither} to "MHF_WSkeleton" parsed as a player
  1748. if {_arg1} is "menu":
  1749. if {_arg2} is "gadgets":
  1750. if {mineplex.%{_p}%.cosmetics.gadgets.pearl} is not set:
  1751. set {mineplex.%{_p}%.cosmetics.gadgets.pearl} to 0
  1752. if {mineplex.%{_p}%.cosmetics.gadgets.firework} is not set:
  1753. set {mineplex.%{_p}%.cosmetics.gadgets.firework} to 0
  1754. if {mineplex.%{_p}%.cosmetics.gadgets.coal} is not set:
  1755. set {mineplex.%{_p}%.cosmetics.gadgets.coal} to 0
  1756. if {mineplex.%{_p}%.cosmetics.gadgets.tnt} is not set:
  1757. set {mineplex.%{_p}%.cosmetics.gadgets.tnt} to 0
  1758. if {mineplex.%{_p}%.cosmetics.gadgets.snowball} is not set:
  1759. set {mineplex.%{_p}%.cosmetics.gadgets.snowball} to 0
  1760. wait 2 ticks
  1761. open chest with 6 rows named "Inventory" to {_p}
  1762. wait 4 ticks
  1763. format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
  1764. format slot 10 of {_p} with ender pearl named "&a&lEthereal Pearl" with lore "||&7These Pearls are stolen from||&7sleeping Endermen!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.pearl}%" to close then run [cosmetic_system("use", "pearl", {_p})]
  1765. if {mineplex.gadget.selected.%{_p}%} is "pearl":
  1766. format slot 10 of {_p} with shiny ender pearl named "&a&lEthereal Pearl" with lore "||&7These Pearls are stolen from||&7sleeping Endermen!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.pearl}%" to close then run [cosmetic_system("use", "pearl", {_p})]
  1767.  
  1768. format slot 11 of {_p} with firework rocket named "&a&lFireworks" with lore "||&7Need to celebrate? These||&7Fireworks should do the trick!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.firework}%" to close then run [cosmetic_system("use", "firework", {_p})]
  1769. if {mineplex.gadget.selected.%{_p}%} is "firework":
  1770. format slot 11 of {_p} with shiny firework rocket named "&a&lFireworks" with lore "||&7Need to celebrate? These||&7Fireworks should do the trick!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.firework}%" to close then run [cosmetic_system("use", "firework", {_p})]
  1771. format slot 14 of {_p} with snowball named "&a&lSnowballs" with lore "||&fJoin in on the festive fun by||&fthrowing show at people!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.snowball}%" to close then run [cosmetic_system("use", "snowball", {_p})]
  1772. if {mineplex.gadget.selected.%{_p}%} is "Snowball":
  1773. format slot 14 of {_p} with shiny snowball named "&a&lSnowballs" with lore "||&fJoin in on the festive fun by||&fthrowing show at people!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.snowball}%" to close then run [cosmetic_system("use", "snowball", {_p})]
  1774. format slot 12 of {_p} with tnt named "&a&lTNT" with lore "||&7Thowing tnt at %{mineplex.config.servername}%||&7Staff is highly encouraged!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.tnt}%" to close then run [cosmetic_system("use", "tnt", {_p})]
  1775. if {mineplex.gadget.selected.%{_p}%} is "tnt":
  1776. format slot 12 of {_p} with shiny tnt named "&a&lTNT" with lore "||&7Thowing tnt at %{mineplex.config.servername}%||&7Staff is highly encouraged!||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.tnt}%" to close then run [cosmetic_system("use", "tnt", {_p})]
  1777. format slot 13 of {_p} with coal named "&a&lCoal" with lore "||&7Just a large chunk of coal.||&7Maybe you were naughty or||&7something||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.coal}%" to close then run [cosmetic_system("use", "coal", {_p})]
  1778. if {mineplex.gadget.selected.%{_p}%} is "coal":
  1779. format slot 13 of {_p} with shiny coal named "&a&lCoal" with lore "||&7Just a large chunk of coal.||&7Maybe you were naughty or||&7something||||&fYou own &a%{mineplex.%{_p}%.cosmetics.gadgets.coal}%" to close then run [cosmetic_system("use", "coal", {_p})]
  1780. if {_arg2} is "main":
  1781. if {mineplex.%{_p}%.cosmetics.morphs} is not set:
  1782. set {mineplex.%{_p}%.cosmetics.morphs} to 0
  1783. if {mineplex.%{_p}%.cosmetics.hats} is not set:
  1784. set {mineplex.%{_p}%.cosmetics.hats} to 0
  1785. wait 2 ticks
  1786. open chest with 6 rows named "Inventory" to {_p}
  1787. set {mineplex.error.slot} to 0
  1788. wait 4 ticks
  1789. loop 54 times:
  1790. format slot {mineplex.error.slot} of {_p} with black glass pane named "&8" with lore "&6" to be unstealable
  1791. add 1 to {mineplex.error.slot}
  1792. format slot 1 of {_p} with nether star named "&a&lParticle Effects" with lore "||&7Show everyone how cool you ||&7are with swirly particles that ||&7follow you when you walk. ||&8Visible Everywhere ||||&fYou own 0/22 ||||&fActive: &eNone ||&aLeft-click to view category" to close then run [cosmetic_system("menu", "particles", {_p})]
  1793. format slot 10 of {_p} with arrow named "&a&lArrow Effects" with lore "||&7Your arrows will now leave ||&7Particle Trails as they soar ||&7through the air ||&8Visible In Games ||||&fYou own 0/13 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1794. format slot 28 of {_p} with golden boots named "&a&lDouble Jump Effects" with lore "||&7Demonstrate your parkour ||&7prowess with sweet particles ||&7when you double jump ||&8Visible Everywhere ||||&fYou own 0/13 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1795. format slot 19 of {_p} with skeleton head named "&a&lDeath Animations" with lore "||&7Your death will now be mourned ||&7with a wonderfull particle ||&7tribute ||&8Visible In Games ||||&fYou own 0/13 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1796. format slot 22 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore " ||&7This seems like it might come in||&7handy. Maybe I can collect more!" to be unstealable
  1797. format slot 49 of {_p} with melon block named "&a&lGadgets" with lore "||&fAll sorts of zany contraptions||&7to use on your friends and||&7foes.||&8Useable in Lobbies||||&fYou own 4/4||||&fActive: &e%{mineplex.gadget.selected.%{_p}%}%||&aClick to view Category" to close then run [cosmetic_system("menu", "gadgets", {_p})]
  1798. format slot 25 of {_p} with leather named "&a&lMorphs" with lore "||&7Have you ever wanted to be a||&7tiger? Well, you cant be a||&7tiger! Thats silly! But you can||&7be mny other things!||&8Useable in Lobbies||||&fYou own %{mineplex.%{_p}%.cosmetics.morphs}%/4||||&fActive: &e%{mineplex.currentmorph.%{_p}%}%||&aClick to view Category" to close then run [cosmetic_system("menu", "morphs", {_p})]
  1799. format slot 50 of {_p} with iron horse armor named "&a&lMounts" with lore "||&7Why walk when you can ride? ||&7Summon fancy mounts to help ||&7you move in style. ||&8Usable In Lobbies ||||&fYou own %{mineplex.%{_p}%.cosmetics.mounts}%/1 ||||&fActive: &e%{currentmount.%{_p}%.type}% ||&aLeft-click to view category" to close then run [cosmetic_system("menu", "mounts", {_p})]
  1800. format slot 51 of {_p} with bone named "&a&lPets" with lore "||&7Life on a server can get ||&7lonely sometimes. summon an ||&7adorable pet to follow you ||&7around and cheer you up! ||&8Usable In Lobbies ||||&fYou own 0/16 ||||&fActive: &eNone ||&aLeft-click to view category" to close then run [cosmetic_system("menu", "pets", {_p})]
  1801. format slot 7 of {_p} with golden helmet named "&a&lHats" with lore "||&7Hats are in this year. Wear||&7them on your head to impress||&7the ladies.||&8Useable in Lobbies||||&fYou own %{mineplex.%{_p}%.cosmetics.hats}%/2" to close then run [cosmetic_system("menu", "hats", {_p})]
  1802. format slot 16 of {_p} with diamond chestplate named "&A&LCostumes" with lore "||&7Sometimes going out calls for ||&7Special Clothes! Gain bonus ||&7effects for matching outfits. ||&8Usable In Lobbies ||||&fYou own 0/12 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1803. format slot 48 of {_p} with music disc named "&A&LMusic" with lore "||&7I JUST WANT TO DANCE WITH ||&7YOU! ||&8Usable In Lobbies ||||&fYou own 0/11 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1804. format slot 31 of {_p} with name tag named "&A&lTaunts" with lore "||&7Taunt your enemies or just ||&7show off. Use /taunt to have ||&7a good time! ||&8Visible In Games ||||&fYou own 0/1 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1805. format slot 13 of {_p} with cake item named "&A&LWin Effects" with lore "||&7Winning a game with your ||&7friends is all good and dandy, ||&7but being able to also ||&7show off awesome effects is ||&7even more fun! ||&8Visible In Games ||||&fYou own 0/10 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1806. format slot 21 of {_p} with torch named "&A&lGame Modifiers" with lore "||&7Cosmetic effects which changes ||&7appearances of objects in ||&7game. ||&8Visible In Games ||||&fYou own 0/25 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1807. format slot 47 of {_p} with lead named "&A&lBalloons" with lore "||&7Balloons are collectibles that ||&7you can float above your head ||&7as you wander the lobby. You ||&7can have up to 10 balloons in ||&7you hand at one time. ||&8Usable In Lobbies ||||&fYou own 0/14 ||||&fActive: &eNone ||&aLeft-click to view category" to be unstealable
  1808. format slot 23 of {_p} with lever named "&a&lKit Selector Particles" with lore "||&7Click here to select different||&7particles to indicate which kit you have selected!||&8Usable In Game Lobbies||||&fYou own 0/8 ||##||&aLeft-click to view category" to be unstealable
  1809. format slot 34 of {_p} with banner named "&a&lFlags" with lore "||&7Show off your country's flag!||&8Usable In Lobbies||||&fYou own 0/2 ||||&aLeft-click to view category" to be unstealable
  1810.  
  1811.  
  1812.  
  1813.  
  1814. if {_arg2} is "pets":
  1815. if {mineplex.%{_p}%.cosmetics.pets.ocelot} is not set:
  1816. set {mineplex.%{_p}%.cosmetics.pets.ocelot} to 0
  1817. if {mineplex.%{_p}%.cosmetics.pets.wolf} is not set:
  1818. set {mineplex.%{_p}%.cosmetics.pets.wolf} to 0
  1819. if {mineplex.%{_p}%.cosmetics.pets.chicken} is not set:
  1820. set {mineplex.%{_p}%.cosmetics.pets.chicken} to 0
  1821. wait 2 ticks
  1822. open chest with 6 rows named "Inventory" to {_p}
  1823. wait 4 ticks
  1824. format slot 4 of {_p} with bed item named "&7? Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
  1825. format slot 10 of {_p} with gray dye named "&c&lGuardian" with lore "||&7Your very own Guardian!||&cUnlocked with Titan Rank" to close then run [cosmetic_system("use", "guardian", {_p})]
  1826. format slot 11 of {_p} with gray dye named "&c&lCat" with lore "||&7Your very own Cat!" to close then run [cosmetic_system("use", "ocelot", {_p})]
  1827. format slot 12 of {_p} with gray dye named "&c&lDog" with lore "||&7Your very own Dog!" to close then run [cosmetic_system("use", "wolf", {_p})]
  1828. format slot 13 of {_p} with gray dye named "&c&lChicken" with lore "||&7Your very own Chicken!" to close then run [cosmetic_system("use", "chicken", {_p})]
  1829. if {_arg2} is "morphs":
  1830. if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not set:
  1831. set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 0
  1832. if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not set:
  1833. set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 0
  1834. if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not set:
  1835. set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 0
  1836. if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not set:
  1837. set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 0
  1838. wait 2 ticks
  1839. open chest with 6 rows named "Inventory" to {_p}
  1840. wait 4 ticks
  1841. format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
  1842. if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 0:
  1843. format slot 10 of {_p} with gray dye named "&c&lVillager Morph" with lore "||&7HURRRR! MURR HURRR!||||&f&lCOST: &b12000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_villager", {_p})]
  1844. else:
  1845. format slot 10 of {_p} with emerald named "&a&lVillager Morph" with lore "||&7HURRRR! MURR HURRR!||||&aClick to use" to close then run [cosmetic_system("use", "morph_villager", {_p})]
  1846. if {mineplex.currentmorph.%{_p}%} is "Villager Morph":
  1847. format slot 10 of {_p} with shiny emerald named "&a&lVillager Morph" with lore "||&7HURRRR! MURR HURRR!||||&aClick disable" to close then run [cosmetic_system("use", "morph_villager", {_p})]
  1848. if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 0:
  1849. format slot 11 of {_p} with gray dye named "&c&lSlime Morph" with lore "||&7Splat Splat!||||&f&lCOST: &b20000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_slime", {_p})]
  1850. else:
  1851. format slot 11 of {_p} with slimeball named "&a&lSlime Morph" with lore "||&7Splat Splat!||||&aClick to enable." to close then run [cosmetic_system("use", "morph_slime", {_p})]
  1852. if {mineplex.currentmorph.%{_p}%} is "Slime Morph":
  1853. format slot 11 of {_p} with shiny slimeball named "&a&lSlime Morph" with lore "||&7Splat Splat!||||&aClick to disable." to close then run [cosmetic_system("use", "morph_slime", {_p})]
  1854. if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 0:
  1855. format slot 12 of {_p} with gray dye named "&c&lCreeper Morph" with lore "||&7Hissss!||||&f&lCOST: &b10000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_creeper", {_p})]
  1856. else:
  1857. format slot 12 of {_p} with gunpowder named "&a&lCreeper Morph" with lore "||&7Hissssss!||||&aClick to enable." to close then run [cosmetic_system("use", "morph_creeper", {_p})]
  1858. if {mineplex.currentmorph.%{_p}%} is "Creeper Morph":
  1859. format slot 12 of {_p} with shiny gunpowder named "&a&lCreeper Morph" with lore "||&7Hissssss!||||&aClick to disable." to close then run [cosmetic_system("use", "morph_creeper", {_p})]
  1860. if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 0:
  1861. format slot 13 of {_p} with gray dye named "&c&lCow Morph" with lore "||&7How now brown cow?||||&f&lCOST: &b6000 Treasure Shards" to close then run [cosmetic_system("buy", "morph_cow", {_p})]
  1862. else:
  1863. format slot 13 of {_p} with steak named "&a&lCow Morph" with lore "||&7How now brown cow?||||&aClick to enable." to close then run [cosmetic_system("use", "morph_cow", {_p})]
  1864. if {mineplex.currentmorph.%{_p}%} is "Cow Morph":
  1865. format slot 13 of {_p} with shiny steak named "&a&lCow Morph" with lore "||&7Moooo!||||&aClick to disable." to close then run [cosmetic_system("use", "morph_cow", {_p})]
  1866. if {_p} has permission "mineplex.legend":
  1867. format slot 14 of {_p} with {_wither}'s skull named "&a&lWither Morph" with lore "||&7Legends have foretold the||&7coming of a powerful Wither...||||&fFly through the air!||||&aClick to Enable" to close then run [cosmetic_system("use", "morph_wither", {_p})]
  1868. if {mineplex.currentmorph.%{_p}%} is "Wither Morph":
  1869. format slot 14 of {_p} with shiny {_wither}'s skull named "&a&lWither Morph" with lore "||&7Legends have foretold the||&7coming of a powerful Wither...||||&fFly through the air!||||&aClick to Disable" to close then run [cosmetic_system("use", "morph_wither", {_p})]
  1870. else:
  1871. format slot 14 of {_p} with gray dye named "&c&lWither Morph" with lore "||&7Legends have foretold the||&7coming of a powerful Wither...||||&fFly through the air!||||&aUnlocked with Legend Rank" to be unstealable
  1872.  
  1873. if {_arg2} is "hats":
  1874. wait 2 ticks
  1875. open chest with 6 rows named "Inventory" to {_p}
  1876. wait 4 ticks
  1877. format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
  1878. if {mineplex.hat.%{_p}%.owned.compCube} is not set:
  1879. set {mineplex.hat.%{_p}%.owned.compCube} to 0
  1880. if {mineplex.hat.%{_p}%.owned.present} is not set:
  1881. set {mineplex.hat.%{_p}%.owned.present} to 0
  1882. if {mineplex.hat.%{_p}%.owned.compCube} is 0:
  1883. format slot 10 of {_p} with gray dye named "&c&lCompanion Cube" with lore "||&7The Enrichment Center is||&7required to remind you that||&7the Weighted Companion cube||&7cannot talk. In the event that it does talk The Enrichment||&7Center asks you to ignore its||&7advice.||||&9Found in Treasure Chests" to be unstealable
  1884. else:
  1885. format slot 10 of {_p} with stone:6 named "&a&lCompanion Cube" with lore "||&7The Enrichment Center is||&7required to remind you that||&7the Weighted Companion cube||&7cannot talk. In the event that it does talk The Enrichment||&7Center asks you to ignore its||&7advice.||||&aClick to enable" to close then run [cosmetic_system("use", "hat_compCube", {_p})]
  1886. if {mineplex.hat.selected.%{_p}%} is "compCube":
  1887. format slot 10 of {_p} with shiny stone:6 named "&a&lCompanion Cube" with lore "||&7The Enrichment Center is||&7required to remind you that||&7the Weighted Companion cube||&7cannot talk. In the event that||&7it does talk The Enrichment||&7Center asks you to ignore its||&7advice.||||&aClick to disable" to close then run [cosmetic_system("use", "hat_compCube", {_p})]
  1888. if {mineplex.hat.%{_p}%.owned.present} is 0:
  1889. format slot 11 of {_p} with gray dye named "&c&lPresent" with lore "||&7WHAT'S IN THE PRESENT? Oh, it's||&7just you...||||&9Found in Treasure Chests" to be unstealable
  1890. else:
  1891. format slot 11 of {_p} with chest named "&a&lPresent" with lore "||&7WHAT'S IN THE PRESENT? Oh, it's||&7just you...||||&aClick to enable." to close then run [cosmetic_system("use", "hat_present", {_p})]
  1892. if {mineplex.hat.selected.%{_p}%} is "present":
  1893. format slot 11 of {_p} with shiny chest named "&a&lPresent" with lore "||&7WHAT'S IN THE PRESENT? Oh, it's||&7just you...||||&aClick to disable." to close then run [cosmetic_system("use", "hat_present", {_p})]
  1894. if {_arg2} is "particles":
  1895. wait 2 ticks
  1896. open chest with 6 rows named "Inventory" to {_p}
  1897. wait 4 ticks
  1898. format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
  1899. if {mineplex.particle.%{_p}%.owned.shadow} is not set:
  1900. set {mineplex.particle.%{_p}%.owned.shadow} to 0
  1901. if {mineplex.particle.%{_p}%.owned.shadow} is 0:
  1902. format slot 10 of {_p} with gray dye named "&c&lShadow Walk" with lore "||&7In a world where footprints do||&7not exist, leaving you shadow||&7behind is the next best thing!||||&9Found in Treasure Chests" to be unstealable
  1903. else:
  1904. format slot 10 of {_p} with leather boots named "&a&lShadow Walk" with lore "||&7In a world where footprints do||&7not exist, leaving you shadow||&7behind is the next best thing!||||&aClick to enable" to close then run [cosmetic_system("use", "particle_shadow", {_p})]
  1905. if {mineplex.particle.selected.%{_p}%} is "shadow":
  1906. format slot 10 of {_p} with shiny leather boots named "&a&lShadow Walk" with lore "||&7In a world where footprints do||&7not exist, leaving you shadow||&7behind is the next best thing!||||&aClick to disabe" to close then run [cosmetic_system("use", "particle_shadow", {_p})]
  1907. if {mineplex.particle.%{_p}%.owned.flame} is 0:
  1908. format slot 11 of {_p} with gray dye named "&c&lFlame Rings" with lore "||&7Forged from the blazing rods||&7of 1000 Blazes by the||&7infamous Nether King.||||&9Found in Treasure Chests" to be unstealable
  1909. else:
  1910. format slot 11 of {_p} with blaze rod named "&a&lFlame Rings" with lore "||&7Forged from the blazing rods||&7of 1000 Blazes by the||&7infamous Nether King.||||&aClick to enable" to close then run [cosmetic_system("use", "particle_flame", {_p})]
  1911. if {mineplex.particle.selected.%{_p}%} is "flame":
  1912. format slot 11 of {_p} with shiny blaze rod named "&a&lFlame Rings" with lore "||&7Forged from the blazing rods||&7of 1000 Blazes by the||&7infamous Nether King.||||&aClick to disabe" to close then run [cosmetic_system("use", "particle_flame", {_p})]
  1913. if {_arg2} is "mounts":
  1914. if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is not set:
  1915. set {mineplex.%{_p}%.cosmetics.mounts.owned.slime} to 0
  1916. wait 2 ticks
  1917. open chest with 6 rows named "Inventory" to {_p}
  1918. wait 4 ticks
  1919. format slot 4 of {_p} with bed item named "&7⇽ Go Back" to close then run [cosmetic_system("menu", "main", {_p})]
  1920. if {mineplex.%{_p}%.cosmetics.mounts.owned.slime} is 0:
  1921. format slot 10 of {_p} with gray dye named "&c&lSlime Mount" with lore "||&7Splat Splat!||||&f&lCOST: &b12000 Treasure Shards" to close then run [cosmetic_system("buy", "mount_slime", {_p})]
  1922. else:
  1923. format slot 10 of {_p} with slimeball named "&a&lSlime Mount" with lore "||&7Splat Splat!||||&aClick to use" to close then run [cosmetic_system("use", "mount_slime", {_p})]
  1924. if {currentmount.%{_p}%.type} is "Slime Mount":
  1925. format slot 10 of {_p} with shiny slimeball named "&a&lSlime Mount" with lore "||&7Splat Splat!||||&aClick disable" to close then run [cosmetic_system("use", "mount_slime", {_p})]
  1926.  
  1927.  
  1928. if {_arg1} is "use":
  1929. if {_arg2} is "hat_compCube":
  1930. if {mineplex.hat.selected.%{_p}%} is "compCube":
  1931. wait 1 tick
  1932. message "&9Gadget> &7You unequipped &eCompanion Cube" to {_p}
  1933. set {mineplex.hat.selected.%{_p}%} to "none"
  1934. execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0"
  1935. cosmetic_system("menu", "hats", {_p})
  1936. stop
  1937. if {mineplex.hat.%{_p}%.owned.compCube} is 1:
  1938. wait 1 tick
  1939. execute console command "/replaceitem entity %{_p}% slot.armor.head skull 1 3 {display:{Name:&a&lCompanion Cube},SkullOwner:{Id:c1e0dbe1-7fef-4de0-96d2-59aa96dafef7,Properties:{textures:[{Value:eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMmU1ZDZjNTY5N2U2ZTA2MmEzNjc5YzdiZjU0MDg0YjU4ZWIzZTNjYWE1N2U0MGFkZjZlNTJmMjFiYzM1Mzk1In19fQ==}]}}}"
  1940. message "&9Gadget> &7You equipped &eCompanion Cube" to {_p}
  1941. set {mineplex.hat.selected.%{_p}%} to "compCube"
  1942. cosmetic_system("menu", "hats", {_p})
  1943. if {_arg1} is "use":
  1944. if {_arg2} is "hat_present":
  1945. if {mineplex.hat.selected.%{_p}%} is "present":
  1946. message "&9Gadget> &7You unequipped &ePresent" to {_p}
  1947. set {mineplex.hat.selected.%{_p}%} to "none"
  1948. execute console command "/replaceitem entity %{_p}% slot.armor.head air 1 0"
  1949. cosmetic_system("menu", "hats", {_p})
  1950. stop
  1951. if {mineplex.hat.%{_p}%.owned.compCube} is 1:
  1952. execute console command "/replaceitem entity %{_p}% slot.armor.head skull 1 3 {display:{Name:&a&lPresent},SkullOwner:{Id:d350d00d-4dbb-46a9-b769-60bd67546da3,Properties:{textures:[{Value:eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTE4ZjhmMTE1MTRjMWZmYmM2ZTk5OTc1ZDdjYTZiNWJhZjkyZGM5MjRjNTIyM2M0ZWM0OTY5M2NkZmNiOCJ9fX0=}]}}}"
  1953. message "&9Gadget> &7You equipped &ePresent" to {_p}
  1954. set {mineplex.hat.selected.%{_p}%} to "present"
  1955. cosmetic_system("menu", "hats", {_p})
  1956. if {_arg1} is "use":
  1957. if {_arg2} is "particle_shadow":
  1958. if {mineplex.particle.selected.%{_p}%} is "shadow":
  1959. message "&9Gadget> &7You unequipped &eShadow Walk" to {_p}
  1960. set {mineplex.particle.selected.%{_p}%} to "none"
  1961. cosmetic_system("menu", "particles", {_p})
  1962. stop
  1963. if {mineplex.particle.%{_p}%.owned.shadow} is 1:
  1964. message "&9Gadget> &7You equipped &eShadow Walk" to {_p}
  1965. set {mineplex.particle.selected.%{_p}%} to "shadow"
  1966. cosmetic_system("menu", "particles", {_p})
  1967. if {_arg2} is "particle_flame":
  1968. if {mineplex.particle.selected.%{_p}%} is "flame":
  1969. message "&9Gadget> &7You unequipped &eFlame Rings" to {_p}
  1970. set {mineplex.particle.selected.%{_p}%} to "none"
  1971. cosmetic_system("menu", "particles", {_p})
  1972. stop
  1973. if {mineplex.particle.%{_p}%.owned.flame} is 1:
  1974. message "&9Gadget> &7You equipped &eFlame Rings" to {_p}
  1975. set {mineplex.particle.selected.%{_p}%} to "flame"
  1976. cosmetic_system("menu", "particles", {_p})
  1977. if {_arg1} is "use":
  1978. if {_arg2} is "ocelot":
  1979. if {mineplex.pets.ocelot.active.%{_p}%} is not set:
  1980. set {mineplex.pets.ocelot.active.%{_p}%} to false
  1981. if {mineplex.pets.ocelot.active.%{_p}%} is false:
  1982. spawn a ocelot at {_p}
  1983. set {_ocelotpet} to the last spawned entity
  1984. add "{CustomName:&a%{_p}%'s&c Pet Cat}" to nbt of last spawned entity
  1985. add "{Silent:1}" to nbt of last spawned entity
  1986. add "{CustomNameVisible:1}" to nbt of last spawned entity
  1987. add "{PersistenceRequired:1}" to nbt of last spawned entity
  1988. tame {_ocelotpet} to {_p}
  1989. evaluate "set {pet::%{_p}%} to {_ocelotpet}"
  1990. set {mineplex.pets.ocelot.active.%{_p}%} to true
  1991. while {pet::%{_p}%} is alive:
  1992. wait 15 ticks
  1993. {_p} is online
  1994. if distance between {pet::%{_p}%} and {_p} is less than 5:
  1995. make {pet::%{_p}%} pathfind to {_p} with speed 1
  1996. else if distance between {pet::%{_p}%} and {_p} is more than 15:
  1997. teleport {pet::%{_p}%} to {_p}
  1998. else:
  1999. make {pet::%{_p}%} pathfind to {_p} with speed 2
  2000. else:
  2001. if {mineplex.pets.ocelot.active.%{_p}%} is true:
  2002. kill {pet::%{_p}%}
  2003. delete {pet::%{_p}%}
  2004. set {mineplex.pets.ocelot.active.%{_p}%} to false
  2005. if {_arg1} is "use":
  2006. if {_arg2} is "wolf":
  2007. if {mineplex.pets.wolf.active.%{_p}%} is not set:
  2008. set {mineplex.pets.wolf.active.%{_p}%} to false
  2009. if {mineplex.pets.wolf.active.%{_p}%} is false:
  2010. spawn a wolf at {_p}
  2011. set {_ocelotpet} to the last spawned entity
  2012. add "{CustomName:&a%{_p}%'s&c Pet Wolf}" to nbt of last spawned entity
  2013. add "{Silent:1}" to nbt of last spawned entity
  2014. add "{CustomNameVisible:1}" to nbt of last spawned entity
  2015. add "{PersistenceRequired:1}" to nbt of last spawned entity
  2016. tame {_ocelotpet} to {_p}
  2017. evaluate "set {pet::%{_p}%} to {_ocelotpet}"
  2018. set {mineplex.pets.wolf.active.%{_p}%} to true
  2019. while {pet::%{_p}%} is alive:
  2020. wait 15 ticks
  2021. {_p} is online
  2022. if distance between {pet::%{_p}%} and {_p} is less than 5:
  2023. make {pet::%{_p}%} pathfind to {_p} with speed 1
  2024. else if distance between {pet::%{_p}%} and {_p} is more than 15:
  2025. teleport {pet::%{_p}%} to {_p}
  2026. else:
  2027. make {pet::%{_p}%} pathfind to {_p} with speed 2
  2028. else:
  2029. if {mineplex.pets.wolf.active.%{_p}%} is true:
  2030. kill {pet::%{_p}%}
  2031. delete {pet::%{_p}%}
  2032. set {mineplex.pets.wolf.active.%{_p}%} to false
  2033. if {_arg1} is "use":
  2034. if {_arg2} is "chicken":
  2035. if {mineplex.pets.chicken.active.%{_p}%} is not set:
  2036. set {mineplex.pets.chicken.active.%{_p}%} to false
  2037. if {mineplex.pets.chicken.active.%{_p}%} is false:
  2038. spawn a chicken at {_p}
  2039. set {_ocelotpet} to the last spawned entity
  2040. add "{CustomName:&a%{_p}%'s&c Pet Chicken}" to nbt of last spawned entity
  2041. add "{Silent:1}" to nbt of last spawned entity
  2042. add "{CustomNameVisible:1}" to nbt of last spawned entity
  2043. add "{PersistenceRequired:1}" to nbt of last spawned entity
  2044. tame {_ocelotpet} to {_p}
  2045. evaluate "set {pet::%{_p}%} to {_ocelotpet}"
  2046. set {mineplex.pets.chicken.active.%{_p}%} to true
  2047. while {pet::%{_p}%} is alive:
  2048. wait 15 ticks
  2049. {_p} is online
  2050. if distance between {pet::%{_p}%} and {_p} is less than 5:
  2051. make {pet::%{_p}%} pathfind to {_p} with speed 1
  2052. else if distance between {pet::%{_p}%} and {_p} is more than 15:
  2053. teleport {pet::%{_p}%} to {_p}
  2054. else:
  2055. make {pet::%{_p}%} pathfind to {_p} with speed 2
  2056. else:
  2057. if {mineplex.pets.chicken.active.%{_p}%} is true:
  2058. kill {pet::%{_p}%}
  2059. delete {pet::%{_p}%}
  2060. set {mineplex.pets.chicken.active.%{_p}%} to false
  2061. if {_arg1} is "use":
  2062. if {_arg2} is "guardian":
  2063. if {mineplex.pets.guardian.active.%{_p}%} is not set:
  2064. set {mineplex.pets.guardian.active.%{_p}%} to false
  2065. if {mineplex.pets.guardian.active.%{_p}%} is false:
  2066. spawn a guardian at {_p}
  2067. set {_ocelotpet} to the last spawned entity
  2068. add "{CustomName:&a%{_p}%'s&c Pet Guardian}" to nbt of last spawned entity
  2069. add "{Silent:1}" to nbt of last spawned entity
  2070. add "{CustomNameVisible:1}" to nbt of last spawned entity
  2071. add "{PersistenceRequired:1}" to nbt of last spawned entity
  2072. tame {_ocelotpet} to {_p}
  2073. evaluate "set {pet::%{_p}%} to {_ocelotpet}"
  2074. set {mineplex.pets.guardian.active.%{_p}%} to true
  2075. while {pet::%{_p}%} is alive:
  2076. wait 15 ticks
  2077. {_p} is online
  2078. if distance between {pet::%{_p}%} and {_p} is less than 5:
  2079. make {pet::%{_p}%} pathfind to {_p} with speed 1
  2080. else if distance between {pet::%{_p}%} and {_p} is more than 15:
  2081. teleport {pet::%{_p}%} to {_p}
  2082. else:
  2083. make {pet::%{_p}%} pathfind to {_p} with speed 2
  2084. else:
  2085. if {mineplex.pets.guardian.active.%{_p}%} is true:
  2086. kill {pet::%{_p}%}
  2087. delete {pet::%{_p}%}
  2088. set {mineplex.pets.guardian.active.%{_p}%} to false
  2089. if {_arg1} is "use":
  2090. if {_arg2} is "coal":
  2091. if {mineplex.gadget.selected.%{_p}%} is "coal":
  2092. message "&9Gadget> &7You unequipped &eCoal" to {_p}
  2093. set {mineplex.gadget.selected.%{_p}%} to "none"
  2094. set slot 3 of {_p} to air with name "lolz"
  2095. cosmetic_system("menu", "gadgets", {_p})
  2096. stop
  2097. message "&9Gadget> &7You equipped &eCoal" to {_p}
  2098. set {mineplex.gadget.selected.%{_p}%} to "coal"
  2099. set slot 3 of {_p} to coal with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.coal}% Coal"
  2100. cosmetic_system("menu", "gadgets", {_p})
  2101. stop
  2102. if {_arg1} is "buy":
  2103. wait 2 ticks
  2104. open chest with 6 rows named " Confirmation" to {_p}
  2105. wait 2 ticks
  2106. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f10000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2107. format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable
  2108. format slot 27 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2109. format slot 28 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2110. format slot 29 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2111. format slot 36 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2112. format slot 37 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2113. format slot 38 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2114. format slot 45 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2115. format slot 46 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2116. format slot 47 of {_p} with emerald block named "&aOK" with lore "" to close then run [cosmetic_system("confirm", {_arg2}, {_p})]
  2117. format slot 33 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2118. format slot 34 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2119. format slot 35 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2120. format slot 42 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2121. format slot 43 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2122. format slot 44 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2123. format slot 51 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2124. format slot 52 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2125. format slot 53 of {_p} with redstone block named "&cCANCEL" with lore "" to close then run [cosmetic_system("menu", "main", {_p})]
  2126. #Mounts
  2127. if {_arg2} is "mount_slime":
  2128. if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
  2129. message "&9Gadget> &7You already own this mount!" to {_p}
  2130. else:
  2131. format slot 22 of {_p} with slimeball named "&fSlime Mount" with lore "&fSplat Splat!" to be unstealable
  2132. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f10000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2133. #Morphs
  2134. if {_arg2} is "morph_creeper":
  2135. if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
  2136. message "&9Gadget> &7You already own this morph!" to {_p}
  2137. else:
  2138. format slot 22 of {_p} with gunpowder named "&fCreeper Morph" with lore "&fHissssss!" to be unstealable
  2139. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f10000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2140. if {_arg2} is "morph_cow":
  2141. if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1:
  2142. message "&9Gadget> &7You already own this morph!" to {_p}
  2143. else:
  2144. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f60000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2145. format slot 22 of {_p} with steak named "&fCow Morph" with lore "&fMooooo!" to be unstealable
  2146. if {_arg2} is "morph_slime":
  2147. if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
  2148. message "&9Gadget> &7You already own this morph!" to {_p}
  2149. else:
  2150. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f20000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2151. format slot 22 of {_p} with slimeball named "&fSlime Morph" with lore "&fSplat Splat!" to be unstealable
  2152. if {_arg2} is "morph_villager":
  2153. if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1:
  2154. message "&9Gadget> &7You already own this morph!" to {_p}
  2155. else:
  2156. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f12000 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2157. format slot 22 of {_p} with emerald named "&fVillager Morph" with lore "&fMURRR! HURR MURRR!" to be unstealable
  2158. #Gadgets
  2159. if {_arg2} is "pearl":
  2160. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f500 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2161. format slot 22 of {_p} with ender pearl named "&fEthereal Pearl" with lore "&fThese Pearls are stolen from||&fsleeping Endermen!" to be unstealable
  2162. if {_arg2} is "firework":
  2163. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f500 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2164. format slot 22 of {_p} with firework rocket named "&fFirework" with lore "&fNeed to celebrate? These||&fFireworks should do the trick!" to be unstealable
  2165. if {_arg2} is "tnt":
  2166. format slot 4 of {_p} with prismarine shard named "&fTreasure Shards" with lore "&f500 Treasure Shards will be||&fdeducated from your account balance" to be unstealable
  2167. format slot 22 of {_p} with tnt named "&fTNT" with lore "&fThowing tnt at %{mineplex.config.servername}%||&fStaff is highly encouraged!" to be unstealable
  2168. if {_arg1} is "confirm":
  2169. if {_arg2} is "mount_slime":
  2170. if {mineplex.shards.%{_p}%} is bigger than 9999:
  2171. set {mineplex.proc.slot} to 45
  2172. wait 2 ticks
  2173. open chest with 6 rows named " Confirmation" to {_p}
  2174. loop 9 times:
  2175. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2176. wait 1 tick
  2177. add 1 to {mineplex.proc.slot}
  2178. if {mineplex.proc.slot} is 54:
  2179. message "&9Cosmetics> &7Purchased &eSlime Mount" to {mineplex.chest.buyplayer.%{_p}%}
  2180. set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1
  2181. delShards({_p}, 10000)
  2182. add 1 to {mineplex.%{_p}%.cosmetics.mounts}
  2183. set {mineplex.error.slot} to 0
  2184. loop 54 times:
  2185. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eCreeper Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2186. add 1 to {mineplex.error.slot}
  2187. wait 2 ticks
  2188. stop
  2189. if {mineplex.shards.%{_p}%} is not bigger than 9999:
  2190. wait 2 ticks
  2191. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2192. set {mineplex.error.slot} to 0
  2193. loop 54 times:
  2194. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "mounts", {_p})]
  2195. add 1 to {mineplex.error.slot}
  2196. if {_arg1} is "use":
  2197. if {_arg2} is "mount_slime":
  2198. if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1:
  2199. message "&9Gadget> &7You dont own this mount." to {_p}
  2200. stop
  2201. if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
  2202. if {mineplex.currentmorph.%{_p}%} is not set:
  2203. set {mineplex.currentmorph.%{_p}%} to "None"
  2204. if {currentmount.%{_p}%.type} is not "Slime Mount":
  2205. if {currentmount.%{_p}%.type} is not "None":
  2206. message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p}
  2207. message "&9Gadget> &7You spawned &eSlime Mount" to {_p}
  2208. mountapi({_p}, "create", "slime")
  2209. cosmetic_system("menu", "mounts", {_p})
  2210. stop
  2211. if {currentmount.%{_p}%.type} is "Slime Mount":
  2212. message "&9Gadget> &7You despawned &e%{currentmount.%{_p}%.type}%" to {_p}
  2213. set {mineplex.currentmorph.%{_p}%} to "None"
  2214. mountapi({_p}, "remove", "notused")
  2215. cosmetic_system("menu", "morphs", {_p})
  2216. stop
  2217. if {_arg1} is "confirm":
  2218. if {_arg2} is "morph_creeper":
  2219. if {mineplex.shards.%{_p}%} is bigger than 9999:
  2220. set {mineplex.proc.slot} to 45
  2221. wait 2 ticks
  2222. open chest with 6 rows named " Confirmation" to {_p}
  2223. loop 9 times:
  2224. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2225. wait 1 tick
  2226. add 1 to {mineplex.proc.slot}
  2227. if {mineplex.proc.slot} is 54:
  2228. message "&9Cosmetics> &7Purchased &eCreeper Morph" to {mineplex.chest.buyplayer.%{_p}%}
  2229. set {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} to 1
  2230. delShards({_p}, 10000)
  2231. add 1 to {mineplex.%{_p}%.cosmetics.morphs}
  2232. set {mineplex.error.slot} to 0
  2233. loop 54 times:
  2234. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eCreeper Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2235. add 1 to {mineplex.error.slot}
  2236. wait 2 ticks
  2237. stop
  2238. if {mineplex.shards.%{_p}%} is not bigger than 9999:
  2239. wait 2 ticks
  2240. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2241. set {mineplex.error.slot} to 0
  2242. loop 54 times:
  2243. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2244. add 1 to {mineplex.error.slot}
  2245. if {_arg1} is "use":
  2246. if {_arg2} is "morph_creeper":
  2247. if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is not 1:
  2248. message "&9Gadget> &7You dont own this morph." to {_p}
  2249. stop
  2250. if {mineplex.%{_p}%.cosmetics.morphs.owned.creeper} is 1:
  2251. if {mineplex.currentmorph.%{_p}%} is not set:
  2252. set {mineplex.currentmorph.%{_p}%} to "None"
  2253. if {mineplex.currentmorph.%{_p}%} is not "Creeper Morph":
  2254. if {mineplex.currentmorph.%{_p}%} is not "None":
  2255. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2256. message "&9Gadget> &7You morphed into &eCreeper Morph" to {_p}
  2257. set {mineplex.currentmorph.%{_p}%} to "Creeper Morph"
  2258. execute console command "odisguise %{_p}% creeper"
  2259. cosmetic_system("menu", "morphs", {_p})
  2260. stop
  2261. if {mineplex.currentmorph.%{_p}%} is "Creeper Morph":
  2262. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2263. set {mineplex.currentmorph.%{_p}%} to "None"
  2264. execute console command "undisguise %{_p}%"
  2265. cosmetic_system("menu", "morphs", {_p})
  2266. stop
  2267. if {_arg1} is "use":
  2268. if {_arg2} is "morph_wither":
  2269. if {_p} has permission "mineplex.legend":
  2270. if {mineplex.currentmorph.%{_p}%} is not set:
  2271. set {mineplex.currentmorph.%{_p}%} to "None"
  2272. if {mineplex.currentmorph.%{_p}%} is not "Wither Morph":
  2273. if {mineplex.currentmorph.%{_p}%} is not "None":
  2274. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2275. message "&9Gadget> &7You morphed into &eWither Morph" to {_p}
  2276. set {mineplex.currentmorph.%{_p}%} to "Wither Morph"
  2277. execute console command "odisguise %{_p}% wither"
  2278. set {mineplex.dj.%{_p}%} to 0
  2279. set {_p}'s flight state to true
  2280. cosmetic_system("menu", "morphs", {_p})
  2281. stop
  2282. if {mineplex.currentmorph.%{_p}%} is "Wither Morph":
  2283. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2284. set {mineplex.currentmorph.%{_p}%} to "None"
  2285. execute console command "undisguise %{_p}%"
  2286. set {mineplex.dj.%{_p}%} to 1
  2287. set {_p}'s flight state to false
  2288. cosmetic_system("menu", "morphs", {_p})
  2289. stop
  2290. else:
  2291. message "&9Gadget> &7You dont own this Morph" to {_p}
  2292. if {_arg1} is "confirm":
  2293. if {_arg2} is "morph_cow":
  2294. if {mineplex.shards.%{_p}%} is bigger than 5999:
  2295. set {mineplex.proc.slot} to 45
  2296. wait 2 ticks
  2297. open chest with 6 rows named " Confirmation" to {_p}
  2298. loop 9 times:
  2299. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2300. wait 1 tick
  2301. add 1 to {mineplex.proc.slot}
  2302. if {mineplex.proc.slot} is 54:
  2303. message "&9Cosmetics> &7Purchased &eCow Morph" to {mineplex.chest.buyplayer.%{_p}%}
  2304. set {mineplex.%{_p}%.cosmetics.morphs.owned.cow} to 1
  2305. delShards({_p}, 6000)
  2306. add 1 to {mineplex.%{_p}%.cosmetics.morphs}
  2307. set {mineplex.error.slot} to 0
  2308. loop 54 times:
  2309. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eCow Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2310. add 1 to {mineplex.error.slot}
  2311. wait 2 ticks
  2312. stop
  2313. if {mineplex.shards.%{_p}%} is not bigger than 9999:
  2314. wait 2 ticks
  2315. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2316. set {mineplex.error.slot} to 0
  2317. loop 54 times:
  2318. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2319. add 1 to {mineplex.error.slot}
  2320. if {_arg1} is "use":
  2321. if {_arg2} is "morph_cow":
  2322. if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is not 1:
  2323. message "&9Gadget> &7You dont own this morph." to {_p}
  2324. stop
  2325. if {mineplex.%{_p}%.cosmetics.morphs.owned.cow} is 1:
  2326. if {mineplex.currentmorph.%{_p}%} is not set:
  2327. set {mineplex.currentmorph.%{_p}%} to "None"
  2328. if {mineplex.currentmorph.%{_p}%} is not "Cow Morph":
  2329. if {mineplex.currentmorph.%{_p}%} is not "None":
  2330. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2331. message "&9Gadget> &7You morphed into &eCow Morph" to {_p}
  2332. set {mineplex.currentmorph.%{_p}%} to "Cow Morph"
  2333. execute console command "odisguise %{_p}% cow"
  2334. cosmetic_system("menu", "morphs", {_p})
  2335. stop
  2336. if {mineplex.currentmorph.%{_p}%} is "Cow Morph":
  2337. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2338. set {mineplex.currentmorph.%{_p}%} to "None"
  2339. execute console command "undisguise %{_p}%"
  2340. cosmetic_system("menu", "morphs", {_p})
  2341. stop
  2342. if {_arg1} is "confirm":
  2343. if {_arg2} is "morph_slime":
  2344. if {mineplex.shards.%{_p}%} is bigger than 19999:
  2345. set {mineplex.proc.slot} to 45
  2346. wait 2 ticks
  2347. open chest with 6 rows named " Confirmation" to {_p}
  2348. loop 9 times:
  2349. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2350. wait 1 tick
  2351. add 1 to {mineplex.proc.slot}
  2352. if {mineplex.proc.slot} is 54:
  2353. message "&9Cosmetics> &7Purchased &eSlime Morph" to {mineplex.chest.buyplayer.%{_p}%}
  2354. set {mineplex.%{_p}%.cosmetics.morphs.owned.slime} to 1
  2355. delShards({_p}, 20000)
  2356. add 1 to {mineplex.%{_p}%.cosmetics.morphs}
  2357. set {mineplex.error.slot} to 0
  2358. loop 54 times:
  2359. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eSlime Morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2360. add 1 to {mineplex.error.slot}
  2361. wait 2 ticks
  2362. stop
  2363. if {mineplex.shards.%{_p}%} is not bigger than 19999:
  2364. wait 2 ticks
  2365. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2366. set {mineplex.error.slot} to 0
  2367. loop 54 times:
  2368. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2369. add 1 to {mineplex.error.slot}
  2370. if {_arg1} is "use":
  2371. if {_arg2} is "morph_slime":
  2372. if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is not 1:
  2373. message "&9Gadget> &7You dont own this morph." to {_p}
  2374. stop
  2375. if {mineplex.%{_p}%.cosmetics.morphs.owned.slime} is 1:
  2376. if {mineplex.currentmorph.%{_p}%} is not set:
  2377. set {mineplex.currentmorph.%{_p}%} to "None"
  2378. if {mineplex.currentmorph.%{_p}%} is not "Slime Morph":
  2379. if {mineplex.currentmorph.%{_p}%} is not "None":
  2380. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2381. message "&9Gadget> &7You morphed into &eSlime Morph" to {_p}
  2382. set {mineplex.currentmorph.%{_p}%} to "Slime Morph"
  2383. execute console command "odisguise %{_p}% slime"
  2384. cosmetic_system("menu", "morphs", {_p})
  2385. stop
  2386. if {mineplex.currentmorph.%{_p}%} is "Slime Morph":
  2387. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2388. set {mineplex.currentmorph.%{_p}%} to "None"
  2389. execute console command "undisguise %{_p}%"
  2390. cosmetic_system("menu", "morphs", {_p})
  2391. stop
  2392. if {_arg1} is "confirm":
  2393. if {_arg2} is "morph_villager":
  2394. if {mineplex.shards.%{_p}%} is bigger than 11999:
  2395. set {mineplex.proc.slot} to 45
  2396. wait 2 ticks
  2397. open chest with 6 rows named " Confirmation" to {_p}
  2398. loop 9 times:
  2399. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2400. wait 1 tick
  2401. add 1 to {mineplex.proc.slot}
  2402. if {mineplex.proc.slot} is 54:
  2403. message "&9Cosmetics> &7Purchased &eVillager Morph" to {mineplex.chest.buyplayer.%{_p}%}
  2404. set {mineplex.%{_p}%.cosmetics.morphs.owned.villager} to 1
  2405. delShards({_p}, 12000)
  2406. add 1 to {mineplex.%{_p}%.cosmetics.morphs}
  2407. set {mineplex.error.slot} to 0
  2408. loop 54 times:
  2409. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased &eVillager morph" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2410. add 1 to {mineplex.error.slot}
  2411. wait 2 ticks
  2412. stop
  2413. if {mineplex.shards.%{_p}%} is not bigger than 499:
  2414. wait 3 ticks
  2415. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2416. wait 2 ticks
  2417. set {mineplex.error.slot} to 0
  2418. loop 54 times:
  2419. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "morphs", {_p})]
  2420. add 1 to {mineplex.error.slot}
  2421. if {_arg1} is "use":
  2422. if {_arg2} is "morph_villager":
  2423. if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is not 1:
  2424. message "&9Gadget> &7You dont own this morph." to {_p}
  2425. stop
  2426. if {mineplex.%{_p}%.cosmetics.morphs.owned.villager} is 1:
  2427. if {mineplex.currentmorph.%{_p}%} is not set:
  2428. set {mineplex.currentmorph.%{_p}%} to "None"
  2429. if {mineplex.currentmorph.%{_p}%} is not "villager Morph":
  2430. if {mineplex.currentmorph.%{_p}%} is not "None":
  2431. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2432. message "&9Gadget> &7You morphed into &eVillager Morph" to {_p}
  2433. set {mineplex.currentmorph.%{_p}%} to "Villager Morph"
  2434. execute console command "odisguise %{_p}% villager"
  2435. cosmetic_system("menu", "morphs", {_p})
  2436. stop
  2437. if {mineplex.currentmorph.%{_p}%} is "Villager Morph":
  2438. message "&9Gadget> &7You unmorphed from &e%{mineplex.currentmorph.%{_p}%}%" to {_p}
  2439. set {mineplex.currentmorph.%{_p}%} to "None"
  2440. execute console command "undisguise %{_p}%"
  2441. cosmetic_system("menu", "morphs", {_p})
  2442. stop
  2443. if {_arg1} is "use":
  2444. if {_arg2} is "pearl":
  2445. if {mineplex.gadget.selected.%{_p}%} is "Ethereal Pearl":
  2446. message "&9Gadget> &7You unequipped &eEthereal Pearl" to {_p}
  2447. set {mineplex.gadget.selected.%{_p}%} to "None"
  2448. set slot 3 of {_p} to air with name "lolz"
  2449. cosmetic_system("menu", "gadgets", {_p})
  2450. stop
  2451. message "&9Cosmetics> &7You equipped &eEthereal Pearl" to {_p}
  2452. set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.pearl}% &5Ethereal Pearls"
  2453. set {mineplex.gadget.selected.%{_p}%} to "Ethereal Pearl"
  2454. cosmetic_system("menu", "gadgets", {_p})
  2455. stop
  2456. if {_arg1} is "confirm":
  2457. if {_arg2} is "pearl":
  2458. if {mineplex.shards.%{_p}%} is bigger than 499:
  2459. set {mineplex.proc.slot} to 45
  2460. wait 2 ticks
  2461. open chest with 6 rows named " Confirmation" to {_p}
  2462. loop 9 times:
  2463. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2464. wait 1 tick
  2465. add 1 to {mineplex.proc.slot}
  2466. if {mineplex.proc.slot} is 54:
  2467. message "&9Cosmetics> &7Purchased 50x &eEthereal Pearl" to {mineplex.chest.buyplayer.%{_p}%}
  2468. add 50 to {mineplex.%{_p}%.cosmetics.gadgets.pearl}
  2469. delShards({_p}, 50)
  2470. set {mineplex.error.slot} to 0
  2471. loop 54 times:
  2472. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased 50x &eEthereal Pearl" to close then run [cosmetic_system("menu", "gadgets", {_p})]
  2473. add 1 to {mineplex.error.slot}
  2474. wait 2 ticks
  2475. stop
  2476. if {mineplex.shards.%{_p}%} is not bigger than 499:
  2477. wait 2 ticks
  2478. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2479. set {mineplex.error.slot} to 0
  2480. loop 54 times:
  2481. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
  2482. add 1 to {mineplex.error.slot}
  2483. if {_arg1} is "use":
  2484. if {_arg2} is "firework":
  2485. if {mineplex.gadget.selected.%{_p}%} is "Fireworks":
  2486. message "&9Gadget> &7You unequipped &eFireworks" to {_p}
  2487. set {mineplex.gadget.selected.%{_p}%} to "None"
  2488. set slot 3 of {_p} to air with name "lolz"
  2489. cosmetic_system("menu", "gadgets", {_p})
  2490. stop
  2491. message "&9Gadget> &7You equipped &eFireworks" to {_p}
  2492. set slot 3 of {_p} to ender pearl with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.firework}% &eFireworks"
  2493. set {mineplex.gadget.selected.%{_p}%} to "Fireworks"
  2494. cosmetic_system("menu", "gadgets", {_p})
  2495. stop
  2496. if {_arg1} is "use":
  2497. if {_arg2} is "tnt":
  2498. if {mineplex.gadget.selected.%{_p}%} is "TNT":
  2499. message "&9Gadget> &7You unequipped &eTNT" to {_p}
  2500. set {mineplex.gadget.selected.%{_p}%} to "None"
  2501. set slot 3 of {_p} to air with name "lolz"
  2502. cosmetic_system("menu", "gadgets", {_p})
  2503. stop
  2504. message "&9Gadget> &7You equipped &eTNT" to {_p}
  2505. set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.tnt}% &eTNT"
  2506. set {mineplex.gadget.selected.%{_p}%} to "TNT"
  2507. cosmetic_system("menu", "gadgets", {_p})
  2508. if {_arg1} is "use":
  2509. if {_arg2} is "snowball":
  2510. if {mineplex.gadget.selected.%{_p}%} is "Snowball":
  2511. message "&9Gadget> &7You unequipped &eSnowball" to {_p}
  2512. set {mineplex.gadget.selected.%{_p}%} to "None"
  2513. set slot 3 of {_p} to air with name "lolz"
  2514. cosmetic_system("menu", "gadgets", {_p})
  2515. stop
  2516. message "&9Gadget> &7You equipped &eSnowball" to {_p}
  2517. set slot 3 of {_p} to tnt with name "&e%{mineplex.%{_p}%.cosmetics.gadgets.snowball}% &eSnowballs"
  2518. set {mineplex.gadget.selected.%{_p}%} to "Snowball"
  2519. cosmetic_system("menu", "gadgets", {_p})
  2520. if {_arg1} is "confirm":
  2521. if {_arg2} is "firework":
  2522. if {mineplex.shards.%{_p}%} is bigger than 499:
  2523. set {mineplex.proc.slot} to 45
  2524. wait 2 ticks
  2525. open chest with 6 rows named " Confirmation" to {_p}
  2526. loop 9 times:
  2527. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2528. wait 1 tick
  2529. add 1 to {mineplex.proc.slot}
  2530. if {mineplex.proc.slot} is 54:
  2531. message "&9Cosmetics> &7Purchased 50x &eFireworks" to {_p}
  2532. add 50 to {mineplex.%{_p}%.cosmetics.gadgets.firework}
  2533. delShards({_p}, 500)
  2534. set {mineplex.error.slot} to 0
  2535. loop 54 times:
  2536. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased 50x &eFirworks" to close then run [cosmetic_system("menu", "gadgets", {_p})]
  2537. add 1 to {mineplex.error.slot}
  2538. wait 2 ticks
  2539. stop
  2540. if {mineplex.shards.%{_p}%} is not bigger than 499:
  2541. wait 2 ticks
  2542. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2543. set {mineplex.error.slot} to 0
  2544. loop 54 times:
  2545. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
  2546. add 1 to {mineplex.error.slot}
  2547. if {_arg1} is "confirm":
  2548. if {_arg2} is "tnt":
  2549. if {mineplex.shards.%{_p}%} is bigger than 499:
  2550. set {mineplex.proc.slot} to 45
  2551. wait 2 ticks
  2552. open chest with 6 rows named " Confirmation" to {_p}
  2553. loop 9 times:
  2554. format slot {mineplex.proc.slot} of {_p} with lapis block named "&9Processing" with lore "" to close
  2555. wait 1 tick
  2556. add 1 to {mineplex.proc.slot}
  2557. if {mineplex.proc.slot} is 54:
  2558. message "&9Cosmetics> &7Purchased 50x &eTNT" to {_p}
  2559. add 50 to {mineplex.%{_p}%.cosmetics.gadgets.tnt}
  2560. delShards({_p}, 500)
  2561. set {mineplex.error.slot} to 0
  2562. loop 54 times:
  2563. format slot {mineplex.error.slot} of {_p} with emerald block named "&aPurchase Successful" with lore "&7Purchased 50x &eTNT" to close then run [cosmetic_system("menu", "gadgets", {_p})]
  2564. add 1 to {mineplex.error.slot}
  2565. wait 2 ticks
  2566. stop
  2567. if {mineplex.shards.%{_p}%} is not bigger than 499:
  2568. wait 2 ticks
  2569. open chest with 6 rows named " Confirmation" to {mineplex.chest.buyplayer.%{_p}%}
  2570. set {mineplex.error.slot} to 0
  2571. loop 54 times:
  2572. format slot {mineplex.error.slot} of {_p} with redstone block named "&cPurchase Failed" with lore "" to close then run [cosmetic_system("menu", "gadgets", {_p})]
  2573. add 1 to {mineplex.error.slot}
  2574.  
  2575. on right click:
  2576. if player is holding chest:
  2577. if name of player's tool is "&aCosmetic Menu":
  2578. cancel event
  2579. cosmetic_system("menu", "main", player)
  2580.  
  2581. on left click:
  2582. if player is holding chest:
  2583. if name of player's tool is "&aCosmetic Menu":
  2584. cancel event
  2585. cosmetic_system("menu", "main", player)
  2586.  
  2587. on damage:
  2588. victim's name contains "Pet"
  2589. cancel event
  2590.  
  2591. on any move:
  2592. if {mineplex.particle.selected.%player%} is "shadow":
  2593. loop all players:
  2594. show 1 "footstep" particles at location of player for loop-player offset by 0.4, 0.7, 0.4
  2595. if {mineplex.particle.selected.%player%} is "flame":
  2596. loop all players:
  2597. show 1 "flame" particles at location of player for loop-player offset by 0.4, 0.7, 0.4
  2598.  
  2599. command /giveitem [<player>] [<number>] [<text>]:
  2600. permission: mineplex.admin
  2601. permission message: &9Permissions> &7You do not have permission to do that.
  2602. trigger:
  2603. if arg 3 is "hat_compCube":
  2604. if {mineplex.hat.%arg 1%.owned.compCube} is 1:
  2605. message "&9Cosmetics> &e%arg 1% &7already owns &eCompanion Cube"
  2606. stop
  2607. set {mineplex.hat.%arg 1%.owned.compCube} to 1
  2608. add 1 to {mineplex.%arg 1%.cosmetics.hats}
  2609. message "&9Cosmetics> &7You gave &e%arg 1% Companion Cube" to player
  2610. message "&9Cosmetics> &7You recieved the &eCompanion Cube &7from &e%player%" to arg 1
  2611. stop
  2612. if arg 3 is "hat_present":
  2613. if {mineplex.hat.%arg 1%.owned.present} is 1:
  2614. message "&9Cosmetics> &e%arg 1% &7already owns &ePresent"
  2615. stop
  2616. set {mineplex.hat.%arg 1%.owned.present} to 1
  2617. add 1 to {mineplex.%arg 1%.cosmetics.hats}
  2618. message "&9Cosmetics> &7You gave &e%arg 1% Present" to player
  2619. message "&9Cosmetics> &7You recieved the &ePresent &7from &e%player%" to arg 1
  2620. stop
  2621. if arg 3 is "particle_shadow":
  2622. if {mineplex.particle.%arg 1%.owned.shadow} is 1:
  2623. message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk"
  2624. stop
  2625. set {mineplex.particle.%arg 1%.owned.shadow} to 1
  2626. add 1 to {mineplex.%arg 1%.cosmetics.particles}
  2627. message "&9Cosmetics> &7You gave &e%arg 1% Shadow Walk" to player
  2628. message "&9Cosmetics> &7You recieved the &eShadow Walk &7from &e%player%" to arg 1
  2629. stop
  2630. if arg 3 is "particle_flame":
  2631. if {mineplex.particle.%arg 1%.owned.flame} is 1:
  2632. message "&9Cosmetics> &e%arg 1% &7already owns &eShadow Walk"
  2633. stop
  2634. set {mineplex.particle.%arg 1%.owned.flame} to 1
  2635. add 1 to {mineplex.%arg 1%.cosmetics.particles}
  2636. message "&9Cosmetics> &7You gave &e%arg 1% Flame Rings" to player
  2637. message "&9Cosmetics> &7You recieved the &eFlame Rings &7from &e%player%" to arg 1
  2638. stop
  2639. if arg 3 is "take:hat_compCube":
  2640. if {mineplex.hat.%arg 1%.owned.compCube} is 0:
  2641. message "&9Cosmetics> &e%arg 1% &7doesnt own &eCompanion Cube"
  2642. stop
  2643. set {mineplex.hat.%arg 1%.owned.compCube} to 0
  2644. remove 1 from {mineplex.%arg 1%.cosmetics.hats}
  2645. message "&9Cosmetics> &7You took &e%arg 1%'s Companion Cube" to player
  2646. message "&9Cosmetics> &e%player% &7took your &eCompanion Cube" to arg 1
  2647. stop
  2648. if arg 3 is "take:hat_present":
  2649. if {mineplex.hat.%arg 1%.owned.present} is 0:
  2650. message "&9Cosmetics> &e%arg 1% &7doesnt own &ePresent"
  2651. stop
  2652. set {mineplex.hat.%arg 1%.owned.present} to 0
  2653. remove 1 from {mineplex.%arg 1%.cosmetics.hats}
  2654. message "&9Cosmetics> &7You took &e%arg 1%'s Present" to player
  2655. message "&9Cosmetics> &e%player% &7took your &ePresent" to arg 1
  2656. stop
  2657. if arg 3 is "pearl":
  2658. add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.pearl}
  2659. message "&9Item> &7You gave %arg 2% Ethereal Pearls &7to player %arg 1%" to player
  2660. message "&9Item> &e%player% &7gave you &e%arg 2% Ethereal Pearls" to arg 1
  2661. stop
  2662. if arg 3 is "fireworks":
  2663. add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.firework}
  2664. message "&9Item> &7You gave %arg 2% Fireworks &7to player %arg 1%" to player
  2665. message "&9Item> &e%player% &7gave you &e%arg 2% Fireworks" to arg 1
  2666. stop
  2667. if arg 3 is "coal":
  2668. add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.coal}
  2669. message "&9Item> &7You gave %arg 2% Coal &7to player %arg 1%" to player
  2670. message "&9Item> &e%player% &7gave you &e%arg 2% Coal" to arg 1
  2671. stop
  2672. if arg 3 is "tnt":
  2673. add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.tnt}
  2674. message "&9Item> &7You gave %arg 2% TNT &7to player %arg 1%" to player
  2675. message "&9Item> &e%player% &7gave you &e%arg 2% TNT" to arg 1
  2676. stop
  2677. if arg 3 is "snowball":
  2678. add arg 2 to {mineplex.%arg 1%.cosmetics.gadgets.snowball}
  2679. message "&9Item> &7You gave %arg 2% Snowballs &7to player %arg 1%" to player
  2680. message "&9Item> &e%player% &7gave you &e%arg 2% Snowballs" to arg 1
  2681. stop
  2682. message "&9Cosmetics> &c&lInvalid Cosmetic."
  2683.  
  2684.  
  2685. command /gadget:
  2686. permission: mineplex.admin
  2687. permission message: &9Permissions> &7You do not have permission to do that.
  2688. trigger:
  2689. if {mineplex.cosmetics} is not set:
  2690. set {mineplex.cosmetics} to 1
  2691. if {mineplex.cosmetics} is 1:
  2692. set {mineplex.cosmetics} to 0
  2693. broadcast "&f&lGadgets/Mounts are now &c&lDisabled"
  2694. stop
  2695. if {mineplex.cosmetics} is 0:
  2696. set {mineplex.cosmetics} to 1
  2697. broadcast "&f&lGadgets/Mounts are now &a&lEnabled"
  2698. stop
  2699.  
  2700. every tick:
  2701. loop all players:
  2702. if {mineplex.cosmetics} is not set:
  2703. set {mineplex.cosmetics} to 1
  2704. if {mineplex.cosmetics} is 0:
  2705. set slot 3 of loop-player to air with name "remove"
  2706. stop
  2707. loop-player's gamemode is not creative:
  2708. if {mineplex.cosmetics.%loop-player%} is not set:
  2709. set {mineplex.cosmetics.%loop-player%} to 1
  2710. if {mineplex.gadget.selected.%loop-player%} is "Ethereal Pearl":
  2711. set slot 3 of loop-player to ender pearl with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.pearl}% Ethereal Pearl"
  2712. if {mineplex.gadget.selected.%loop-player%} is "Fireworks":
  2713. set slot 3 of loop-player to firework rocket with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.firework}% Fireworks"
  2714. if {mineplex.gadget.selected.%loop-player%} is "Coal":
  2715. set slot 3 of loop-player to coal with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.coal}% Coal"
  2716. if {mineplex.gadget.selected.%loop-player%} is "TNT":
  2717. set slot 3 of loop-player to tnt with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.tnt}% TNT"
  2718. if {mineplex.gadget.selected.%loop-player%} is "Snowball":
  2719. set slot 3 of loop-player to snowball with name "&e%{mineplex.%loop-player%.cosmetics.gadgets.snowball}% Snowballs"
  2720.  
  2721.  
  2722. on shoot:
  2723. if projectile is an enderpearl:
  2724. if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.pearl}% Ethereal Pearl":
  2725. if {mineplex.%shooter%.cosmetics.gadgets.pearl} is 0:
  2726. cancel event
  2727. cosmetic_system("buy", "pearl", shooter)
  2728. stop
  2729. if {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} is 1:
  2730. set action bar of shooter to "&f&lEthereal Pearl is recharging"
  2731. cancel event
  2732. stop
  2733. remove 1 from {mineplex.%shooter%.cosmetics.gadgets.pearl}
  2734. set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 1
  2735. message "&9Skill> &7You threw &aEthereal Pearl&7." to shooter
  2736. make shooter ride projectile
  2737. wait 3 ticks
  2738. make shooter ride projectile
  2739. wait 3 seconds
  2740. set {mineplex.%shooter%.cosmetics.gadgets.pearlCooldown} to 0
  2741. set action bar of shooter to "&a&lEthereal Pearl Recharged."
  2742. if projectile is an snowball:
  2743. if name of shooter's tool is "&e%{mineplex.%shooter%.cosmetics.gadgets.snowball}% Snowballs":
  2744. if {mineplex.%shooter%.cosmetics.gadgets.snowball} is 0:
  2745. cancel event
  2746. message "&9Gadget> &7You have no Snowballs left!" to shooter
  2747. stop
  2748. if {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} is 1:
  2749. set action bar of shooter to "&f&lSnowball is recharging"
  2750. cancel event
  2751. stop
  2752. remove 1 from {mineplex.%shooter%.cosmetics.gadgets.snowball}
  2753. set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 1
  2754. message "&9Skill> &7You threw &aSnowball&7." to shooter
  2755. wait 10 ticks
  2756. set {mineplex.%shooter%.cosmetics.gadgets.snowballCooldown} to 0
  2757. set action bar of shooter to "&a&lSnowball Recharged."
  2758.  
  2759. on right click:
  2760. if player is holding tnt:
  2761. if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.tnt}% TNT":
  2762. if {mineplex.%player%.cosmetics.gadgets.tnt} is less than 1:
  2763. cosmetic_system("buy", "tnt", player)
  2764. stop
  2765. if {mineplex.%player%.cosmetics.gadgets.tntCooldown} is 1:
  2766. set action bar of player to "&f&lTNT is recharging"
  2767. stop
  2768. remove 1 from {mineplex.%player%.cosmetics.gadgets.tnt}
  2769. spawn a primed tnt 1 meter above the player
  2770. add "{Fuse:60}" to nbt of the spawned entity
  2771. push the spawned entity in direction of player at speed 0.9
  2772. push the spawned entity upwards at speed 0.2
  2773. message "&9Skill> &7You threw &aTNT&7."
  2774. set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 1
  2775. wait 3 seconds
  2776. set {mineplex.%player%.cosmetics.gadgets.tntCooldown} to 0
  2777. set action bar of player to "&a&lTNT Recharged."
  2778.  
  2779. on right click:
  2780. if player is holding firework rocket:
  2781. if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.firework}% Fireworks":
  2782. if {mineplex.%player%.cosmetics.gadgets.firework} is 0:
  2783. cancel event
  2784. cosmetic_system("buy", "firework", player)
  2785. stop
  2786. if {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} is 1:
  2787. set action bar of player to "&f&lFireworks &f&lis recharging..."
  2788. cancel event
  2789. stop
  2790. remove 1 from {mineplex.%player%.cosmetics.gadgets.firework}
  2791. cancel event
  2792. set {firework} to a random integer from 1 to 15
  2793. if {firework} is 1:
  2794. launch creeper firework colored red at player timed 1
  2795. if {firework} is 2:
  2796. launch burst firework colored green at player timed 1
  2797. if {firework} is 3:
  2798. launch ball firework colored yellow at player timed 1
  2799. if {firework} is 4:
  2800. launch ball firework colored blue at player timed 1
  2801. if {firework} is 5:
  2802. launch burst firework colored red at player timed 1
  2803. if {firework} is 6:
  2804. launch creeper firework colored light green at player timed 1
  2805. if {firework} is 7:
  2806. launch burst firework colored light green at player timed 1
  2807. if {firework} is 8:
  2808. launch ball firework colored orange at player timed 1
  2809. if {firework} is 9:
  2810. launch burst firework colored orange at player timed 1
  2811. if {firework} is 10:
  2812. launch creeper firework colored pink at player timed 1
  2813. if {firework} is 11:
  2814. launch burst firework colored orange at player timed 1
  2815. if {firework} is 12:
  2816. launch burst firework colored light green at player timed 1
  2817. if {firework} is 13:
  2818. launch burst firework colored blue at player timed 1
  2819. if {firework} is 14:
  2820. launch burst firework colored blue at player timed 1
  2821. if {firework} is 15:
  2822. launch burst firework colored yellow at player timed 1
  2823. set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 1
  2824. message "&9Skill> &7You used &aFireworks&7."
  2825. wait 10 ticks
  2826. set {mineplex.%player%.cosmetics.gadgets.fireworkCooldown} to 0
  2827. set action bar of player to "&a&lFireworks Recharged."
  2828. on right click:
  2829. if player is holding coal:
  2830. if name of player's tool is "&e%{mineplex.%player%.cosmetics.gadgets.coal}% Coal":
  2831. if {mineplex.%player%.cosmetics.gadgets.coal} is 0:
  2832. message "&9Coal> &7You should go and get some coal..."
  2833. stop
  2834. if {mineplex.%player%.cosmetics.gadgets.coalCooldown} is 1:
  2835. set action bar of player to "&f&lCoal &f&lis recharging..."
  2836. cancel event
  2837. stop
  2838. message "&9Skill> &7You used &aCoal&7."
  2839. set {coalMessage} to a random integer from 1 to 10
  2840. if {coalMessage} is 1:
  2841. message "&9Coal> &7Maybe you could... eat it?"
  2842. if {coalMessage} is 2:
  2843. message "&9Coal> &7Now... if you only had a furnace."
  2844. if {coalMessage} is 3:
  2845. message "&9Coal> &7Did you know a diamond is formed from coal?"
  2846. if {coalMessage} is 4:
  2847. message "&9Coal> &7Coal is a word that sounds wierd if you say it too much."
  2848. if {coalMessage} is 5:
  2849. message "&9Coal> &7Did you know coal is used for &knothing&7!"
  2850. if {coalMessage} is 6:
  2851. message "&9Coal> &7I hope you didn't miss any diamonds."
  2852. if {coalMessage} is 7:
  2853. message "&9Coal> &7Na na na na, Na na na na, &8BLACK COAL"
  2854. if {coalMessage} is 8:
  2855. message "&9Coal> &7With 9 of these you could make a Block."
  2856. if {coalMessage} is 9:
  2857. message "&9Coal> &7Lava is hotter, but coal is quicker."
  2858. if {coalMessage} is 10:
  2859. message "&9Coal> &7For what do you even need Coal on a Minigame server?"
  2860. set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 1
  2861. wait 10 ticks
  2862. set {mineplex.%player%.cosmetics.gadgets.coalCooldown} to 0
  2863. set action bar of player to "&a&lCoal Recharged."
  2864.  
  2865. #Slime mount test
  2866. on right click on slime:
  2867. if {currentmount.%player%} is not set:
  2868. delete {currentmount.%player%}
  2869. message "&9Mount> &7This is not your mount."
  2870. else:
  2871. if {currentmount.%player%} is the clicked entity:
  2872. make the player ride the clicked entity
  2873. else:
  2874. message "&9Mount> &7This is not your mount."
  2875.  
  2876.  
  2877.  
  2878. on explode:
  2879. create a safe explosion with force 3
  2880. cancel event
  2881.  
  2882. on damage:
  2883. attacker's name contains "Slime"
  2884. set damage to 0
  2885. cancel event
  2886.  
  2887. #Morph Disablers (Quit)
  2888. on quit:
  2889. if {mineplex.currentmorph.%player%} is "Creeper Morph":
  2890. cosmetic_system("use", "morph_creeper", player)
  2891. if {mineplex.currentmorph.%player%} is "Slime Morph":
  2892. cosmetic_system("use", "morph_slime", player)
  2893. if {mineplex.currentmorph.%player%} is "Cow Morph":
  2894. cosmetic_system("use", "morph_cow", player)
  2895. if {mineplex.currentmorph.%player%} is "Villager Morph":
  2896. cosmetic_system("use", "morph_villager", player)
  2897. if {mineplex.currentmorph.%player%} is "Wither Morph":
  2898. cosmetic_system("use", "morph_wither", player)
  2899.  
  2900. #Treasure System
  2901.  
  2902. function resetPoints(p: offline player, l: number) :: number:
  2903. delete {mineplex.chestbusy.%{_l}%}
  2904. delete {mineplex.inchest.%{_p}%}
  2905. delete {mineplex.chestsopened.%{_p}%}
  2906. set block at {mineplex.chestpoint.%{_l}%.sub.1} to air
  2907. set block at {mineplex.chestpoint.%{_l}%.sub.2} to air
  2908. set block at {mineplex.chestpoint.%{_l}%.sub.3} to air
  2909. set block at {mineplex.chestpoint.%{_l}%.sub.4} to air
  2910. set block at {mineplex.chestpoint.%{_l}%.sub.5} to air
  2911. set block at {mineplex.chestpoint.%{_l}%.sub.6} to air
  2912. set block at {mineplex.chestpoint.%{_l}%.sub.7} to air
  2913. set block at {mineplex.chestpoint.%{_l}%.sub.8} to air
  2914. set block at {mineplex.chestpoint.%{_l}%} to chest
  2915.  
  2916. function rewardTreasure(p: player , c: number , l: number , s: number) :: number:
  2917. set {_mineplex.chestpoint.%{_l}%.sub.%{_s}%} to {mineplex.chestpoint.%{_l}%.sub.%{_s}%}
  2918. add 0 to y-coordinate of {_mineplex.chestpoint.%{_l}%.sub.%{_s}%}
  2919. if {_c} is 3:
  2920. set {_r} to a random integer between 1 and 350
  2921. if {_r} is 50:
  2922. if {mineplex.rank.%{_p}%} is "":
  2923. set {_ra} to "ULTRA"
  2924. else if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
  2925. set {_ra} to "HERO"
  2926. else if {mineplex.rank.%{_p}%} is "&d&lHERO ":
  2927. set {_ra} to "LEGEND"
  2928. else if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
  2929. set {_ra} to "TITAN"
  2930. else if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
  2931. set {_ra} to "ETERNAL"
  2932. else:
  2933. set {_ra} to a random integer between 2750 and 3750
  2934. broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
  2935. addShards({_p}, {_ra})
  2936. wait 2.25 seconds
  2937. execute console command "/rank set %{_p}% %{_ra}%"
  2938. broadcast "&9Treasure> &e%{_p}% &7found &cMythical %{_ra}% Rank&7."
  2939. send all players title "&eTreasure" with subtitle "&f%{_p}% has found &cMythical Rank Upgrade" for 10 seconds
  2940. else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55:
  2941. set {_ra} to a random integer between 1500 and 2250
  2942. broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
  2943. addShards({_p}, {_ra})
  2944. else if {_r} is 35 or 36 or 37 or 38 or 39 or 40 or 41 or 42 or 43 or 44 or 65 or 64 or 63 or 62 or 61 or 60 or 59 or 58 or 57 or 56 or 55:
  2945. set {_ra} to a random integer between 1025 and 1495
  2946. broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7."
  2947. addShards({_p}, {_ra})
  2948. else if {_r} is 21 or 22 or 23 or 24 or 25 or 26 or 27 or 28 or 29 or 30 or 31 or 32 or 33 or 34 or 65 or 66 or 67 or 68:
  2949. set {_ra} to a random integer between 525 and 985
  2950. send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p}
  2951. addShards({_p}, {_ra})
  2952. else:
  2953. set {_ra} to a random integer between 150 and 499
  2954. send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p}
  2955. addShards({_p}, {_ra})
  2956. else:
  2957. set {_r} to a random integer between 1 and 350
  2958. if {_r} is 50:
  2959. set {_ra} to a random integer between 2750 and 3750
  2960. broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
  2961. addShards({_p}, {_ra})
  2962. else if {_r} is 45 or 46 or 47 or 48 or 49 or 51 or 52 or 53 or 54 or 55:
  2963. set {_ra} to a random integer between 1500 and 2250
  2964. broadcast "&9Treasure> &e%{_p}% &7found &aLegendary %{_ra}% Shards&7."
  2965. addShards({_p}, {_ra})
  2966. wait 2.25 seconds
  2967. resetPoints({_p}, {_l})
  2968. delete {mineplex.inchest.%{_p}%}
  2969. else if {_r} is 35 or 36 or 37 or 38 or 39 or 40 or 41 or 42 or 43 or 44 or 65 or 64 or 63 or 62 or 61 or 60 or 59 or 58 or 57 or 56 or 55:
  2970. set {_ra} to a random integer between 1025 and 1495
  2971. broadcast "&9Treasure> &e%{_p}% &7found &bSuper Rare %{_ra}% Shards&7."
  2972. addShards({_p}, {_ra})
  2973. else if {_r} is 21 or 22 or 23 or 24 or 25 or 26 or 27 or 28 or 29 or 30 or 31 or 32 or 33 or 34 or 65 or 66 or 67 or 68:
  2974. set {_ra} to a random integer between 525 and 985
  2975. send "&9Treasure> &7You found &dRare %{_ra}% Shards&7." to {_p}
  2976. addShards({_p}, {_ra})
  2977. else:
  2978. set {_ra} to a random integer between 150 and 499
  2979. send "&9Treasure> &7You found &7Common %{_ra}% Shards&7." to {_p}
  2980. addShards({_p}, {_ra})
  2981.  
  2982. on join:
  2983. if {oldchests.%player%} is not set:
  2984. set {oldchests.%player%} to 0
  2985. if {ancientchests.%player%} is not set:
  2986. set {ancientchests.%player%} to 0
  2987. if {mythicalchests.%player%} is not set:
  2988. set {mythicalchests.%player%} to 0
  2989.  
  2990. function buyChest(p: player, n: number) :: player:
  2991. if {_n} is 1:
  2992. if {mineplex.shards.%{_p}%} >= 1000:
  2993. close {_p}'s inventory
  2994. wait 3 ticks
  2995. open chest with 6 rows named " Confirmation" to {_p}
  2996. wait 5 ticks
  2997. set {_slot} to 0
  2998. format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  2999. loop 44 times:
  3000. format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3001. add 1 to {_slot}
  3002. loop 10 times:
  3003. wait 0.4 ticks
  3004. format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3005. add 1 to {slot}
  3006. delShards({_p}, 1000)
  3007. add 1 to {oldchests.%{_p}%}
  3008. wait 10 ticks
  3009. close {_p}'s inventory
  3010. else:
  3011. close {_p}'s inventory
  3012. wait 3 ticks
  3013. open chest with 6 rows named " Confirmation" to {_p}
  3014. wait 5 ticks
  3015. format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
  3016. set {_slot} to 0
  3017. loop 54 times:
  3018. format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
  3019. add 1 to {_slot}
  3020. wait 10 ticks
  3021. close {_p}'s inventory
  3022. if {_n} is 2:
  3023. if {mineplex.shards.%{_p}%} >= 5000:
  3024. close {_p}'s inventory
  3025. wait 3 ticks
  3026. open chest with 6 rows named " Confirmation" to {_p}
  3027. wait 5 ticks
  3028. set {_slot} to 0
  3029. format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3030. loop 44 times:
  3031. format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3032. add 1 to {_slot}
  3033. loop 10 times:
  3034. wait 0.4 ticks
  3035. format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3036. add 1 to {slot}
  3037. remove 5000 from {mineplex.shards.%{_p}%}
  3038. delShards({_p}, 5000)
  3039. add 1 to {ancientchests.%{_p}%}
  3040. wait 10 ticks
  3041. close {_p}'s inventory
  3042. else:
  3043. close {_p}'s inventory
  3044. wait 3 ticks
  3045. open chest with 6 rows named " Confirmation" to {_p}
  3046. wait 5 ticks
  3047. format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
  3048. set {_slot} to 0
  3049. loop 54 times:
  3050. format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
  3051. add 1 to {_slot}
  3052. wait 10 ticks
  3053. close {_p}'s inventory
  3054. if {_n} is 3:
  3055. if {mineplex.shards.%{_p}%} >= 10000:
  3056. close {_p}'s inventory
  3057. wait 3 ticks
  3058. open chest with 6 rows named " Confirmation" to {_p}
  3059. wait 5 ticks
  3060. set {_slot} to 0
  3061. format slot 0 of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3062. loop 44 times:
  3063. format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3064. add 1 to {_slot}
  3065. loop 10 times:
  3066. wait 0.4 ticks
  3067. format slot {_slot} of {_p} with emerald block named "&aYour purchase was successfull." to be unstealable
  3068. add 1 to {slot}
  3069. delShards({_p}, 10000)
  3070. add 1 to {mythicalchests.%{_p}%}
  3071. wait 10 ticks
  3072. close {_p}'s inventory
  3073. else:
  3074. close {_p}'s inventory
  3075. wait 3 ticks
  3076. open chest with 6 rows named " Confirmation" to {_p}
  3077. wait 5 ticks
  3078. format slot 0 of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
  3079. set {_slot} to 0
  3080. loop 54 times:
  3081. format slot {_slot} of {_p} with redstone block named "&cYour account has insufficent funds." to be unstealable
  3082. add 1 to {_slot}
  3083. wait 10 ticks
  3084. close {_p}'s inventory
  3085.  
  3086. function openTreasure(p: player , c: number , l: number) :: number:
  3087. if {_c} is 1:
  3088. if {oldchests.%{_p}%} < 1:
  3089. close {_p}'s inventory
  3090. wait 2 ticks
  3091. open chest with 6 rows named " Confirmation" to {_p}
  3092. wait 1 tick
  3093. format slot 4 of {_p} with prismarine shard named "&b&l1000 Shards" to be unstealable
  3094. format slot 22 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e0 ||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot." to be unstealable
  3095. format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3096. format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3097. format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3098. format slot 33 of {_p} with redstone block named "&cNO" to close
  3099. format slot 34 of {_p} with redstone block named "&cNO" to close
  3100. format slot 35 of {_p} with redstone block named "&cNO" to close
  3101. format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3102. format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3103. format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3104. format slot 42 of {_p} with redstone block named "&cNO" to close
  3105. format slot 43 of {_p} with redstone block named "&cNO" to close
  3106. format slot 44 of {_p} with redstone block named "&cNO" to close
  3107. format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3108. format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3109. format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 1)]
  3110. format slot 51 of {_p} with redstone block named "&cNO" to close
  3111. format slot 52 of {_p} with redstone block named "&cNO" to close
  3112. format slot 53 of {_p} with redstone block named "&cNO" to close
  3113. if {oldchests.%{_p}%} >= 1:
  3114. remove 1 from {oldchests.%{_p}%}
  3115. set {mineplex.chestbusy.%{_l}%.} to {_p}
  3116. send {_p} title "&eOld Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
  3117. set {mineplex.inchest.%{_p}%} to {_l}
  3118. set block at {mineplex.chestpoint.%{_l}%} to air
  3119. teleport {_p} to {mineplex.chestpoint.%{_l}%}
  3120. send "&9Treasure> &7Choose 4 chests to open" to {_p}
  3121. wait 1.2 seconds
  3122. set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
  3123. set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
  3124. set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
  3125. set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
  3126. set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
  3127. set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
  3128. set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
  3129. set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
  3130. set {_get} to getPlayerdata({_p}, "stats.global.chests")
  3131. set {_cur} to {_get} parsed as a number
  3132. add 1 to {_cur}
  3133. setPlayerdata({_p}, "stats.global.chests", "%{_cur}%")
  3134. if {_c} is 2:
  3135. if {ancientchests.%{_p}%} < 1:
  3136. close {_p}'s inventory
  3137. wait 2 ticks
  3138. open chest with 6 rows named " Confirmation" to {_p}
  3139. wait 1 tick
  3140. format slot 4 of {_p} with prismarine shard named "&b&l5000 Shards" to be unstealable
  3141. format slot 22 of {_p} with chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e0 ||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds." to be unstealable
  3142. format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3143. format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3144. format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3145. format slot 33 of {_p} with redstone block named "&cNO" to close
  3146. format slot 34 of {_p} with redstone block named "&cNO" to close
  3147. format slot 35 of {_p} with redstone block named "&cNO" to close
  3148. format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3149. format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3150. format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3151. format slot 42 of {_p} with redstone block named "&cNO" to close
  3152. format slot 43 of {_p} with redstone block named "&cNO" to close
  3153. format slot 44 of {_p} with redstone block named "&cNO" to close
  3154. format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3155. format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3156. format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 2)]
  3157. format slot 51 of {_p} with redstone block named "&cNO" to close
  3158. format slot 52 of {_p} with redstone block named "&cNO" to close
  3159. format slot 53 of {_p} with redstone block named "&cNO" to close
  3160. if {ancientchests.%{_p}%} >= 1:
  3161. remove 1 from {ancientchests.%{_p}%}
  3162. set {mineplex.chestbusy.%{_l}%.} to {_p}
  3163. send {_p} title "&6Ancient Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
  3164. set {mineplex.inchest.%{_p}%} to {_l}
  3165. set block at {mineplex.chestpoint.%{_l}%} to air
  3166. teleport {_p} to {mineplex.chestpoint.%{_l}%}
  3167. send "&9Treasure> &7Choose 4 chests to open" to {_p}
  3168. wait 2.5 seconds
  3169. set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
  3170. set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
  3171. set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
  3172. set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
  3173. set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
  3174. set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
  3175. set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
  3176. set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
  3177. if {_c} is 3:
  3178. if {mythicalchests.%{_p}%} < 1:
  3179. close {_p}'s inventory
  3180. wait 2 ticks
  3181. open chest with 6 rows named " Confirmation" to {_p}
  3182. wait 1 tick
  3183. format slot 4 of {_p} with prismarine shard named "&b&l10000 Shards" to be unstealable
  3184. format slot 22 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e0 ||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own." to be unstealable
  3185. format slot 27 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3186. format slot 28 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3187. format slot 29 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3188. format slot 33 of {_p} with redstone block named "&cNO" to close
  3189. format slot 34 of {_p} with redstone block named "&cNO" to close
  3190. format slot 35 of {_p} with redstone block named "&cNO" to close
  3191. format slot 36 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3192. format slot 37 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3193. format slot 38 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3194. format slot 42 of {_p} with redstone block named "&cNO" to close
  3195. format slot 43 of {_p} with redstone block named "&cNO" to close
  3196. format slot 44 of {_p} with redstone block named "&cNO" to close
  3197. format slot 45 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3198. format slot 46 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3199. format slot 47 of {_p} with emerald block named "&aOK" to close then run [buyChest({_p}, 3)]
  3200. format slot 51 of {_p} with redstone block named "&cNO" to close
  3201. format slot 52 of {_p} with redstone block named "&cNO" to close
  3202. format slot 53 of {_p} with redstone block named "&cNO" to close
  3203. if {mythicalchests.%{_p}%} >= 1:
  3204. remove 1 from {mythicalchests.%{_p}%}
  3205. set {mineplex.chestbusy.%{_l}%.} to {_p}
  3206. send {_p} title "&cMythical Treasure" with subtitle "&fChoose 4 Chests To Open" for 8 seconds
  3207. set {mineplex.inchest.%{_p}%} to {_l}
  3208. set block at {mineplex.chestpoint.%{_l}%} to air
  3209. teleport {_p} to {mineplex.chestpoint.%{_l}%}
  3210. send "&9Treasure> &7Choose 4 chests to open" to {_p}
  3211. wait 2.5 seconds
  3212. set block at {mineplex.chestpoint.%{_l}%.sub.1} to chest
  3213. set block at {mineplex.chestpoint.%{_l}%.sub.2} to chest
  3214. set block at {mineplex.chestpoint.%{_l}%.sub.3} to chest
  3215. set block at {mineplex.chestpoint.%{_l}%.sub.4} to chest
  3216. set block at {mineplex.chestpoint.%{_l}%.sub.5} to chest
  3217. set block at {mineplex.chestpoint.%{_l}%.sub.6} to chest
  3218. set block at {mineplex.chestpoint.%{_l}%.sub.7} to chest
  3219. set block at {mineplex.chestpoint.%{_l}%.sub.8} to chest
  3220.  
  3221. on inventory click:
  3222. if inventory name of player's current inventory is " Confirmation":
  3223. cancel event
  3224. close player's inventory
  3225.  
  3226. function TreasurePage(p: player , n: number , c: number) :: player:
  3227. if {_N} is 2:
  3228. if {_C} is 1:
  3229. close {_p}'s inventory
  3230. wait 4 ticks
  3231. open chest with 6 rows named "Open Treasure - Page 2" to {_p}
  3232. wait 2 ticks
  3233. format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3234. format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3235. format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3236. format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3237. format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3238. format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3239. format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close
  3240. format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3241. format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3242. format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 1)]
  3243. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3244. else if {_C} is 2:
  3245. close {_p}'s inventory
  3246. wait 4 ticks
  3247. open chest with 6 rows named "Open Treasure - Page 2" to {_p}
  3248. wait 2 ticks
  3249. format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3250. format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3251. format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3252. format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close
  3253. format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3254. format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3255. format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3256. format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3257. format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3258. format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 2)]
  3259. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3260. else if {_C} is 3:
  3261. close {_p}'s inventory
  3262. wait 4 ticks
  3263. open chest with 6 rows named "Open Treasure - Page 2" to {_p}
  3264. wait 2 ticks
  3265. format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3266. format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3267. format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3268. format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close
  3269. format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close
  3270. format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3271. format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3272. format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3273. format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3274. format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 3)]
  3275. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3276. else if {_C} is 4:
  3277. close {_p}'s inventory
  3278. wait 4 ticks
  3279. open chest with 6 rows named "Open Treasure - Page 2" to {_p}
  3280. wait 2 ticks
  3281. format slot 10 of {_p} with rose bush named "&a&lSpring Treasure" with lore " ||&fSpring Chests Owned: &e0 ||||&7Spring is here! Find 6 limited ||&7edition Spring Cosmetics in the ||&7Spring Chest! Only available for ||&7a limited time. Garunteed no ||&7Duplicate items! ||||&cThis item is no longer available" to close
  3282. format slot 12 of {_p} with skull of ("luigi" parsed as an offline player) named "&a&lSt. Patrick's treasure" with lore "||&fSt Patrick's Chests Owned: &e0 ||||&7Happy St. Patrick's Day! Get||&7your Pot's of Gold and Luck||&7of the Irish in this chest! ||&7items, no duplicates||||&cThis item is no longer available" to close
  3283. format slot 14 of {_p} with pink wool named "&c&lLove Chest" with lore " ||&fLove Chests Owned: &e0 ||||&7Cupid and his hunters have||&7searched far and wide to||&7collect a whole bunch of lovey||&7dovey items. 6 items, no||&7duplicates.||||&cThis item is no longer available" to close
  3284. format slot 16 of {_p} with skull of ("CruXXx" parsed as an offline player) named "&2&lWinter Holiday Treasure" with lore "||&fWinter Holiday Chests Owned: &e0 ||||&7Legend tells of the Winter Lord's ||&7vast treasuer horde, locked away in ||&7a vault of ice, deep beneath the ||&7Frozen Sea. It is said it can only be ||&7accessed in the deepest parts of Winter... ||||&cThis item is no longer available" to close
  3285. format slot 22 of {_p} with skull of ("WheezyGold7931" parsed as an offline player) named "&c&lFreedom &9&lTreasure" with lore "||&fFreedom Chests Owned: &e0 ||||&7It is said that George Washington ||&7carved this chest himself from the wood ||&7of the apple tree he cut down... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3286. format slot 28 of {_p} with skull of ("unyelped" parsed as an offline player) named "&6&lHaunted Treasure" with lore "||&fHaunted Chests Owned: &e0 ||||&7The haunted chest can only be found ||&7during the month of October when the ||&7veil between this world and the shadow is thin... ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3287. format slot 30 of {_p} with skull of ("Torksi" parsed as an offline player) named "&6&lTrick or Treat Treasure" with lore "||&fTrick or Treat Chests Owned: &e0 ||||&7The Trick or Treat Chest contains all ||&7sorts of surprises. From Rank Upgrades to ||&7long lost Halloween items. and even other chests! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3288. format slot 32 of {_p} with cooked chicken named "&6&lThankful Treasure" with lore "||&fThankful Chests Owned: &e0 ||||&7The Thankful Chest is our way of ||&7showing thanks to you. Containing items from Rank Upgrades to ||&7Power Play Club Subscriptions. Among other things! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3289. format slot 34 of {_p} with skull of ("Ottelino" parsed as an offline player) named "&c&lGingerbread &a&lTreasure" with lore "||&fGingerbread Chests Owned: &e0 ||||&7The legendary burglar, the ||&7Gingerbread Man, has finally ||&7been caught! Now, for the first ||&7time his loot is available for ||&7auction. There are 8 pieces ||&7available to collect and no ||&7duplicates can be obtained from ||&7this chest! ||||&cThis item is no longer available" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3290. format slot 45 of {_p} with arrow named "&7<- Last Page" to close then run [TreasurePage({_p}, 1, 4)]
  3291. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3292. if {_N} is 1:
  3293. if {_C} is 1:
  3294. wait 2 ticks
  3295. open chest with 6 rows named "Open Treasure - Page 1" to {_p}
  3296. wait 2 ticks
  3297. format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 1)]
  3298. format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 1)]
  3299. format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 1)]
  3300. format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3301. format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3302. format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3303. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3304. format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 1)]
  3305. if {_C} is 2:
  3306. wait 2 ticks
  3307. open chest with 6 rows named "Open Treasure - Page 1" to {_p}
  3308. wait 2 ticks
  3309. format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 2)]
  3310. format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 2)]
  3311. format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 2)]
  3312. format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3313. format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3314. format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3315. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3316. format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 2)]
  3317. if {_C} is 3:
  3318. wait 2 ticks
  3319. open chest with 6 rows named "Open Treasure - Page 1" to {_p}
  3320. wait 2 ticks
  3321. format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 3)]
  3322. format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 3)]
  3323. format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 3)]
  3324. format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3325. format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3326. format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3327. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3328. format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 3)]
  3329. if {_C} is 4:
  3330. wait 2 ticks
  3331. open chest with 6 rows named "Open Treasure - Page 1" to {_p}
  3332. wait 2 ticks
  3333. format slot 19 of {_p} with chest named "&a&lOld Chest" with lore " ||&fOld Chests Owned: &e%{oldchests.%{_p}%}% ||||&7We've scoured the lands of Minecraft||&7and found these abandoned chests.||&7The contents are unknown, but||&7according to the inscriptions on the||&7straps they appear to contain||&7many kinds of loot.|| ||&fClick to Purchase for &b1000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 1, 4)]
  3334. format slot 21 of {_p} with trapped chest named "&6&lAncient Chest" with lore " ||&fAncient Chests Owned: &e%{ancientchests.%{_p}%}% ||||&7Some of our bravest adventurers||&7have discovered these chests within||&7temples hidden in Minecrafts worlds.|| ||&fClick to Purchase for &b5000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 2, 4)]
  3335. format slot 23 of {_p} with ender chest named "&c&lMythical Chest" with lore " ||&fMythical Chests Owned: &e%{mythicalchests.%{_p}%}% ||||&7All our previous adventurers have||&7perished in search of these chests.||&7However, legends of thier existence||&7convinced Sterling, Chiss, and Defek7||&7to venture out and discover the||&7location of these chests on thier own.|| ||&fClick to Purchase for &b10000 Treasure Shards|| ||&for Purchase at: &e%{mineplex.config.website}%" to close then run [openTreasure({_p}, 3, 4)]
  3336. format slot 25 of {_p} with sea lantern named "&3&lIlluminated Treasure" with lore "||&fIlluminated Chests Owned: &e0 ||||&7The illuminated chest shines brightly ||&7in the depths, always bringing a new ||&7treasure from the darkness. ||&fClick to craft for &b20000 Treasure Shards || ||&for Purchase at: &e%{mineplex.config.website}%." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3337. format slot 38 of {_p} with skull of ("Chest" parsed as an offline player) named "&b&lOmega Treasure" with lore "||&fOmega Chests Owned: &e0 ||||&7The most powerful of all chests, ||&7it is able to go back in time to find ||&7loot that has been lost..." to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3338. format slot 42 of {_p} with tnt named "&6&lMinestrike Treasure" with lore "||&fMinestrike Chests Owned: &e0 ||||&7The Minestrike Chest is the ||&7only place to get the unique ||&7skins for Minestrike weapons! ||||&fEach use opens two chests. Can ||&fGive duplicates. ||||&fClick to craft for &b10000 Treasure Shards ||||&for Purchase at: &e%{mineplex.config.website}%" to close then run [send "&9Treasure> &7This Treasure Bundle isn't added in this version of MCR." to {_p}]
  3339. format slot 49 of {_p} with prismarine shard named "&b&l%{mineplex.shards.%{_p}%}% Treasure Shards" with lore "||&7This seems like it might come in ||&7handy. Maybe I can collect more!" to close
  3340. format slot 53 of {_p} with arrow named "&7Next page ->" to close then run [TreasurePage({_p}, 2, 4)]
  3341.  
  3342. command /givetreasure [<string>] [<number>] [<offline player>]:
  3343. permission: mineplex.admin
  3344. permission message: &9Permissions> &7You do not have permission to do that.
  3345. trigger:
  3346. if arg-1 is set:
  3347. if arg-2 is set:
  3348. if arg-2 is an integer:
  3349. if arg-3 is set:
  3350. if arg-1 is "Mythical":
  3351. add arg-2 to {mythicalchests.%arg-3%}
  3352. message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Mythical Treasure Chests." to sender
  3353. message "&9Treasure> &7You recieved &e%arg-2% &7Mythical Treasure Chests." to arg-3
  3354. stop
  3355. else if arg-1 is "Ancient":
  3356. add arg-2 to {ancientchests.%arg-3%}
  3357. message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Ancient Treasure Chests." to sender
  3358. message "&9Treasure> &7You recieved &e%arg-2% &7Ancient Treasure Chests." to arg-3
  3359. stop
  3360. else if arg-1 is "old":
  3361. add arg-2 to {oldchests.%arg-3%}
  3362. message "&9Treasure> &7You gave &e%arg-3% %arg-2% &7Old Treasure Chests." to sender
  3363. message "&9Treasure> &7You recieved &e%arg-2% &7Old Treasure Chests." to arg-3
  3364. stop
  3365. else:
  3366. send "&9Treasure> &7Unknown Treasure [&e%arg-1%&7]." to sender
  3367. stop
  3368. else:
  3369. send "&9Treasure> &7Please specify a player" to sender
  3370. stop
  3371. else if arg-2 is not an integer:
  3372. send "&9Treasure> &7Unknown Integer [&e%arg-2%&7]." to sender
  3373. stop
  3374. else:
  3375. send "&9Treasure> &7Please specify an amount." to sender
  3376. stop
  3377. else:
  3378. send "&9Treasure> &7Listing Commands:" to sender
  3379. send "&4/GiveTreasure <treasure> <amount> <name> &7Gives a player some treasure chests &4Admin" to sender
  3380. stop
  3381.  
  3382. every 5 ticks:
  3383. loop all players:
  3384. if {mineplex.inchest.%loop-player%} is set:
  3385. set {_di} to distance between {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%} and loop-player
  3386. if {_di} is greater than 3.11:
  3387. teleport loop-player to {mineplex.chestpoint.%{mineplex.inchest.%loop-player%}%}
  3388.  
  3389. every 5 ticks:
  3390. loop all players:
  3391. if {mineplex.inchest.%loop-player%} is set:
  3392. loop players in radius 4 of loop-player:
  3393. if loop-player-2 is not loop-player-1:
  3394. if {mineplex.pref.ff.%loop-player-2%} is false:
  3395. push the loop-player-2 upwards at speed 0.925
  3396. push the loop-player-2 backwards at speed 0.825
  3397. play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
  3398.  
  3399. on right click on chest:
  3400. if player is holding chest:
  3401. if name of player's tool is "&aCosmetic Menu":
  3402. stop
  3403. else:
  3404. send "&9MCR> &e##BlameWheezy"
  3405. else:
  3406. if event-block is {mineplex.chestpoint.1}:
  3407. cancel event
  3408. TreasurePage(player, 1, 1)
  3409. if event-block is {mineplex.chestpoint.2}:
  3410. cancel event
  3411. TreasurePage(player, 1, 2)
  3412. if event-block is {mineplex.chestpoint.3}:
  3413. cancel event
  3414. TreasurePage(player, 1, 3)
  3415. if event-block is {mineplex.chestpoint.4}:
  3416. cancel event
  3417. TreasurePage(player, 1, 4)
  3418.  
  3419. on right click on chest or ender chest:
  3420. if player is holding chest:
  3421. if name of player's tool is "&aCosmetic Menu":
  3422. stop
  3423. else:
  3424. send "&9MCR> &e##BlameWheezy"
  3425. else:
  3426. if event-block is {mineplex.chestpoint.1.sub.1} or {mineplex.chestpoint.1.sub.2} or {mineplex.chestpoint.1.sub.3} or {mineplex.chestpoint.1.sub.4} or {mineplex.chestpoint.1.sub.5} or {mineplex.chestpoint.1.sub.6} or {mineplex.chestpoint.1.sub.7} or {mineplex.chestpoint.1.sub.8}:
  3427. if {mineplex.inchest.%player%} is set:
  3428. if {mineplex.chestsopened.%player%} is not set:
  3429. set {mineplex.chestsopened.%player%} to 1
  3430. cancel event
  3431. make the event-block appear open
  3432. rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
  3433. loop all players:
  3434. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3435. stop
  3436. else if {mineplex.chestsopened.%player%} is 3:
  3437. cancel event
  3438. add 1 to {mineplex.chestsopened.%player%}
  3439. make the event-block appear open
  3440. rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
  3441. loop all players:
  3442. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3443. wait 3 seconds
  3444. resetPoints(player, 1)
  3445. execute player command "/hub"
  3446. stop
  3447. else if {mineplex.chestsopened.%player%} is 1 or 2:
  3448. cancel event
  3449. add 1 to {mineplex.chestsopened.%player%}
  3450. make the event-block appear open
  3451. rewardTreasure(player, {mineplex.inchest.%player%}, 1, 1)
  3452. loop all players:
  3453. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3454. stop
  3455. else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
  3456. cancel event
  3457. else:
  3458. cancel event
  3459. else if event-block is {mineplex.chestpoint.2.sub.1} or {mineplex.chestpoint.2.sub.2} or {mineplex.chestpoint.2.sub.3} or {mineplex.chestpoint.2.sub.4} or {mineplex.chestpoint.2.sub.5} or {mineplex.chestpoint.2.sub.6} or {mineplex.chestpoint.2.sub.7} or {mineplex.chestpoint.2.sub.8}:
  3460. if {mineplex.inchest.%player%} is set:
  3461. if {mineplex.chestsopened.%player%} is not set:
  3462. set {mineplex.chestsopened.%player%} to 1
  3463. cancel event
  3464. make the event-block appear open
  3465. rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
  3466. loop all players:
  3467. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3468. stop
  3469. else if {mineplex.chestsopened.%player%} is 3:
  3470. cancel event
  3471. add 1 to {mineplex.chestsopened.%player%}
  3472. make the event-block appear open
  3473. rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
  3474. loop all players:
  3475. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3476. wait 3 seconds
  3477. resetPoints(player, 2)
  3478. execute player command "/hub"
  3479. stop
  3480. else if {mineplex.chestsopened.%player%} is 1 or 2:
  3481. cancel event
  3482. add 1 to {mineplex.chestsopened.%player%}
  3483. make the event-block appear open
  3484. rewardTreasure(player, {mineplex.inchest.%player%}, 2, 1)
  3485. loop all players:
  3486. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3487. stop
  3488. else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
  3489. cancel event
  3490. else:
  3491. cancel event
  3492. else if event-block is {mineplex.chestpoint.3.sub.1} or {mineplex.chestpoint.3.sub.2} or {mineplex.chestpoint.3.sub.3} or {mineplex.chestpoint.3.sub.4} or {mineplex.chestpoint.3.sub.5} or {mineplex.chestpoint.3.sub.6} or {mineplex.chestpoint.3.sub.7} or {mineplex.chestpoint.3.sub.8}:
  3493. if {mineplex.inchest.%player%} is set:
  3494. if {mineplex.chestsopened.%player%} is not set:
  3495. set {mineplex.chestsopened.%player%} to 1
  3496. cancel event
  3497. make the event-block appear open
  3498. rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
  3499. loop all players:
  3500. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3501. stop
  3502. else if {mineplex.chestsopened.%player%} is 3:
  3503. cancel event
  3504. add 1 to {mineplex.chestsopened.%player%}
  3505. make the event-block appear open
  3506. rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
  3507. loop all players:
  3508. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3509. wait 3 seconds
  3510. resetPoints(player, 3)
  3511. execute player command "/hub"
  3512. stop
  3513. else if {mineplex.chestsopened.%player%} is 1 or 2:
  3514. cancel event
  3515. add 1 to {mineplex.chestsopened.%player%}
  3516. make the event-block appear open
  3517. rewardTreasure(player, {mineplex.inchest.%player%}, 3, 1)
  3518. loop all players:
  3519. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3520. stop
  3521. else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
  3522. cancel event
  3523. else:
  3524. cancel event
  3525. else if event-block is {mineplex.chestpoint.4.sub.1} or {mineplex.chestpoint.4.sub.2} or {mineplex.chestpoint.4.sub.3} or {mineplex.chestpoint.4.sub.4} or {mineplex.chestpoint.4.sub.5} or {mineplex.chestpoint.4.sub.6} or {mineplex.chestpoint.4.sub.7} or {mineplex.chestpoint.4.sub.8}:
  3526. if {mineplex.inchest.%player%} is set:
  3527. if {mineplex.chestsopened.%player%} is not set:
  3528. set {mineplex.chestsopened.%player%} to 1
  3529. cancel event
  3530. make the event-block appear open
  3531. rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
  3532. loop all players:
  3533. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3534. stop
  3535. else if {mineplex.chestsopened.%player%} is 3:
  3536. cancel event
  3537. add 1 to {mineplex.chestsopened.%player%}
  3538. make the event-block appear open
  3539. rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
  3540. loop all players:
  3541. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3542. wait 3 seconds
  3543. resetPoints(player, 4)
  3544. execute player command "/hub"
  3545. stop
  3546. else if {mineplex.chestsopened.%player%} is 1 or 2:
  3547. cancel event
  3548. add 1 to {mineplex.chestsopened.%player%}
  3549. make the event-block appear open
  3550. rewardTreasure(player, {mineplex.inchest.%player%}, 4, 1)
  3551. loop all players:
  3552. show 200 "flame" particles at location 0.1 metres above event-block for loop-player
  3553. stop
  3554. else if {mineplex.chestsopened.%player%} is not 1 or 2 or 3:
  3555. cancel event
  3556. else:
  3557. cancel event
  3558.  
  3559. on quit:
  3560. set {_p} to player
  3561. if {mineplex.inchest.%{_p}%} is set:
  3562. resetPoints({_p}, {mineplex.inchest.%{_p}%})
  3563. delete {mineplex.inchest.%{_p}%}
  3564. #Scoreboard
  3565.  
  3566. every 2 seconds:
  3567. if {mineplex.usescoreboard} is false:
  3568. stop
  3569. else:
  3570. loop all players:
  3571. wipe loop-player's sidebar
  3572. set {_fc} to convert string {mineplex.config.servername} to uppercase
  3573. set name of sidebar of loop-player to "&6&l%{_fc}%"
  3574. set score "&b&lServer" in sidebar of loop-player to 15
  3575. set score "&f%{mineplex.config.world}%" in sidebar of loop-player to 14
  3576. set score "&1 " in sidebar of loop-player to 13
  3577. set score "&a&lGems" in sidebar of loop-player to 12
  3578. set score "&r%{mineplex.gems.%loop-player%}%" in sidebar of loop-player to 11
  3579. set score "&2 " in sidebar of loop-player to 10
  3580. set score "&e&lShards" in sidebar of loop-player to 9
  3581. set score "&f%{mineplex.shards.%loop-player%}%" in sidebar of loop-player to 8
  3582. set score "&3 " in sidebar of loop-player to 7
  3583. set score "&6&lRank" in sidebar of loop-player to 6
  3584. set score "&f%{mineplex.api.displayrank.%loop-player%}%" in sidebar of loop-player to 5
  3585. set score "&4 " in sidebar of loop-player to 4
  3586. set score "&c&lWebsite" in sidebar of loop-player to 3
  3587. set score "&f%{mineplex.config.website}%" in sidebar of loop-player to 2
  3588. set score "&f----------------" in sidebar of loop-player to 1
  3589.  
  3590. #Rank Loader
  3591.  
  3592. function rankLoad(p: player , n: number , t: number) :: string:
  3593. if {_n} is 1:
  3594. if {mineplex.testrank.%{_p}%} is set:
  3595. if {_t} is 0:
  3596. set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%}
  3597. delete {mineplex.testrank.%{_p}%}
  3598. if {mineplex.rank.%{_p}%} is not set:
  3599. set {mineplex.rank.%{_p}%} to ""
  3600. if {mineplex.rank.%{_p}%} is "":
  3601. execute console command "/rank set %{_p}% ALL"
  3602. set {_p} tab name to "&e%{_p}%"
  3603. set {mineplex.displaya.%{_p}%} to "&fPlayer"
  3604. set {mineplex.colora.%{_p}%} to "§f"
  3605. return "&fPlayer"
  3606. if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
  3607. execute console command "/rank set %{_p}% ULTRA"
  3608. set {_p} tab name to "&b&lULTRA &e%{_p}%"
  3609. set {mineplex.displaya.%{_p}%} to "&bUltra"
  3610. set {mineplex.colora.%{_p}%} to "§b"
  3611. set {mineplex.hover.%{_p}%} to "&b&lULTRA%nl%&fA first step into the stories of the mist.%nl%&fOnly those brave enough may enter.%nl% %nl%&fThe first purchasable rank at %{mineplex.config.shoplink}%"
  3612. return "&bUltra"
  3613. if {mineplex.rank.%{_p}%} is "&d&lHERO ":
  3614. execute console command "/rank set %{_p}% HERO"
  3615. set {_p} tab name to "&d&lHERO &e%{_p}%"
  3616. set {mineplex.displaya.%{_p}%} to "&dHero"
  3617. set {mineplex.colora.%{_p}%} to "§d"
  3618. set {mineplex.hover.%{_p}%} to "&d&lHERO%nl%&fThere are many stories of a%nl%&fvaliant Hero who was brave enough to%nl%&ftame the most fearsome dragon in the land.%nl% %nl%&fThe second purchasable rank at %{mineplex.config.shoplink}%"
  3619. return "&dHero"
  3620. if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
  3621. execute console command "/rank set %{_p}% LEGEND"
  3622. set {_p} tab name to "&a&lLEGEND &e%{_p}%"
  3623. set {mineplex.displaya.%{_p}%} to "&aLegend"
  3624. set {mineplex.colora.%{_p}%} to "§a"
  3625. set {mineplex.hover.%{_p}%} to "&a&lLEGEND%nl%&fYears they have told stories of this rank,%nl%&fonly for the legends to be true.%nl% %nl%&fThe third purchasable rank at %{mineplex.config.shoplink}%"
  3626. return "&aLegend"
  3627. if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
  3628. execute console command "/rank set %{_p}% TITAN"
  3629. set {_p} tab name to "&c&lTITAN &e%{_p}%"
  3630. set {mineplex.displaya.%{_p}%} to "&cTitan"
  3631. set {mineplex.colora.%{_p}%} to "§c"
  3632. set {mineplex.hover.%{_p}%} to "&c&lTITAN%nl%&fAncient myths spoke of a gigantic being%nl%&fwith immence power...%nl% %nl%&fThe fourth purchasable rank at %{mineplex.config.shoplink}%"
  3633. return "&cTitan"
  3634. if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ":
  3635. execute console command "/rank set %{_p}% TRAINEE"
  3636. loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
  3637. if loop-value is {_p}:
  3638. set {_p} tab name to "&6&lP.TRAINEE &e%{_p}%"
  3639. else:
  3640. set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
  3641. set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
  3642. set {mineplex.displaya.%{_p}%} to "&6Trainee"
  3643. set {mineplex.colora.%{_p}%} to "§6"
  3644. set {mineplex.hover.%{_p}%} to "&6&lTRAINEE%nl%&fTrainee are moderators-in-training.%nl%&ftheir duties include enforcing the rules and%nl%&fproviding help to anyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3645. return "&6Trainee"
  3646. if {mineplex.rank.%{_p}%} is "&6&lMOD ":
  3647. execute console command "/rank set %{_p}% MODERATOR"
  3648. loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
  3649. if loop-value is {_p}:
  3650. set {_p} tab name to "&6&lP.MOD &e%{_p}%"
  3651. else:
  3652. set {_p} tab name to "&6&lMOD &e%{_p}%"
  3653. set {mineplex.displaya.%{_p}%} to "&6Mod"
  3654. set {mineplex.colora.%{_p}%} to "§6"
  3655. set {mineplex.hover.%{_p}%} to "&6&lMOD%nl%&fModerators enforce rules and provide help to%nl%&fanyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3656. return "&6Mod"
  3657. if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ":
  3658. execute console command "/rank set %{_p}% SNR_MODERATOR"
  3659. loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
  3660. if loop-value is {_p}:
  3661. set {_p} tab name to "&6&lP.SR.MOD &e%{_p}%"
  3662. else:
  3663. set {_p} tab name to "&6&lSR.MOD &e%{_p}%"
  3664. set {mineplex.displaya.%{_p}%} to "&6Sr.Mod"
  3665. set {mineplex.colora.%{_p}%} to "§6"
  3666. set {mineplex.hover.%{_p}%} to "&6&lSR.MOD%nl%&fSenior Moderators are members of a special%nl%&fSenior Moderators team where they have to fulfull specific tasks.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3667. return "&6Sr.Mod"
  3668. if {mineplex.rank.%{_p}%} is "&6&lC.MOD ":
  3669. execute console command "/rank set %{_p}% CLANS_MOD"
  3670. set {_p} tab name to "&6&lC.MOD &e%{_p}%"
  3671. set {mineplex.displaya.%{_p}%} to "&6C.Mod"
  3672. set {mineplex.colora.%{_p}%} to "§6"
  3673. set {mineplex.hover.%{_p}%} to "&6&lC.MOD%nl%&fClans Moderators are members of a special%nl%&fSenior Moderators team where they focus on helping the clans servers.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3674. return "&6C.Mod"
  3675. if {mineplex.rank.%{_p}%} is "&4&lADMIN ":
  3676. execute console command "/rank set %{_p}% ADMIN"
  3677. loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
  3678. if loop-value is {_p}:
  3679. set {_p} tab name to "&6&lP.ADMIN &e%{_p}%"
  3680. else:
  3681. set {_p} tab name to "&4&lADMIN &e%{_p}%"
  3682. set {mineplex.displaya.%{_p}%} to "&4Admin"
  3683. set {mineplex.colora.%{_p}%} to "§4"
  3684. set {mineplex.hover.%{_p}%} to "&4&lADMIN%nl%&fAn Administrator's role is to manage%nl%&ftheir respective Senoir Moderator team%nl%&fand all moderators within it."
  3685. return "&4Admin"
  3686. if {mineplex.rank.%{_p}%} is "&9&lAPEX ":
  3687. execute console command "/rank set %{_p}% APEX"
  3688. set {_p} tab name to "&9&lAPEX &e%{_p}%"
  3689. set {mineplex.displaya.%{_p}%} to "&9Apex"
  3690. set {mineplex.colora.%{_p}%} to "§4"
  3691. set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!"
  3692. return "&9Apex"
  3693. if {mineplex.rank.%{_p}%} is "&4&lLEADER ":
  3694. execute console command "/rank set %{_p}% LEADER"
  3695. loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
  3696. if loop-value is {_p}:
  3697. set {_p} tab name to "&6&lP.LEADER &e%{_p}%"
  3698. else:
  3699. set {_p} tab name to "&4&lLEADER &e%{_p}%"
  3700. set {mineplex.displaya.%{_p}%} to "&4Leader"
  3701. set {mineplex.colora.%{_p}%} to "§4"
  3702. set {mineplex.hover.%{_p}%} to "&4&lLEADER%nl%&fLeaders manage the operation of their respective team%nl%&for projects. They usually operate on affairs within%nl%&fthe staff, development, or management team."
  3703. return "&4Leader"
  3704. if {mineplex.rank.%{_p}%} is "&4&lOWNER ":
  3705. execute console command "/rank set %{_p}% OWNER"
  3706. loop {mineplex.patreon::*}: #Do not worry about this. It only has to do with my test server, not you guys <3
  3707. if loop-value is {_p}:
  3708. set {_p} tab name to "&6&lP.OWNER &e%{_p}%"
  3709. else:
  3710. set {_p} tab name to "&4&lOWNER &e%{_p}%"
  3711. set {mineplex.displaya.%{_p}%} to "&4Owner"
  3712. set {mineplex.colora.%{_p}%} to "§4"
  3713. set {mineplex.hover.%{_p}%} to "&4&lOWNER%nl%&fOwners are the founders of Mineplex.%nl%&fEach owner manages a different aspect of the%nl%server and ensures its efficient operation."
  3714. return "&4Owner"
  3715. if {mineplex.rank.%{_p}%} is "&9&lBUILDER ":
  3716. execute console command "/rank set %{_p}% BUILDER"
  3717. set {_p} tab name to "&9&lBUIDLER &e%{_p}%"
  3718. set {mineplex.displaya.%{_p}%} to "&9Mapper"
  3719. set {mineplex.colora.%{_p}%} to "§9"
  3720. set {mineplex.hover.%{_p}%} to "&9&lBUILDER%nl%&fBuilders are members of the Mineplex Build Team.%nl%&fThey create many of the maps used across Mineplex."
  3721. return "&9Builder"
  3722. if {mineplex.rank.%{_p}%} is "&9&lMAPPER ":
  3723. execute console command "/rank set %{_p}% MAPPER"
  3724. set {_p} tab name to "&9&lMAPPER &e%{_p}%"
  3725. set {mineplex.displaya.%{_p}%} to "&9Mapper"
  3726. set {mineplex.colora.%{_p}%} to "§9"
  3727. set {mineplex.hover.%{_p}%} to "&9&lMAPPER%nl%&fThese senior members work closely with the development and design teams to build new maps for new and old content!"
  3728. return "&9Mapper"
  3729. if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ":
  3730. execute console command "/rank set %{_p}% MAPLEAD"
  3731. set {_p} tab name to "&9&lMAPLEAD &e%{_p}%"
  3732. set {mineplex.displaya.%{_p}%} to "&9MapLead"
  3733. set {mineplex.colora.%{_p}%} to "§9"
  3734. set {mineplex.hover.%{_p}%} to "&9&lMAPLEAD%nl%&fMap Leaders are leaders of the Mineplex Build Team.%nl%&fThey oversee the creation of new maps and manage Builders."
  3735. return "&9MapLead"
  3736. if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ":
  3737. execute console command "/rank set %{_p}% JNR_DEV"
  3738. set {mineplex.displaya.%{_p}%} to "&6Jr.Dev"
  3739. set {mineplex.colora.%{_p}%} to "§c"
  3740. set {mineplex.hover.%{_p}%} to "&6&lJR.DEV%nl%&fThese are part time Developers that work behind the%nl%&fscenes to create new games and features,%nl%&fand fix bugs to give the best experience."
  3741. return "&6Jr.Dev"
  3742. if {mineplex.rank.%{_p}%} is "&4&lDEV ":
  3743. execute console command "/rank set %{_p}% DEVELOPER"
  3744. set {_p} tab name to "&4&lDEV &e%{_p}%"
  3745. set {mineplex.displaya.%{_p}%} to "&4Dev"
  3746. set {mineplex.colora.%{_p}%} to "§4"
  3747. set {mineplex.hover.%{_p}%} to "&4&lDEV%nl%&fDevelopers work behind the scenes to%nl%&fcreate new games and features, and fix bugs to%nl%&fgive the best experience."
  3748. return "&4Dev"
  3749. if {mineplex.rank.%{_p}%} is "&5&lTWITCH ":
  3750. execute console command "/rank set %{_p}% TWITCH"
  3751. set {_p} tab name to "&5&lTWITCH &e%{_p}%"
  3752. set {mineplex.displaya.%{_p}%} to "&5Twitch"
  3753. set {mineplex.colora.%{_p}%} to "§5"
  3754. set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams."
  3755. return "&5Twitch"
  3756. if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ":
  3757. execute console command "/rank set %{_p}% YOUTUBE"
  3758. set {_p} tab name to "&c&lYOUTUBE &e%{_p}%"
  3759. set {mineplex.displaya.%{_p}%} to "&cYouTube"
  3760. set {mineplex.colora.%{_p}%} to "§c"
  3761. set {mineplex.hover.%{_p}%} to "&c&lYOUTUBE%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex.%nl%&fThey are the official YouTubers of Mineplex."
  3762. return "&cYouTube"
  3763. if {mineplex.rank.%{_p}%} is "&f&lEVENT ":
  3764. execute console command "/rank set %{_p}% EVENT"
  3765. set {_p} tab name to "&f&lEVENT &e%{_p}%"
  3766. set {mineplex.displaya.%{_p}%} to "&fEvent"
  3767. set {mineplex.colora.%{_p}%} to "§f"
  3768. set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???"
  3769. return "&fEvent"
  3770. if {mineplex.rank.%{_p}%} is "&5&lYT ":
  3771. execute console command "/rank set %{_p}% YT"
  3772. set {_p} tab name to "&5&lYT &e%{_p}%"
  3773. set {mineplex.displaya.%{_p}%} to "&5YT"
  3774. set {mineplex.colora.%{_p}%} to "§5"
  3775. set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex."
  3776. return "&5YT"
  3777. if {mineplex.rank.%{_p}%} is "&3&lETERNAL ":
  3778. execute console command "/rank set %{_p}% ETERNAL"
  3779. set {_p} tab name to "&3&lETERNAL &e%{_p}%"
  3780. set {mineplex.displaya.%{_p}%} to "&3Eternal"
  3781. set {mineplex.colora.%{_p}%} to "§3"
  3782. set {mineplex.hover.%{_p}%} to "&3&lETERNAL%nl%&fFantastic and magical, no one%nl%&fexcept the time lords truly understand%nl%&fthe power of this rank.%nl% %nl%&fThe fifth purchasable rank at %{mineplex.config.shoplink}%"
  3783. return "&3Eternal"
  3784. if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ":
  3785. execute console command "/rank set %{_p}% SUPPORT"
  3786. set {mineplex.displaya.%{_p}%} to "&9Support"
  3787. set {mineplex.colora.%{_p}%} to "§9"
  3788. set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service."
  3789. return "&9Support"
  3790. if {mineplex.rank.%{_p}%} is "&9&lARTIST ":
  3791. execute console command "/rank set %{_p}% ARTIST"
  3792. set {mineplex.displaya.%{_p}%} to "&9Artist"
  3793. set {mineplex.colora.%{_p}%} to "§9"
  3794. set {mineplex.hover.%{_p}%} to "&9&lARTIST%nl%&fThe Artist rank is given to talented artists%nl%who are endorsed to create content for Mineplex."
  3795. return "&9Artist"
  3796. else if {_n} is 2:
  3797. if {mineplex.testrank.%{_p}%} is set:
  3798. if {_t} is 0:
  3799. set {mineplex.rank.%{_p}%} to {mineplex.testrank.%{_p}%}
  3800. delete {mineplex.testrank.%{_p}%}
  3801. if {mineplex.rank.%{_p}%} is not set:
  3802. set {mineplex.rank.%{_p}%} to ""
  3803. if {mineplex.rank.%{_p}%} is "":
  3804. set {_p} tab name to "&e%{_p}%"
  3805. set {mineplex.displaya.%{_p}%} to "&fPlayer"
  3806. set {mineplex.colora.%{_p}%} to "§f"
  3807. return "&fPlayer"
  3808. if {mineplex.rank.%{_p}%} is "&b&lULTRA ":
  3809. set {_p} tab name to "&b&lULTRA &e%{_p}%"
  3810. set {mineplex.displaya.%{_p}%} to "&bUltra"
  3811. set {mineplex.colora.%{_p}%} to "§b"
  3812. set {mineplex.hover.%{_p}%} to "&b&lULTRA%nl%&fA first step into the stories of the mist.%nl%&fOnly those brave enough may enter.%nl% %nl%&fThe first purchasable rank at %{mineplex.config.shoplink}%"
  3813. return "&bUltra"
  3814. if {mineplex.rank.%{_p}%} is "&d&lHERO ":
  3815. set {_p} tab name to "&d&lHERO &e%{_p}%"
  3816. set {mineplex.displaya.%{_p}%} to "&dHero"
  3817. set {mineplex.colora.%{_p}%} to "§d"
  3818. set {mineplex.hover.%{_p}%} to "&d&lHERO%nl%&fThere are many stories of a%nl%&fvaliant Hero who was brave enough to%nl%&ftame the most fearsome dragon in the land.%nl% %nl%&fThe second purchasable rank at %{mineplex.config.shoplink}%"
  3819. return "&dHero"
  3820. if {mineplex.rank.%{_p}%} is "&a&lLEGEND ":
  3821. set {_p} tab name to "&a&lLEGEND &e%{_p}%"
  3822. set {mineplex.displaya.%{_p}%} to "&aLegend"
  3823. set {mineplex.colora.%{_p}%} to "§a"
  3824. set {mineplex.hover.%{_p}%} to "&a&lLEGEND%nl%&fYears they have told stories of this rank,%nl%&fonly for the legends to be true.%nl% %nl%&fThe third purchasable rank at %{mineplex.config.shoplink}%"
  3825. return "&aLegend"
  3826. if {mineplex.rank.%{_p}%} is "&c&lTITAN ":
  3827. set {_p} tab name to "&c&lTITAN &e%{_p}%"
  3828. set {mineplex.displaya.%{_p}%} to "&cTitan"
  3829. set {mineplex.colora.%{_p}%} to "§c"
  3830. set {mineplex.hover.%{_p}%} to "&c&lTITAN%nl%&fAncient myths spoke of a gigantic being%nl%&fwith immence power...%nl% %nl%&fThe fourth purchasable rank at %{mineplex.config.shoplink}%"
  3831. return "&cTitan"
  3832. if {mineplex.rank.%{_p}%} is "&6&lTRAINEE ":
  3833. set {_p} tab name to "&6&lTRAINEE &e%{_p}%"
  3834. set {mineplex.displaya.%{_p}%} to "&6Trainee"
  3835. set {mineplex.colora.%{_p}%} to "§6"
  3836. set {mineplex.hover.%{_p}%} to "&6&lTRAINEE%nl%&fTrainee are moderators-in-training.%nl%&ftheir duties include enforcing the rules and%nl%&fproviding help to anyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3837. return "&6Trainee"
  3838. if {mineplex.rank.%{_p}%} is "&6&lMOD ":
  3839. set {_p} tab name to "&6&lMOD &e%{_p}%"
  3840. set {mineplex.displaya.%{_p}%} to "&6Mod"
  3841. set {mineplex.colora.%{_p}%} to "§6"
  3842. set {mineplex.hover.%{_p}%} to "&6&lMOD%nl%&fModerators enforce rules and provide help to%nl%&fanyone with questions or concerns.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3843. return "&6Mod"
  3844. if {mineplex.rank.%{_p}%} is "&6&lSR.MOD ":
  3845. set {_p} tab name to "&6&lSR.MOD &e%{_p}%"
  3846. set {mineplex.displaya.%{_p}%} to "&6Sr.Mod"
  3847. set {mineplex.colora.%{_p}%} to "§6"
  3848. set {mineplex.hover.%{_p}%} to "&6&lSR.MOD%nl%&fSenior Moderators are members of a special%nl%&fSenior Moderators team where they have to fulfull specific tasks.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3849. return "&6Sr.Mod"
  3850. if {mineplex.rank.%{_p}%} is "&6&lC.MOD ":
  3851. set {_p} tab name to "&6&lC.MOD &e%{_p}%"
  3852. set {mineplex.displaya.%{_p}%} to "&6C.Mod"
  3853. set {mineplex.colora.%{_p}%} to "§6"
  3854. set {mineplex.hover.%{_p}%} to "&6&lC.MOD%nl%&fClans Moderators are members of a special%nl%&fSenior Moderators team where they focus on helping the clans servers.%nl%&fJust like Moderators, you can always ask them for help.%nl% %nl%&fFor assistance, contact them using &e/a <message>&f."
  3855. return "&6C.Mod"
  3856. if {mineplex.rank.%{_p}%} is "&4&lADMIN ":
  3857. set {_p} tab name to "&4&lADMIN &e%{_p}%"
  3858. set {mineplex.displaya.%{_p}%} to "&4Admin"
  3859. set {mineplex.colora.%{_p}%} to "§4"
  3860. set {mineplex.hover.%{_p}%} to "&4&lADMIN%nl%&fAn Administrator's role is to manage%nl%&ftheir respective Senoir Moderator team%nl%&fand all moderators within it."
  3861. return "&4Admin"
  3862. if {mineplex.rank.%{_p}%} is "&9&lAPEX ":
  3863. set {_p} tab name to "&9&lAPEX &e%{_p}%"
  3864. set {mineplex.displaya.%{_p}%} to "&9Apex"
  3865. set {mineplex.colora.%{_p}%} to "§4"
  3866. set {mineplex.hover.%{_p}%} to "&9&lAPEX%nl%&fStaff at Apex Hosting. These guys help support the test server!"
  3867. return "&9Apex"
  3868. if {mineplex.rank.%{_p}%} is "&4&lLEADER ":
  3869. set {_p} tab name to "&4&lLEADER &e%{_p}%"
  3870. set {mineplex.displaya.%{_p}%} to "&4Leader"
  3871. set {mineplex.colora.%{_p}%} to "§4"
  3872. set {mineplex.hover.%{_p}%} to "&4&lLEADER%nl%&fLeaders manage the operation of their respective team%nl%&for projects. They usually operate on affairs within%nl%&fthe staff, development, or management team."
  3873. return "&4Leader"
  3874. if {mineplex.rank.%{_p}%} is "&4&lOWNER ":
  3875. set {_p} tab name to "&4&lOWNER &e%{_p}%"
  3876. set {mineplex.displaya.%{_p}%} to "&4Owner"
  3877. set {mineplex.colora.%{_p}%} to "§4"
  3878. set {mineplex.hover.%{_p}%} to "&4&lOWNER%nl%&fOwners are the founders of Mineplex.%nl%&fEach owner manages a different aspect of the%nl%server and ensures its efficient operation."
  3879. return "&4Owner"
  3880. if {mineplex.rank.%{_p}%} is "&9&lBUILDER ":
  3881. set {_p} tab name to "&9&lBUIDLER &e%{_p}%"
  3882. set {mineplex.displaya.%{_p}%} to "&8Builder"
  3883. set {mineplex.colora.%{_p}%} to "§9"
  3884. set {mineplex.hover.%{_p}%} to "&9&lBUILDER%nl%&fThese creative staff members help build maps for your favorite games!"
  3885. return "&9Builder"
  3886. if {mineplex.rank.%{_p}%} is "&9&lMAPLEAD ":
  3887. set {_p} tab name to "&9&lMAPLEAD &e%{_p}%"
  3888. set {mineplex.displaya.%{_p}%} to "&9MapLead"
  3889. set {mineplex.colora.%{_p}%} to "§9"
  3890. set {mineplex.hover.%{_p}%} to "&9&lMAPLEAD%nl%&fMap Leaders are leaders of the Mineplex Build Team.%nl%&fThey oversee the creation of new maps and manage Builders."
  3891. return "&9MapLead"
  3892. if {mineplex.rank.%{_p}%} is "&9&lMAPPER ":
  3893. set {_p} tab name to "&9&lMAPPER &e%{_p}%"
  3894. set {mineplex.displaya.%{_p}%} to "&9Mapper"
  3895. set {mineplex.colora.%{_p}%} to "§9"
  3896. set {mineplex.hover.%{_p}%} to "&9&lMAPPER%nl%&fThese senior members work closely with the development and design teams to build new maps for new and old content!"
  3897. return "&9Mapper"
  3898. if {mineplex.rank.%{_p}%} is "&6&lJR.DEV ":
  3899. set {mineplex.displaya.%{_p}%} to "&6Jr.Dev"
  3900. set {mineplex.colora.%{_p}%} to "§c"
  3901. set {mineplex.hover.%{_p}%} to "&6&lJR.DEV%nl%&fThese are part time Developers that work behind the%nl%&fscenes to create new games and features,%nl%&fand fix bugs to give the best experience."
  3902. return "&6Jr.Dev"
  3903. if {mineplex.rank.%{_p}%} is "&4&lDEV ":
  3904. set {_p} tab name to "&4&lDEV &e%{_p}%"
  3905. set {mineplex.displaya.%{_p}%} to "&4Dev"
  3906. set {mineplex.colora.%{_p}%} to "§4"
  3907. set {mineplex.hover.%{_p}%} to "&4&lDEV%nl%&fDevelopers work behind the scenes to%nl%&fcreate new games and features, and fix bugs to%nl%&fgive the best experience."
  3908. return "&4Dev"
  3909. if {mineplex.rank.%{_p}%} is "&5&lTWITCH ":
  3910. set {_p} tab name to "&5&lTWITCH &e%{_p}%"
  3911. set {mineplex.displaya.%{_p}%} to "&5Twitch"
  3912. set {mineplex.colora.%{_p}%} to "§5"
  3913. set {mineplex.hover.%{_p}%} to "&5&lTWITCH%nl%&fA Twitch streamer who often features%nl%&fMinepex in their streams."
  3914. return "&5Twitch"
  3915. if {mineplex.rank.%{_p}%} is "&c&lYOUTUBE ":
  3916. set {_p} tab name to "&c&lYOUTUBE &e%{_p}%"
  3917. set {mineplex.displaya.%{_p}%} to "&cYouTube"
  3918. set {mineplex.colora.%{_p}%} to "§c"
  3919. set {mineplex.hover.%{_p}%} to "&c&lYOUTUBE%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex.%nl%&fThey are the official YouTubers of Mineplex."
  3920. return "&cYouTube"
  3921. if {mineplex.rank.%{_p}%} is "&f&lEVENT ":
  3922. set {_p} tab name to "&f&lEVENT &e%{_p}%"
  3923. set {mineplex.displaya.%{_p}%} to "&fEvent"
  3924. set {mineplex.colora.%{_p}%} to "§f"
  3925. set {mineplex.hover.%{_p}%} to "&f&lEVENT%nl%&f???"
  3926. return "&fEvent"
  3927. if {mineplex.rank.%{_p}%} is "&5&lYT ":
  3928. set {_p} tab name to "&5&lYT &e%{_p}%"
  3929. set {mineplex.displaya.%{_p}%} to "&5YT"
  3930. set {mineplex.colora.%{_p}%} to "§5"
  3931. set {mineplex.hover.%{_p}%} to "&5&lYT%nl%&fA YouTuber who creates content for%nl%&for related to Mineplex."
  3932. return "&5YT"
  3933. if {mineplex.rank.%{_p}%} is "&3&lETERNAL ":
  3934. set {_p} tab name to "&3&lETERNAL &e%{_p}%"
  3935. set {mineplex.displaya.%{_p}%} to "&3Eternal"
  3936. set {mineplex.colora.%{_p}%} to "§3"
  3937. set {mineplex.hover.%{_p}%} to "&3&lETERNAL%nl%&fFantastic and magical, no one%nl%&fexcept the time lords truly understand%nl%&fthe power of this rank.%nl% %nl%&fThe fifth purchasable rank at %{mineplex.config.shoplink}%"
  3938. return "&3Eternal"
  3939. if {mineplex.rank.%{_p}%} is "&9&lSUPPORT ":
  3940. set {mineplex.displaya.%{_p}%} to "&9Support"
  3941. set {mineplex.colora.%{_p}%} to "§9"
  3942. set {mineplex.hover.%{_p}%} to "&9&lSUPPORT%nl%&fSupport agents handle tickets and%nl%&fprovide customer service."
  3943. return "&9Support"
  3944. if {mineplex.rank.%{_p}%} is "&9&lARTIST ":
  3945. set {mineplex.displaya.%{_p}%} to "&9Artist"
  3946. set {mineplex.colora.%{_p}%} to "§9"
  3947. set {mineplex.hover.%{_p}%} to "&9&lARTIST%nl%&fThe Artist rank is given to talented artists%nl%who are endorsed to create content for Mineplex."
  3948. return "&9Artist"
  3949.  
  3950. on death of player:
  3951. if attacker is a player:
  3952. if projectile is set:
  3953. set the death message to "&9Death> &e%victim% &7killed by &e%attacker% &7with &eArchery&7."
  3954. if attacker is not a player:
  3955. if attacker is set:
  3956. set {_dm} to 1st char in each word of "%attacker%" to caps
  3957. set the death message to "&9Death> &e%victim% &7killed by &e%{_dm}%&7."
  3958.  
  3959. on join:
  3960. wait 2 ticks
  3961. rankLoad(player, 1, 0)
  3962. loop all players:
  3963. updateRankAPI(loop-player)
  3964.  
  3965. on flight toggle:
  3966. if {mineplex.config.doublejump} is "true":
  3967. if {doublejump.%uuid of player%} is set:
  3968. if player's gamemode is not creative:
  3969. cancel event
  3970. delete {doublejump.%uuid of player%}
  3971. wait 0.1 tick
  3972. set player's flight state to false
  3973. push player upward at speed 0.3
  3974. push player forward at speed 0.9
  3975. play raw sound "mob.ghast.fireball" at player with pitch 2 volume 0.99
  3976. else:
  3977. stop
  3978. else:
  3979. stop
  3980. else:
  3981. stop
  3982.  
  3983. on jump:
  3984. if player's gamemode is not creative:
  3985. if {doublejump.%uuid of player%} is not set:
  3986. if block below player is not air or water:
  3987. set player's flight state to true
  3988. set {doublejump.%uuid of player%} to true
  3989. else:
  3990. stop
  3991. else:
  3992. stop
  3993. else:
  3994. stop
  3995.  
  3996. on quit:
  3997. set {mineplex.rank.uuid.%uuid of player%} to {mineplex.rank.%player%}
  3998.  
  3999. #Chat System
  4000.  
  4001. on chat:
  4002. set {_get} to getPlayerdata(player, "muted")
  4003. if {_get} is "yes":
  4004. if {muted::%player%::type} is "perm":
  4005. send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
  4006. cancel event
  4007. stop
  4008. if {muted::%player%::type} is "temp":
  4009. set {_waited} to difference between now and {muted::%player%::when}
  4010. if {_waited} is less than {muted::%player%::time}:
  4011. send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
  4012. cancel event
  4013. stop
  4014. if message contains "hack" or "hax":
  4015. cancel event
  4016. send "&9Chat> &7Accusing players of cheating in-game is against the rules. If you think someone is cheating, please gather evidence and report it at &a%{mineplex.config.website}%"
  4017. stop
  4018. if {mineplex.vanish.%player%} is false:
  4019. if {mineplex.chatslow} is set:
  4020. if player has permission "mineplex.mod":
  4021. set {_check} to mcs((player), (message))
  4022. if {_check} is less than 0:
  4023. cancel event
  4024. delete {_check}
  4025. else:
  4026. if difference between {lastChat::%player%} and now < {mineplex.chatslow}:
  4027. cancel event
  4028. send "&9Chat> &7Chat slow enabled. Please wait."
  4029. else:
  4030. set {lastChat::%player%} to now
  4031. set {_check} to mcs((player), (message))
  4032. if {_check} is less than 0:
  4033. cancel event
  4034. delete {_check}
  4035. else if {mineplex.chatsilence} is set:
  4036. if player has permission "mineplex.trainee":
  4037. set {_check} to mcs((player), (message))
  4038. if {_check} is less than 0:
  4039. cancel event
  4040. delete {_check}
  4041. else:
  4042. cancel event
  4043. send "&9Chat> &7The chat is silenced."
  4044. else:
  4045. if {party.%player%.chat} is true:
  4046. if length of message is greater than 1:
  4047. if first character of message is "@":
  4048. cancel event
  4049. set message to "%subtext of message from characters 2 to (length of message)%"
  4050. loop {party.%{party.%player%}%::*}:
  4051. message "&5&lParty &f&l%player% &d%message%" to loop-value
  4052. else:
  4053. set {_check} to mcs((player), (message))
  4054. if {_check} is less than 0:
  4055. cancel event
  4056. delete {_check}
  4057. else:
  4058. set {_check} to mcs((player), (message))
  4059. if {_check} is less than 0:
  4060. cancel event
  4061. delete {_check}
  4062. else:
  4063. set {_check} to mcs((player), (message))
  4064. if {_check} is less than 0:
  4065. cancel event
  4066. delete {_check}
  4067. else if {mineplex.vanish.%player%} is true:
  4068. send "&eYou can not chat while incognito."
  4069. cancel event
  4070. else:
  4071. set {mineplex.vanish.%player%} to false
  4072. set {_check} to mcs((player), (message))
  4073. if {_check} is less than 0:
  4074. cancel event
  4075. delete {_check}
  4076.  
  4077. #Join, Quit, and Load Handlers
  4078.  
  4079. on join:
  4080. if player has permission "mineplex.admin":
  4081. $ thread
  4082. set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number
  4083. set {_c} to "{@MCRVER}" parsed as a number
  4084. if {_c} is greater than {_ver}:
  4085. send "&9MCR> &7You must be using some fancy indev version!"
  4086. send "&9MCR> &7or you're retarded and changed the version in the config!"
  4087. stop
  4088. else if {_c} is less than {_ver}:
  4089. send "&9MCR> &7Version &e%{_ver}% &7is ready for download"
  4090. else:
  4091. send "&9MCR> &7Your version of MCR is currently up to date!"
  4092. stop
  4093. send "&9MCR> &7Changelog:"
  4094. $ thread
  4095. set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v"
  4096. loop {_var1::*}:
  4097. send "%loop-value%"
  4098.  
  4099. loop {_var::*}:
  4100. send "&9MCR> &7Version &e%loop-value% &7is ready for download"
  4101. send "&9MCR> &7End of Changelog!"
  4102. if {mineplex.gadget.enabled} is not set:
  4103. set {mineplex.gadget.enabled} to true
  4104. if {mineplex.report.id} is not set:
  4105. set {mineplex.report.id} to 1
  4106. if {mineplex.dj} is not set:
  4107. set {mineplex.dj} to true
  4108. if {mineplex.tntlauncher} is not set:
  4109. set {mineplex.tntlauncher} to true
  4110. if {poll.id.last} is not set:
  4111. set {poll.id.last} to 0
  4112. if {mineplex.ff.list::%player%} is set:
  4113. if player does not have permission "mineplex.trainee":
  4114. delete {mineplex.ff.list::%player%}
  4115. delete {mineplex.pref.ff.%player%}
  4116. if {mineplex.totalaccounts.%ip address of player%::*} does not contain "%player%":
  4117. add "%player%" to {mineplex.totalaccounts.%ip address of player%::*}
  4118.  
  4119. on load:
  4120. #set {_var::*} to contents from url "https://raw.githubusercontent.com/WheezyGold7931/Mineplex-Core/master/version.txt" Raw in GitHub does not update fast enough rip lel
  4121. set {_ver} to line 1 from url "http://pastebin.com/raw/LG11nc8b" parsed as a number
  4122. set {_c} to "{@MCRVER}" parsed as a number
  4123. if {_c} is more than {_ver}:
  4124. broadcast "&9MCR> &7You must be using some fancy indev version!"
  4125. broadcast "&9MCR> &7or you're retarded and changed the version in the config!"
  4126. stop
  4127. else if {_c} is less than {_ver}:
  4128. broadcast "&9MCR> &7Version &e%{_ver}% &7is ready for download"
  4129. else:
  4130. broadcast "&9MCR> &7Your version of MCR is currently up to date!"
  4131. broadcast "&9MCR> &7Client Version: {@MCRVER}"
  4132. broadcast "&9MCR> &7Server Version: %{_ver}%"
  4133. stop
  4134. broadcast "&9MCR> &7Changelog:"
  4135. $ thread
  4136. set {_var1::*} to contents from url "http://pastebin.com/raw/YDB8kU1v"
  4137. loop {_var1::*}:
  4138. broadcast "%loop-value%"
  4139.  
  4140. loop {_var::*}:
  4141. broadcast "&9MCR> &7Version &e%loop-value% &7is ready for download"
  4142. broadcast "&9MCR> &7End of Changelog!"
  4143. if {mineplex.gadget.enabled} is not set:
  4144. set {mineplex.gadget.enabled} to true
  4145. if {mineplex.report.id} is not set:
  4146. set {mineplex.report.id} to 1
  4147. if {mineplex.dj} is not set:
  4148. set {mineplex.dj} to true
  4149. if {mineplex.tntlauncher} is not set:
  4150. set {mineplex.tntlauncher} to true
  4151. if {poll.id.last} is not set:
  4152. set {poll.id.last} to 0
  4153.  
  4154. function runNews(p: player) :: boolean:
  4155. set {_sn} to convert string {mineplex.config.servername} to uppercase
  4156. send title from "&6&l%{_sn}%" and "%{mineplex.news.line1}%" to {_p} for 5, 70, 0
  4157. wait 3 seconds
  4158. send title from "&6&l%{_sn}%" and "%{mineplex.news.line2}%" to {_p} for 1, 70, 0
  4159. wait 3 seconds
  4160. send title from "&6&l%{_sn}%" and "%{mineplex.news.line3}%" to {_p} for 1, 70, 0
  4161. wait 3 seconds
  4162. send title from "&6&l%{_sn}%" and "%{mineplex.news.line4}%" to {_p} for 1, 60, 5
  4163.  
  4164. on join:
  4165. set join message to "&8Join> &7%player%"
  4166. updateRankAPI(player)
  4167. delete {mineplex.disguise.%player%}
  4168. execute console command "/ud %player%"
  4169. delete {mineplex.lastm.%player%}
  4170. delete {mineplex.lasta.%player%}
  4171. set tab header to "&f&l%{mineplex.config.servername}% Network &a%{mineplex.config.world}%" and footer to "&fVisit &a%{mineplex.config.website}% &ffor News, Forums and Shop" for player
  4172. if {mineplex.news.allow} is true:
  4173. runNews(player)
  4174. if {mineplex.vanish.%player%} is not set:
  4175. set {mineplex.vanish.%player%} to false
  4176. if {mineplex.overridechat} is not set:
  4177. set {mineplex.overridechat} to true
  4178. if {mineplex.vanish.%player%} is true:
  4179. send ""
  4180. send ""
  4181. send "&6&lYou are currently incognito"
  4182. send "&eThis means you are invisible to all except for those who are"
  4183. send "&4&lAdmin&f+"
  4184. send ""
  4185. send ""
  4186. if {mineplex.pref.hpv.%player%} is false:
  4187. hide all players from player
  4188. if {mineplex.pref.hpv.%player%} is not set:
  4189. set {mineplex.pref.hpv.%player%} to true
  4190. if {mineplex.pref.ff.%player%} is not set:
  4191. set {mineplex.pref.ff.%player%} to false
  4192. if {mineplex.ff.%player%} is not set:
  4193. set {mineplex.ff.%player%} to false
  4194. if {mineplex.pref.pm.%player%} is not set:
  4195. set {mineplex.pref.pm.%player%} to true
  4196. if {mineplex.pref.pc.%player%} is not set:
  4197. set {mineplex.pref.pc.%player%} to true
  4198. if {mineplex.pref.gwen.%player%} is not set:
  4199. set {mineplex.pref.gwen.%player%} to true
  4200. if {mineplex.pref.report.%player%} is not set:
  4201. set {mineplex.pref.report.%player%} to true
  4202. if {mineplex.shards.%player%} is not set:
  4203. set {mineplex.shards.%player%} to 0
  4204. if {mineplex.gems.%player%} is not set:
  4205. set {mineplex.gems.%player%} to 0
  4206. if {mineplex.particle.active.%player%} is not set:
  4207. set {mineplex.particle.active.%player%} to false
  4208. if {mineplex.arrorw.active} is not set:
  4209. set {mineplex.arrow.active} to false
  4210. if {mineplex.adminmode.%player%} is true:
  4211. set {mineplex.adminmode.%player%} to false
  4212. loop all players:
  4213. if {mineplex.vanish.%loop-player%} is true:
  4214. add loop-player to {%player%.vanishlist::*}
  4215. loop all players:
  4216. if loop-player does not have permission "mineplex.admin":
  4217. hide {%player%.vanishlist::*} from all players
  4218. delete {%player%.vanishlist::*}
  4219. delete {mineplex.tp.back.%player%}
  4220. if {mineplex.config.autoop} is "true":
  4221. if player has permission "mineplex.admin":
  4222. op the player
  4223. else:
  4224. deop the player
  4225.  
  4226. function newsinit(i: integer) :: number:
  4227. if {mineplex.mode} is "sql":
  4228. set {_get} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
  4229. if {_get} is not set:
  4230. update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('1', '§b§lMineplex Core Remake')"
  4231. update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('2', '§a§lThe best remake for Mineplex Commands')"
  4232. update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('3', '§3§lRate this on Spigot!')"
  4233. update "INSERT INTO `newslist` (`newsPosition`, `newsString`) VALUES ('4', '§c§lCheck me out on SkUnity!')"
  4234. set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
  4235. set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'"
  4236. set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'"
  4237. set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'"
  4238. set {mineplex.news.allow} to true
  4239. else:
  4240. set {mineplex.news.line1} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '1'"
  4241. set {mineplex.news.line2} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '2'"
  4242. set {mineplex.news.line3} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '3'"
  4243. set {mineplex.news.line4} to first element out of objects in column "newsString" from result of query "SELECT newsString FROM `newslist` WHERE newsPosition = '4'"
  4244. else:
  4245. if {mineplex.news.line1} is not set:
  4246. set {mineplex.news.line1} to "§b§lMineplex Core Remake"
  4247. set {mineplex.news.line2} to "§a§lThe best remake for Mineplex Commands"
  4248. set {mineplex.news.line3} to "§3§lRate this on Spigot!"
  4249. set {mineplex.news.line4} to "§c§lCheck me out on SkUnity!"
  4250. set {mineplex.news.allow} to true
  4251.  
  4252. #NewsINIT
  4253. on load:
  4254. newsinit(1)
  4255.  
  4256. on quit:
  4257. set quit message to "&8Quit> &7%player%"
  4258. delete {mineplex.tp.back.%player%}
  4259.  
  4260. every second:
  4261. loop all players:
  4262. add 1 to {mineplex.time.%loop-player%}
  4263.  
  4264. #Forcefield
  4265.  
  4266. every 2 ticks:
  4267. loop all players:
  4268. if {mineplex.ff.list::%loop-player%} is set:
  4269. loop players in radius 4 of loop-player:
  4270. if {mineplex.pref.ff.%loop-player-2%} is false:
  4271. if loop-player-2 is not loop-player-1:
  4272. play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
  4273. push the loop-player-2 upwards at speed 0.3
  4274. push the loop-player-2 backwards at speed 0.45
  4275. play raw sound "mob.chicken.plop" at loop-player-2 with pitch 1 volume 10
  4276.  
  4277. #2 Factor
  4278.  
  4279. command /2fareset <player>:
  4280. permission: op
  4281. trigger:
  4282. delete {mineplex.newauth.%uuid of arg-1%}
  4283. set {mineplex.authlock.%arg-1%} to false
  4284. delete {mineplex.newauthlast.%uuid of arg-1%}
  4285.  
  4286. on join:
  4287. wait 5 ticks
  4288. if player has permission "mineplex.2fa":
  4289. if {mineplex.newauth.%uuid of player%} is set:
  4290. set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now
  4291. set {_tc} to "1 day" parsed as a timespan
  4292. if {_t} is less than {_tc}:
  4293. send "&92FA> &7Authorized!"
  4294. else:
  4295. set {mineplex.authlock.%player%} to true
  4296. apply slowness 999 to player for 999 seconds
  4297. apply blindness 999 to player for 999 seconds
  4298. send "&92FA> &7Please enter your two-factor auth code"
  4299. send "&92FA> &c/2fa (code)"
  4300. else:
  4301. stop
  4302.  
  4303. on command:
  4304. if {mineplex.authlock.%player%} is true:
  4305. if executor is player:
  4306. if command is not "2fa":
  4307. cancel event
  4308. send "&92FA> &7Please enter your two-factor auth code"
  4309. send "&92FA> &c/2fa (code)"
  4310.  
  4311. on chat:
  4312. if {mineplex.authlock.%player%} is true:
  4313. cancel event
  4314. send "&92FA> &7Please enter your two-factor auth code"
  4315. send "&92FA> &c/2fa (code)"
  4316.  
  4317. on quit:
  4318. delete {autowarn.%player%}
  4319.  
  4320. #Mineplex Commands
  4321. command /2fa [<string>] [<string>]:
  4322. permission: mineplex.2fa
  4323. permission message: &9Permissions> &7You do not have permission to do that.
  4324. trigger:
  4325. if {mineplex.newauth.%uuid of player%} is not set:
  4326. if {authwarn.%player%} is not set:
  4327. send "&92FA> &7Hey There! This sets a code that you will have to remember for the rest of your life!"
  4328. send "&92FA> &7Do &e/2fa &7if you are 100%% sure!"
  4329. set {authwarn.%player%} to true
  4330. stop
  4331. else:
  4332. send "&92FA> &7Generating secret..."
  4333. set {_clientSecret} to a new two-factor base-32 secret code
  4334. send "&92FA> &7Saving secret..."
  4335. set {mineplex.newauth.%uuid of player%} to {_clientSecret}
  4336. send "&92FA> &7Secret key saved."
  4337. send "&92FA> &7You must enter this code into your Two-Factor App:%nl%&92FA> &e%{_clientSecret}%"
  4338. send "&92FA> &7Then redo /2fa with your code"
  4339. set {mineplex.authlock.%player%} to false
  4340. set {_t} to arg 1 parsed as an integer
  4341. if {_t} is a number:
  4342. send "&92FA> &7Authorized for 24 hours."
  4343. send "&92FA> &7Saving secret..."
  4344. wait 5 ticks
  4345. set {mineplex.newauth.%uuid of player%} to hashed arg 1
  4346. set {mineplex.authlock.%player%} to false
  4347. send "&92FA> &7Secret key saved."
  4348. else:
  4349. send "&92FA> &7Invalid authentication code (not a number)."
  4350. else:
  4351. set {_t} to difference between {mineplex.newauthlast.%uuid of player%} and now
  4352. set {_tc} to "1 day" parsed as a timespan
  4353. if {_t} is less than {_tc}:
  4354. send "&92FA> &7Authorized for 24 hours."
  4355. else:
  4356. set {_c} to the current two-factor code of secret code {mineplex.newauth.%uuid of player%}
  4357. set {_t} to arg 1 parsed as an integer
  4358. if {_t} is a number:
  4359. if {_c} is arg-1:
  4360. send "&92FA> &7Authorized for 24 hours."
  4361. send "&92FA> &7Saving secret..."
  4362. wait 5 ticks
  4363. remove slowness from the player
  4364. remove blindness from the player
  4365. set {mineplex.newauthlast.%uuid of player%} to now
  4366. set {mineplex.authlock.%player%} to false
  4367. send "&92FA> &7Secret key saved."
  4368. else:
  4369. send "&92FA> &7Invalid authentication code"
  4370. else:
  4371. send "&92FA> &7Invalid authentication code (not a number)."
  4372.  
  4373. command /tp [<text>] [<text>] [<text>] [<text>] [<text>]:
  4374. aliases: /teleport
  4375. permission: mineplex.mod
  4376. permission message: &9Permissions> &7You do not have permission to do that.
  4377. trigger:
  4378. if arg-1 is not set:
  4379. send "&9Teleport> &7Commands List:"
  4380. send "&6/tp <target> &7Teleport to Player &6Mod"
  4381. send "&6/tp b(ack) &7Undo Teleports &6Mod"
  4382. send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin"
  4383. send "&4/tp <player> <target> &7Teleport Player to Player &4Admin"
  4384. send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin"
  4385. send "&4/tp all &7Teleport All to Self &4Owner"
  4386. else:
  4387. if arg-2 is not set:
  4388. if arg-1 is set:
  4389. if arg-1 is not "all":
  4390. if arg-1 is not "here" or "h" or "back" or "b":
  4391. if arg-1 parsed as player is online:
  4392. set {mineplex.tp.back.%player%} to location of player
  4393. teleport player to arg-1 parsed as player's location
  4394. set {_t} to arg-1 parsed as player
  4395. send "&9Teleport> &7Teleported to &e%{_t}%&7."
  4396. stop
  4397. else:
  4398. send "&9Teleport> &7Locating &e%arg-1%&7..."
  4399. wait 5 seconds
  4400. send "&9Teleport> &7Could not locate &e%arg-1%&7."
  4401. stop
  4402. if arg-1 is "all":
  4403. if player has permission "mineplex.owner":
  4404. teleport all players to player
  4405. send "&9Teleport> &7You teleported &e%amount of players% Players &7to yourself."
  4406. broadcast "&9Teleport> &7You teleported to &e%player%&7."
  4407. stop
  4408. else:
  4409. send "&9Permissions> &7You do not have permission to do that."
  4410. stop
  4411. if arg 4 is set:
  4412. if arg-1 parsed as player is online:
  4413. set {_p} to arg-1 parsed as a player
  4414. set {_x} to arg-2 parsed as a number
  4415. set {_y} to arg-3 parsed as a number
  4416. set {_z} to arg-4 parsed as a number
  4417. if {_x} is not set:
  4418. send "&9Teleport> &7Invalid X-Coordinate [&e%arg-2%&7]."
  4419. stop
  4420. if {_y} is not set:
  4421. send "&9Teleport> &7Invalid Y-Coordinate [&e%arg-3%&7]."
  4422. stop
  4423. if {_z} is not set:
  4424. send "&9Teleport> &7Invalid Z-Coordinate [&e%arg-4%&7]."
  4425. stop
  4426. teleport {_p} to the location at {_x}, {_y}, {_z}
  4427. send "&9Teleport> &7Teleported &e%{_p}% &7%{_x}%, %{_y}%, %{_z}%."
  4428. else:
  4429. send "&9Teleport> &7Locating &e%arg-1%&7..."
  4430. wait 5 seconds
  4431. send "&9Teleport> &7Could not locate &e%arg-1%&7."
  4432.  
  4433. if arg-1 is "here" or "h":
  4434. if player has permission "mineplex.admin":
  4435. if arg-3 is not set:
  4436. if arg-2 is set:
  4437. if arg-2 parsed as player is online:
  4438. teleport arg-2 parsed as player to player's location
  4439. send "&9Teleport> &7%player% teleported you to self." to arg-2 parsed as player
  4440. set {_t} to arg-2 parsed as player
  4441. send "&9Teleport> &7Teleported &e%arg-2% &7to self."
  4442. stop
  4443. else:
  4444. send "&9Teleport> &7Locating &e%arg-2%&7..."
  4445. wait 5 seconds
  4446. send "&9Teleport> &7Could not locate &e%arg-2%&7."
  4447. stop
  4448. else:
  4449. send "&9Permissions> &7You do not have permission to do that."
  4450. stop
  4451. if arg-2 is not set:
  4452. send "&9Teleport> &7Commands List:"
  4453. send "&6/tp <target> &7Teleport to Player &6Mod"
  4454. send "&6/tp b(ack) &7Undo Teleports &6Mod"
  4455. send "&4/tp h(ere) <player> &7Teleport Player to Self &4Admin"
  4456. send "&4/tp <player> <target> &7Teleport Player to Player &4Admin"
  4457. send "&4/tp <player> <X> <Y> <Z> &7Teleport to Location &4Admin"
  4458. send "&4/tp all &7Teleport All to Self &4Owner"
  4459. if arg-1 is "back" or "b":
  4460. if {mineplex.tp.back.%player%} is set:
  4461. set {_new} to {mineplex.tp.back.%player%}
  4462. set {mineplex.tp.back.%player%} to location of player
  4463. teleport player to {_new}
  4464. send "&9Teleport> &7You have been teleported to your previous location."
  4465. else:
  4466. send "&9Teleport> &7There is no place to teleport you back to."
  4467. stop
  4468. if arg-3 is not set:
  4469. if arg-2 is set:
  4470. if player has permission "mineplex.admin":
  4471. if arg-2 parsed as player is online:
  4472. if arg-1 parsed as player is online:
  4473. set {mineplex.tp.back.%player%} to location of player
  4474. teleport arg-1 parsed as player to arg-2 parsed as player
  4475. set {_t1} to arg-1 parsed as player
  4476. set {_t} to arg-2 parsed as player
  4477. send "&9Teleport> &e%{_t1}% &7was teleported to you." to arg-2 parsed as player
  4478. send "&9Teleport> &7You were teleported to &e%{_t}%&7." to arg-1 parsed as player
  4479. stop
  4480. else:
  4481. send "&9Teleport> &7Locating &e%arg-1%&7..."
  4482. wait 5 seconds
  4483. send "&9Teleport> &7Could not locate &e%arg-1%&7."
  4484. stop
  4485. else:
  4486. send "&9Teleport> &7Locating &e%arg-2%&7..."
  4487. wait 5 seconds
  4488. send "&9Teleport> &7Could not locate &e%arg-2%&7."
  4489. stop
  4490. else:
  4491. send "&9Permissions> &7You do not have permission to do that."
  4492. stop
  4493.  
  4494. command /time [<offline player>] [<string>]:
  4495. permission: mineplex.mod
  4496. permission message: &9Permissions> &7You do not have permission to do that.
  4497. trigger:
  4498. if arg 1 is not set:
  4499. send "&9Time> &7Usage: /time <playerName>"
  4500. else:
  4501. if {mineplex.time.%arg-1%} is not set:
  4502. set {mineplex.time.%arg-1%} to 0
  4503. send "&9Time> &e%arg-1% &7has spent &e%{mineplex.time.%arg-1%}%.0 Seconds &7in game"
  4504. else:
  4505. set {_tm} to {mineplex.time.%arg-1%}
  4506. if {_tm} is less than 60:
  4507. send "&9Time> &e%arg-1% &7has spent &e%{_tm}%.0 Seconds &7in game"
  4508. stop
  4509. else if {_tm} is less than 3600:
  4510. set {_final} to {_tm} / 60
  4511. send "&9Time> &e%arg-1% &7has spent &e%{_final}% Minutes &7in game"
  4512. stop
  4513. else if {_tm} is less than 86400:
  4514. set {_final} to {_tm} / 3600
  4515. send "&9Time> &e%arg-1% &7has spent &e%{_final}% Hours &7in game"
  4516. stop
  4517. else if {_tm} is less than 604800:
  4518. set {_final} to {_tm} / 86400
  4519. send "&9Time> &e%arg-1% &7has spent &e%{_final}% Days &7in game"
  4520. stop
  4521. else:
  4522. set {_final} to {_tm} / 604800
  4523. send "&9Time> &e%arg-1% &7has spent &e%{_final}% Weeks &7in game"
  4524.  
  4525. command /disguise [<string>] [<string>]:
  4526. permission: mineplex.youtube
  4527. permission message: &9Permissions> &7You do not have permission to do that.
  4528. trigger:
  4529. if arg 1 is not set:
  4530. if {mineplex.disguise.%player%} is set:
  4531. send "&9Disguise> &7You are no longer disguised!"
  4532. execute console command "/ud %player%"
  4533. delete {mineplex.disguise.%player%}
  4534. set player tab name to "%{mineplex.rank.%player%}%&e%player%"
  4535. updateRankAPI(player)
  4536. else:
  4537. send "&9Disguise> &7Command List:%nl%&4/disguise <player> &7Makes you appear as target player in chat and tab &4Admin"
  4538. else:
  4539. if {mineplex.disguise.%player%} is set:
  4540. send "&9Disguise> &7You are already disguised. Please undisguise by using /disguise"
  4541. else:
  4542. set {_n} to the length of arg 1
  4543. if {_n} is greater than 16:
  4544. send "&9Disguise> &7That disguise name is not permitted!"
  4545. stop
  4546. if arg-1 contains "~" or "`" or "!" or "@" or "##" or "$" or "%%" or "^" or "&" or "*" or "(" or ")" or "-" or "=" or "+" or "[" or "]" or "{" or "}" or ":" or ";" or "," or "<" or ">" or "." or "?" or "/" or "\":
  4547. send "&9Disguise> &7That disguise name is not permitted!"
  4548. stop
  4549. set {_p1} to "%arg-1%" parsed as offline player
  4550. if {_p1} is online:
  4551. send "&9Disguise> &7this name already in use!"
  4552. stop
  4553. set {_ban} to getPlayerdata({_p1}, "banned")
  4554. set {_mute} to getPlayerdata({_p1}, "muted")
  4555. if {_ban} or {_muted} is "yes":
  4556. send "&9Disguise> &7You may not disguise as people who are muted or banned."
  4557. stop
  4558. set {_rank} to getPlayerdata({_p1}, "rank")
  4559. if {_rank} is not "All" or "Ultra" or "Hero" or "Legend" or "Titan" or "Eternal":
  4560. send "&9Disguise> &7You may not disguise as users who are staff, youtubers, or twitchers."
  4561. stop
  4562. send "&9Disguise> &7Disguise Active: &f%arg-1%"
  4563. set {_localp} to arg 1 parsed as a player
  4564. rankLoad({_localp} , 2, 1)
  4565. if {mineplex.level.%arg-1%} is not set:
  4566. set {mineplex.level.%arg-1%} to "&70"
  4567. if {mineplex.rank.%arg-1%} is not set:
  4568. set {mineplex.rank.%arg-1%} to ""
  4569. execute console command "/odisguise %player% player %arg-1%"
  4570. set {mineplex.disguise.%player%} to "%arg-1%" parsed as offline player
  4571. set {_player} to arg 1
  4572. if {mineplex.rank.%{_player}%} is not set:
  4573. set {mineplex.rank.%{_player}%} to ""
  4574. set player tab name to "%{mineplex.rank.%{_player}%}%&e%arg-1%"
  4575. updateRankAPI(player)
  4576.  
  4577. command /api [<string>] [<string>] [<string>]:
  4578. trigger:
  4579. if arg 1 is not set:
  4580. send "&9API> &7Mineplex Core API"
  4581. send "&9API> &7/api (api name)"
  4582. send "&9API> &7Current API's; &adisplayrank&7, &adisplayname"
  4583. send "&9API> &7Use /api (api name) (player) to view a different players's api output"
  4584. else:
  4585. if arg 2 is set:
  4586. set {_p} to "%arg-2%"
  4587. else:
  4588. set {_p} to "%player%"
  4589. if arg 1 is "displayrank":
  4590. if {mineplex.api.displayrank.%{_p}%} is not set:
  4591. set {mineplex.api.displayrank.%{_p}%} to "null"
  4592. send "&9API> &7Raw API Output; &f%{mineplex.api.displayrank.%{_p}%}%"
  4593. else if arg 1 is "displayname":
  4594. if {mineplex.api.displayname.%{_p}%} is not set:
  4595. set {mineplex.api.displayname.%{_p}%} to "null"
  4596. send "&9API> &7Raw API Output; &f%{mineplex.api.displayname.%{_p}%}%"
  4597. else:
  4598. send "&9API> &7Invalid API!"
  4599.  
  4600. command /give [<string>] [<string>] [<string>] [<string>] [<string>]:
  4601. aliases: /g, /item, /i
  4602. permission: mineplex.admin
  4603. permission message: &9Permissions> &7This requires Permission Rank [&9ADMIN&7].
  4604. trigger:
  4605. if arg 1 is not set:
  4606. send "&9Give: &7Listing Commands:"
  4607. send "&4/give (item) Admin"
  4608. send "&4/give (player) (item) (amount) Admin"
  4609. send "&4/give (player) (item) (amount) (Enchantment:level) Admin"
  4610. send "&4/give all (item) (amount) Admin"
  4611. send "&4/give all (item) (amount) (Enchantment:level) Admin"
  4612. else if arg 5 is set:
  4613. send "&9Give: &7Listing Commands:"
  4614. send "&4/give (item) Admin"
  4615. send "&4/give (player) (item) (amount) Admin"
  4616. send "&4/give (player) (item) (amount) (Enchantment:level) Admin"
  4617. send "&4/give all (item) (amount) Admin"
  4618. send "&4/give all (item) (amount) (Enchantment:level) Admin"
  4619. else:
  4620. if arg 2 is not set:
  4621. set {_i1} to "%arg-1%"
  4622. replace all "_" with " " in {_i1}
  4623. set {_i} to "%{_i1}%" parsed as an item
  4624. if {_i} is an item:
  4625. send "&9Give> &7You gave &e1 %{_i}% &7to &e%player%&7."
  4626. give player {_i}
  4627. else:
  4628. send "&9Item Search> &e0 &7matches for [&e%arg-1%&7]."
  4629. send "&9Item(s) Search> &7Invalid [&e%arg-1%&7]."
  4630. if arg 2 is set:
  4631. if arg 3 is set:
  4632. if arg 1 is "all":
  4633. set {_i1} to "%arg-2%"
  4634. replace all "_" with " " in {_i1}
  4635. set {_i} to "%{_i1}%" parsed as an item
  4636. set {_a} to "%arg-3%" parsed as a number
  4637. if {_i} is an item:
  4638. if {_a} is a number:
  4639. if arg 4 is set:
  4640. set {_e} to "%arg-4%" parsed as text
  4641. set {_oe} to "%arg-4%" parsed as text
  4642. replace all "_" with " " in {_e}
  4643. replace all ":" with " " in {_e}
  4644. if "%{_e}%" parsed as an enchantment type is an enchantment type:
  4645. set {_e} to "%{_e}%" parsed as an enchantment type
  4646. enchant {_i} with "%{_e}%" parsed as a enchantment type
  4647. else:
  4648. send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]."
  4649. send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &eALL&7."
  4650. send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to all players
  4651. loop all players:
  4652. loop {_a} times:
  4653. give loop-player {_i}
  4654. else:
  4655. send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]."
  4656. send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7."
  4657. send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players
  4658. loop all players:
  4659. give loop-player {_i}
  4660. else:
  4661. send "&9Item Search> &e0 &7matches for [&e%{_i1}%&7]."
  4662. send "&9Item(s) Search> &7Invalid [&e%{_i}%&7]."
  4663. else:
  4664. set {_i1} to "%arg-2%"
  4665. replace all "_" with " " in {_i1}
  4666. set {_i} to "%{_i1}%" parsed as an item
  4667. set {_a} to "%arg-3%" parsed as a number
  4668. set {_p} to "%arg-1%" parsed as a player
  4669. if {_i} is an item:
  4670. if {_p} is online:
  4671. if {_a} is a number:
  4672. if arg 4 is set:
  4673. set {_e} to "%arg-4%" parsed as text
  4674. set {_oe} to "%arg-4%" parsed as text
  4675. replace all "_" with " " in {_e}
  4676. replace all ":" with " " in {_e}
  4677. if "%{_e}%" parsed as an enchantment type is an enchantment type:
  4678. set {_e} to "%{_e}%" parsed as an enchantment type
  4679. enchant {_i} with "%{_e}%" parsed as a enchantment type
  4680. else:
  4681. send "&9Give> &7Invalid Enchantment [&6%{_oe}%&7]."
  4682. send "&9Give> &7You gave &e%{_a}% %{_i}% &7to &e%{_p}%&7."
  4683. send "&9Give> &7You received &e%{_a}% %{_i}% &7from &e%player%&7." to {_p}
  4684. loop {_a} times:
  4685. give {_p} {_i}
  4686. else:
  4687. send "&9Give> &7Invalid Amount [%arg-3%]. Defaulting to [1]."
  4688. send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7."
  4689. send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p}
  4690. give {_p} {_i}
  4691. else:
  4692. send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
  4693. send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]."
  4694. stop
  4695. else:
  4696. send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
  4697. send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
  4698. else:
  4699. if arg 1 is "all":
  4700. set {_i1} to "%arg-2%"
  4701. replace all "_" with " " in {_i1}
  4702. set {_i} to "%{_i1}%" parsed as an item
  4703. if {_i} is an item:
  4704. send "&9Give> &7You gave &e1 %{_i}% &7to &eALL&7."
  4705. send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to all players
  4706. loop all players:
  4707. give loop-player {_i}
  4708. else:
  4709. send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
  4710. send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
  4711. else:
  4712. set {_i1} to "%arg-2%"
  4713. replace all "_" with " " in {_i1}
  4714. set {_i} to "%{_i1}%" parsed as an item
  4715. set {_p} to "%arg-1%" parsed as a player
  4716. if {_i} is an item:
  4717. if {_p} is online:
  4718. send "&9Give> &7You gave &e1 %{_i}% &7to &e%{_p}%&7."
  4719. send "&9Give> &7You received &e1 %{_i}% &7from &e%player%&7." to {_p}
  4720. give {_p} {_i}
  4721. else:
  4722. send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
  4723. send "&9Online Player(s) Search> &7Invalid [&e%arg-1%&7]."
  4724. stop
  4725. else:
  4726. send "&9Item Search> &e0 &7matches for [&e%arg-2%&7]."
  4727. send "&9Item(s) Search> &7Invalid [&e%arg-2%&7]."
  4728.  
  4729. #/givestat player stat amount
  4730. command /givestat [<offline player>] [<string>] [<string>] [<string>]:
  4731. permission: mineplex.admin
  4732. permission message: &9Permissions> &7You do not have permission to do that.
  4733. trigger:
  4734. if arg 1 is not set:
  4735. send "&9Stats> &e/givestat (player) (stat) (amount)"
  4736. else if arg 1 is set:
  4737. if arg 2 is set:
  4738. if arg 3 parsed as a number is set:
  4739. if arg 2 is "Global.ExpEarned":
  4740. set {_lvl} to arg 3 parsed as a number
  4741. if {_lvl} is less than 0:
  4742. send "&9Stats> &7Unknown value for &eGlobal.ExpEarned&7!"
  4743. stop
  4744. else if {_lvl} is less than 20:
  4745. set {_temp} to "&7%{_lvl}%"
  4746. set {mineplex.level.%arg-1%} to "%{_temp}%"
  4747. send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
  4748. setPlayerdata(arg-1, "level", "%{_lvl}%")
  4749. stop
  4750. else if {_lvl} is less than 40:
  4751. set {_temp} to "&9%{_lvl}%"
  4752. set {mineplex.level.%arg-1%} to "%{_temp}%"
  4753. send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
  4754. setPlayerdata(arg-1, "level", "%{_lvl}%")
  4755. stop
  4756. else if {_lvl} is less than 60:
  4757. set {_temp} to "&2%{_lvl}%"
  4758. set {mineplex.level.%arg-1%} to "%{_temp}%"
  4759. send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
  4760. setPlayerdata(arg-1, "level", "%{_lvl}%")
  4761. stop
  4762. else if {_lvl} is less than 80:
  4763. set {_temp} to "&6%{_lvl}%"
  4764. set {mineplex.level.%arg-1%} to "%{_temp}%"
  4765. send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
  4766. setPlayerdata(arg-1, "level", "%{_lvl}%")
  4767. stop
  4768. else if {_lvl} is less than or equal to 100:
  4769. set {_temp} to "&c%{_lvl}%"
  4770. set {mineplex.level.%arg-1%} to "%{_temp}%"
  4771. send "&9Stats> &7Applied &e%{_lvl}% Global.ExpEarned &7to &e%arg-1%&7."
  4772. setPlayerdata(arg-1, "level", "%{_lvl}%")
  4773. stop
  4774. else if arg 2 is "Global.GemsEarned":
  4775. set {_num} to arg 3 parsed as a number
  4776. set {_get} to getPlayerdata(arg-1, "stats.global.gems")
  4777. set {_cur} to {_get} parsed as a number
  4778. add {_num} to {_cur}
  4779. setPlayerdata(arg-1, "stats.global.gems", "%{_cur}%")
  4780. send "&9Stats> &7Applied &e%{_num}% Global.GemsEarned &7to &e%arg-1%&7."
  4781. else if arg 2 is "Global.GamesPlayed":
  4782. set {_num} to arg 3 parsed as a number
  4783. set {_get} to getPlayerdata(arg-1, "stats.global.games")
  4784. set {_cur} to {_get} parsed as a number
  4785. add {_num} to {_cur}
  4786. setPlayerdata(arg-1, "stats.global.games", "%{_cur}%")
  4787. send "&9Stats> &7Applied &e%{_num}% Global.GamesPlayed &7to &e%arg-1%&7."
  4788. else if arg 2 is "Global.DailyRewards":
  4789. set {_num} to arg 3 parsed as a number
  4790. set {_get} to getPlayerdata(arg-1, "stats.global.dailyr")
  4791. set {_cur} to {_get} parsed as a number
  4792. add {_num} to {_cur}
  4793. setPlayerdata(arg-1, "stats.global.dailyr", "%{_cur}%")
  4794. send "&9Stats> &7Applied &e%{_num}% Global.DailyRewards &7to &e%arg-1%&7."
  4795. else if arg 2 is "Global.TimesVoted":
  4796. set {_num} to arg 3 parsed as a number
  4797. set {_get} to getPlayerdata(arg-1, "stats.global.voted")
  4798. set {_cur} to {_get} parsed as a number
  4799. add {_num} to {_cur}
  4800. setPlayerdata(arg-1, "stats.global.voted", "%{_cur}%")
  4801. send "&9Stats> &7Applied &e%{_num}% Global.TimesVoted &7to &e%arg-1%&7."
  4802. else if arg 2 is "Global.ChestsOpened":
  4803. set {_num} to arg 3 parsed as a number
  4804. set {_get} to getPlayerdata(arg-1, "stats.global.chests")
  4805. set {_cur} to {_get} parsed as a number
  4806. add {_num} to {_cur}
  4807. setPlayerdata(arg-1, "stats.global.chests", "%{_cur}%")
  4808. send "&9Stats> &7Applied &e%{_num}% Global.ChestsOpened &7to &e%arg-1%&7."
  4809. else:
  4810. send "&9Stats> &e/givestat (player) (stat) (amount)"
  4811. else:
  4812. send "&9Stats> &e/givestat (player) (stat) (amount)"
  4813. else:
  4814. send "&9Stats> &e/givestat (player) (stat) (amount)"
  4815.  
  4816. command /stats [<offline player>] [<string>]:
  4817. trigger:
  4818. if arg 1 is not set:
  4819. set {_p} to player
  4820. set {_good} to true
  4821. else:
  4822. if arg 1 is online:
  4823. set {_p} to arg 1
  4824. set {_good} to true
  4825. else:
  4826. send "&9Online Player Search> &e0 &7matches for [&e%arg-1%&7]."
  4827. if {_good} is true:
  4828. open chest with 5 rows named "%{_p}%'s Stats" to player
  4829. wait 1 tick
  4830. set {_tm} to {mineplex.time.%{_p}%}
  4831. if {_tm} is less than 60:
  4832. set {_global.time} to "%{_final}%.0 Seconds"
  4833. else if {_tm} is less than 3600:
  4834. set {_final} to {_tm} / 60
  4835. set {_global.time} to "%{_final}% Minutes"
  4836. else if {_tm} is less than 86400:
  4837. set {_final} to {_tm} / 3600
  4838. set {_global.time} to "%{_final}% Hours"
  4839. else if {_tm} is less than 604800:
  4840. set {_final} to {_tm} / 86400
  4841. set {_global.time} to "%{_final}% Days"
  4842. else:
  4843. set {_final} to {_tm} / 604800
  4844. set {_global.time} to "%{_final}% Weeks"
  4845. set {_global.gems} to getPlayerdata({_p}, "stats.global.gems")
  4846. set {_global.games} to getPlayerdata({_p}, "stats.global.games")
  4847. set {_global.dailyr} to getPlayerdata({_p}, "stats.global.dailyr")
  4848. set {_global.voted} to getPlayerdata({_p}, "stats.global.voted")
  4849. set {_global.chests} to getPlayerdata({_p}, "stats.global.chests")
  4850. format slot 2 of player with emerald named "&a&lGlobal" with lore "||&eGems Earned: &f%{_global.gems}%|| ||&eGames Played: &f%{_global.games}%||&eTime In Game: &f%{_global.time}%|| ||&eDaily Rewards: &f%{_global.dailyr}%||&eTimes Voted: &f%{_global.voted}%|| ||&eChests Opened: &f%{_global.chests}%" to be unstealable
  4851.  
  4852. command /mcr:
  4853. trigger:
  4854. send "&9Plugin> &7Mineplex Core"
  4855. send "&9Plugin> &7Running MCR: &e{@MCRVER}"
  4856. send "&9Plugin> &7Hotfix/Release Cycle: &e{@MCRHOTFIX}"
  4857. send "&9Plugin> &7by &aWheezyGold7931&7, &eTheSkripterDK&7, &eTorksi&7, &7and &eItzRenderman"
  4858. send "&9Plugin> &7Special thanks to TonyMaster21, LimeGlass, Rezz, Citrin_, Boobah, SomethingPlayzMC, Ottelino, and SoftBreeze"
  4859. send "&9Plugin> &7Also, special thanks to our moderation team."
  4860. send ""
  4861. send "&9Patreon> &7Huge Thanks to my Patreons:"
  4862. send "&9Patreon> &eNone, anymore"
  4863. send "&9Patreon> &7If you want to be listed there than support me on Patreon!:"
  4864. send "&9Patreon> &bhttps://www.patreon.com/WheezyGold7931"
  4865.  
  4866. command /a [<text>]:
  4867. aliases: /admin
  4868. trigger:
  4869. if arg 1 is not set:
  4870. send "&9Admin> &7Corect Usage: /a (message)"
  4871. stop
  4872. if {mineplex.disguise.%player%} is set:
  4873. send "&9Admin> &7Disguised users cannot use /a while disguised!"
  4874. stop
  4875. else:
  4876. set {_p} to player
  4877. set {_get} to getPlayerdata(player, "muted")
  4878. if {_get} is "yes":
  4879. if {muted::%player%::type} is "perm":
  4880. send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
  4881. stop
  4882. if {muted::%player%::type} is "temp":
  4883. set {_waited} to difference between {muted::%player%::when} and now
  4884. if {_waited} is less than {muted::%player%::time}:
  4885. send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
  4886. stop
  4887. if {mineplex.rank.%{_p}%} is "":
  4888. set {_display} to "Player %{_p}%"
  4889. else:
  4890. set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
  4891. if player has permission "mineplex.trainee":
  4892. loop all players:
  4893. if loop-player has permission "mineplex.trainee":
  4894. send "%{_display}% &d%arg-1%" to loop-player
  4895. play "NOTE_PLING" to loop-player at volume 0.5
  4896. else:
  4897. send "%{_display}% &d%arg-1%"
  4898. play "NOTE_PLING" to player at volume 0.5
  4899. loop all players:
  4900. if loop-player has permission "mineplex.trainee":
  4901. send "%{_display}% &d%arg-1%" to loop-player
  4902. play "NOTE_PLING" to loop-player at volume 0.5
  4903.  
  4904. command /ma [<player>] [<text>]:
  4905. permission: mineplex.trainee
  4906. permission message: &9Permissions> &7You do not have permission to do that.
  4907. trigger:
  4908. if {mineplex.disguise.%player%} is set:
  4909. send "&9Admin> &7Disguised users cannot use /a while disguised!"
  4910. stop
  4911. else:
  4912. set {_p} to player
  4913. if {mineplex.rank.%{_p}%} is "":
  4914. set {_display} to "&fPlayer %{_p}%"
  4915. else:
  4916. set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
  4917. if {mineplex.rank.%arg-1%} is "":
  4918. set {_display2} to "&fPlayer %arg-1%"
  4919. else:
  4920. set {_display2} to "%{mineplex.displaya.%arg-1%}% %arg-1%"
  4921. if player has permission "mineplex.trainee":
  4922. if argument 1 and argument 2 is set:
  4923. send "&d-> %{_display2}% &d%arg 2%"
  4924. send "&d<- %{_display}% &d%arg 2%" to arg-1
  4925. set {mineplex.lasta.%player%} to arg-1
  4926. play "NOTE_PLING" to player at volume 0.5
  4927. play "NOTE_PLING" to arg-1 at volume 0.5
  4928. loop all players:
  4929. if loop-player has permission "mineplex.trainee":
  4930. if loop-player is not player or arg-1:
  4931. send "%{_display}% &d-> %{_display2}% &d%arg 2%" to loop-player
  4932. else:
  4933. send "&9Message> &cErr...something went wrong?"
  4934. else:
  4935. send "&9Permissions> &7You do not have permission to do that."
  4936.  
  4937. command /ra [<text>]:
  4938. permission: mineplex.trainee
  4939. permission message: &9Permissions> &7You do not have permission to do that.
  4940. trigger:
  4941. if {mineplex.disguise.%player%} is set:
  4942. set {_p} to {mineplex.disguise.%player%}
  4943. else:
  4944. set {_p} to player
  4945. if {mineplex.rank.%{_p}%} is "":
  4946. set {_display} to "&fPlayer %{_p}%"
  4947. else:
  4948. set {_display} to "%{mineplex.displaya.%{_p}%}% %{_p}%"
  4949. if {mineplex.rank.%{mineplex.lasta.%player%}%} is "":
  4950. set {_display2} to "&fPlayer %{mineplex.lasta.%player%}%"
  4951. else:
  4952. set {_display2} to "%{mineplex.displaya.%{mineplex.lasta.%player%}%}% %{mineplex.lasta.%player%}%"
  4953. if {mineplex.lasta.%player%} is not set:
  4954. send "&9Message> &7You have not messaged anyone recently."
  4955. stop
  4956. else:
  4957. if argument 1 is set:
  4958. send "&d-> %{_display2}% &d%arg 1%"
  4959. send "&d<- %{_display}% &d%arg-1%" to {mineplex.lasta.%player%}
  4960. play "NOTE_PLING" to player at volume 0.5
  4961. play "NOTE_PLING" to {mineplex.lasta.%player%} at volume 0.5
  4962. loop all players:
  4963. if loop-player has permission "mineplex.trainee":
  4964. if loop-player is not player or {mineplex.lasta.%player%}:
  4965. send "%{_display}% &d-> %{_display2}% &d%arg 1%" to loop-player
  4966. else:
  4967. send "&9Message> &cErr...something went wrong?"
  4968.  
  4969. command /vanish:
  4970. aliases: /incognito
  4971. permission: mineplex.trainee
  4972. permission message: &9Permissions> &7You do not have permission to do that.
  4973. trigger:
  4974. if {mineplex.vanish.%player%} is true:
  4975. loop all players:
  4976. loop-value doesn't have permission "mineplex.admin"
  4977. add loop-value to {_vanishto::*}
  4978.  
  4979. reveal player from all players
  4980. set {mineplex.vanish.%player%} to false
  4981. send "&9Moderation> &7Disabled moderator mode."
  4982. send "&9Incognito> &7You are no longer incognito. Your status will only change when you run &e/vanish &7again."
  4983. else:
  4984. loop all players:
  4985. loop-value doesn't have permission "mineplex.admin"
  4986. add loop-value to {_vanishto::*}
  4987.  
  4988. hide player from {_vanishto::*}
  4989. set {mineplex.vanish.%player%} to true
  4990. send "&9Moderation> &7Enabled moderator mode."
  4991. send "&9Incognito> &7You are now incognito. Your status will only change when you run &e/vanish &7again."
  4992.  
  4993. function friendButtons(p: player) :: number:
  4994. set {_t} to "Steve" parsed as an offline player
  4995. set slot 0 of {_p}'s current inventory to {_t}'s skull named "&fFriends" with lore ""
  4996. set slot 2 of {_p}'s current inventory to rose named "&fFriend Requests" with lore ""
  4997. set slot 4 of {_p}'s current inventory to tnt named "&fDelete Friends" with lore ""
  4998. set slot 6 of {_p}'s current inventory to book and quill named "&fSend Friend Request" with lore ""
  4999. set slot 8 of {_p}'s current inventory to sign item named "&7Toggle friends to display in chat" with lore ""
  5000.  
  5001. function friendClean(p: player) :: number:
  5002. set {_s} to 18
  5003. loop 27 times:
  5004. set slot {_s} of {_p}'s current inventory to air
  5005. add 1 to {_s}
  5006. if {_s} = 44:
  5007. exit loop
  5008. friendButtons({_p})
  5009.  
  5010. function friendMain(p: player) :: number:
  5011. open chest with 6 rows named "Friends" to {_p}
  5012. friendClean({_p})
  5013. set {_s} to 18
  5014. loop {friends.list.%{_p}%::*}:
  5015. set {_t} to "%loop-value%" parsed as offline player
  5016. if {_t} is online:
  5017. set {_a} to "&2Online"
  5018. set {_w} to "&e%{_t}'s world%"
  5019. set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7&lServer: %{_w}%|| ||&7Left click to teleport to their server"
  5020. else:
  5021. set {_a} to "&cOffline"
  5022. set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7Last seen N/A Days ago"
  5023. add 1 to {_s}
  5024. if {_s} = 44:
  5025. exit loop
  5026.  
  5027. function friendDel(p: player) :: number:
  5028. open chest with 6 rows named "Delete Friends" to {_p}
  5029. friendClean({_p})
  5030. set {_s} to 18
  5031. loop {friends.list.%{_p}%::*}:
  5032. set {_t} to "%loop-value%" parsed as offline player
  5033. if {_t} is online:
  5034. set {_a} to "&2Online"
  5035. set {_w} to "&e%{_t}'s world%"
  5036. set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7&lServer: %{_w}%|| ||&7Left click to teleport to their server"
  5037. else:
  5038. set {_a} to "&cOffline"
  5039. set slot {_s} of {_p}'s current inventory to {_t}'s skull named "&f&l%{_t}%" with lore "&7&lStatus: %{_a}%||&7Last seen N/A Days ago"
  5040. add 1 to {_s}
  5041. if {_s} = 44:
  5042. exit loop
  5043.  
  5044. function friendReq(p: player) :: number:
  5045. open chest with 6 rows named "Friend Requests" to {_p}
  5046. friendClean({_p})
  5047. set {_s} to 18
  5048. loop {friends.request.%{_p}%::*}:
  5049. set {_t} to "%loop-value%" parsed as offline player
  5050. set slot {_s} of {_p}'s current inventory to paper named "&7Friend request from &f&l%{_t}%" with lore "||&7Left click to accept friend request"
  5051. add 1 to {_s}
  5052. if {_s} = 44:
  5053. exit loop
  5054.  
  5055. command /friend [<string>] [<string>]:
  5056. aliases: /f
  5057. trigger:
  5058. if arg 1 is not set:
  5059. friendMain(player)
  5060. else:
  5061. if arg 1 is "%player%":
  5062. send "&9Friends> &7You cannot friend yourself!"
  5063. stop
  5064. stop
  5065. loop {friends.list.%arg-1%::*}:
  5066. if loop-value is "%player%":
  5067. set {_f} to true
  5068. loop {friends.request.%arg-1%::*}:
  5069. if loop-value is "%player%":
  5070. set {_a} to true
  5071. if {_a} is true:
  5072. send "&9Friends> &a%arg-1% &7has yet to respond to your friend request."
  5073. else if {_f} is true:
  5074. send "&9Friends> &7You are already friends with &a%arg-1%"
  5075. else:
  5076. add "%player%" to {friends.request.%arg-1%::*}
  5077. send "&9Friends> &7Added &a%arg-1% &7to your friends list!"
  5078.  
  5079. on inventory click:
  5080. if inventory name of player's current inventory is "Friends":
  5081. if clicked slot is 2:
  5082. friendReq(player)
  5083. if clicked slot is 4:
  5084. friendDel(player)
  5085. cancel event
  5086. if inventory name of player's current inventory is "Friend Requests":
  5087. if clicked slot is 0:
  5088. friendMain(player)
  5089. if clicked slot is 4:
  5090. friendDel(player)
  5091. else:
  5092. set {_n} to name of clicked item
  5093. if {_n} contains "&7Friend request from ":
  5094. replace all "&7Friend request from " with "" in {_n}
  5095. set {_f} to uncolored {_n}
  5096. remove {_f} from {friends.request.%player%::*}
  5097. add {_f} to {friends.list.%player%::*}
  5098. add "%player%" to {friends.list.%{_f}%::*}
  5099. send "&9Friends> &aYou &7and &a%{_f}% &7are now friends!"
  5100. friendReq(player)
  5101. cancel event
  5102. if inventory name of player's current inventory is "Delete Friends":
  5103. if clicked slot is 0:
  5104. friendMain(player)
  5105. if clicked slot is 2:
  5106. friendReq(player)
  5107. else:
  5108. if "%clicked item%" is "player head":
  5109. if clicked slot is not 0:
  5110. set {_n} to name of clicked item
  5111. set {_f} to uncolored {_n}
  5112. replace all " " with "" in {_f}
  5113. remove {_f} from {friends.list.%player%::*}
  5114. remove {_f} from {friends.list.%{_l}%::*}
  5115. send "&9Friends> &7Deleted &a%{_f}% &7from your friends list!"
  5116. friendDel(player)
  5117. cancel event
  5118.  
  5119. command /chatslow [<integer>]:
  5120. aliases: /cs
  5121. permission: mineplex.srmod
  5122. permission message: &9Permissions> &7You do not have permission to do that.
  5123. trigger:
  5124. if {mineplex.disguise.%player%} is set:
  5125. set {_p} to {mineplex.disguise.%player%}
  5126. else:
  5127. set {_p} to player
  5128. if argument 1 is set:
  5129. if {mineplex.chatsilence} is set:
  5130. send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat."
  5131. stop
  5132. else:
  5133. if {mineplex.chatslow} is not set:
  5134. set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan
  5135. send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players
  5136. else:
  5137. set {mineplex.chatslow} to "%arg-2% seconds" parsed as timespan
  5138. send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players
  5139. send "&9Chat> &6%{_p}% &7has set the chat delay to &6%arg-1%&7 seconds." to all players
  5140. else:
  5141. if {mineplex.chatsilence} is set:
  5142. send "&9Chat> &7Chat is in silence mode. Disable silence mode to activate slow chat."
  5143. stop
  5144. else:
  5145. if {mineplex.chatslow} is set:
  5146. delete {mineplex.chatslow}
  5147. send "&9Chat> &6%{_p}% &7has disabled chat slow." to all players
  5148. else:
  5149. send "&9Message> &cYou didn't enter a time limit! Defaulting to 10 seconds."
  5150. set {mineplex.chatslow} to "10 seconds" parsed as timespan
  5151. send "&9Chat> &6%{_p}% &7has enabled chat slow." to all players
  5152. send "&9Chat> &6%{_p}% &7has set the chat delay to &610 &7seconds." to all players
  5153. command /silence:
  5154. permission: mineplex.admin
  5155. permission message: &9Permissions> &7You do not have permission to do that.
  5156. trigger:
  5157. if {mineplex.chatslow} is set:
  5158. delete {mineplex.chatslow}
  5159. send "&9Chat> &6%player% &7has disabled chat slow." to all players
  5160. set {mineplex.chatsilence} to true
  5161. send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players
  5162. stop
  5163. if {mineplex.chatsilence} is set:
  5164. delete {mineplex.chatsilence}
  5165. send "&9Chat> &7The chat is no longer silenced." to all players
  5166. else:
  5167. set {mineplex.chatsilence} to true
  5168. send "&9Chat> &7The chat has been silenced for &aPermanent&7." to all players
  5169.  
  5170. command /locate [<string>]:
  5171. aliases: /find, /where
  5172. permission: mineplex.trainee
  5173. permission message: &9Permissions> &7You do not have permission to do that.
  5174. trigger:
  5175. if argument 1 is set:
  5176. set {_tmp} to arg 1 parsed as an offline player
  5177. if {_tmp} is online:
  5178. set {_mineplex.locate.temp} to "%{_tmp}'s world%"
  5179. send "&9Locate> &7Located [&e%arg-1%&7] at &9%{_mineplex.locate.temp}%"
  5180. else:
  5181. send "&9Locate> &7Failed to locate [&e%arg-1%&7]."
  5182. else:
  5183. send "&9Locate> &7Player argument missing."
  5184.  
  5185. command /rank [<string>] [<offline player>] [<string>]:
  5186. permission: mineplex.admin
  5187. permission message: &9Permissions> &7You do not have permission to do that.
  5188. trigger:
  5189. if argument 1 is not set:
  5190. send "&9Client Manager> &7Listing Commands:"
  5191. send "&4/rank set <player> <rank>: &fSets the target users' rank"
  5192. send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank"
  5193. stop
  5194. if argument 1 is not "set" or "test":
  5195. send "&9Client Manager> &7Listing Commands:"
  5196. send "&4/rank set <player> <rank>: &fSets the target users' rank"
  5197. send "&4/rank test <player> <rank>: &fTemporarily sets the target users' rank"
  5198. stop
  5199. if argument 1 is "set":
  5200. if argument 2 or argument 3 is not set:
  5201. send "&9Client Manager> &7Listing Rank Update Commands:"
  5202. send "&f/rank set (player) (rank): &eupdates chosen player's rank to the chosen rank"
  5203. send ""
  5204. send "&9Rank Update> &7Listing Rank List:"
  5205. send "&9Ranks> &7ALL"
  5206. send "&9Ranks> &7ULTRA"
  5207. send "&9Ranks> &7HERO"
  5208. send "&9Ranks> &7LEGEND"
  5209. send "&9Ranks> &7TITAN"
  5210. send "&9Ranks> &7ETERNAL"
  5211. send "&9Ranks> &7TRAINEE"
  5212. send "&9Ranks> &7MODERATOR"
  5213. send "&9Ranks> &7SNR_MODERATOR"
  5214. send "&9Ranks> &7CLANS_MOD"
  5215. send "&9Ranks> &7JNR_DEV"
  5216. send "&9Ranks> &7SUPPORT"
  5217. send "&9Ranks> &7ADMIN"
  5218. send "&9Ranks> &7LEADER"
  5219. send "&9Ranks> &7DEVELOPER"
  5220. send "&9Ranks> &7OWNER"
  5221. send "&9Ranks> &7ARTIST"
  5222. send "&9Ranks> &7MAPLEAD"
  5223. send "&9Ranks> &7BUILDER"
  5224. send "&9Ranks> &7MAPPER"
  5225. send "&9Ranks> &7EVENT"
  5226. send "&9Ranks> &7TWITCH"
  5227. send "&9Ranks> &7YOUTUBE"
  5228. send "&9Ranks> &7YT"
  5229. set {_uuid} to uuid of arg-2
  5230. set {_allcap} to convert "%arg-3%" to all caps
  5231. if argument 3 is "ALL":
  5232. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5233. if {_c} is true:
  5234. set {mineplex.rank.%arg-2%} to ""
  5235. execute console command "/__mp__dp__ %arg-2%"
  5236. send "&9Client Manager> &7%arg-2%'s rank has been updated to None!"
  5237. send "&9Client Manager> &7Your rank has been updated to None!" to arg 2
  5238. set arg-2 tab name to "&e%arg-2%"
  5239. updateRankAPI(arg-2)
  5240. setPlayerdata(arg-2, "rank", "All")
  5241. else:
  5242. send "&9Client Manager> &c&lInvalid rank!"
  5243. else if argument 3 is "ULTRA":
  5244. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5245. if {_c} is true:
  5246. set {mineplex.rank.%arg-2%} to "&b&lULTRA "
  5247. execute console command "/__mp__dp__ %arg-2%"
  5248. send "&9Client Manager> &7%arg-2%'s rank has been updated to Ultra!"
  5249. send "&9Client Manager> &7Your rank has been updated to Ultra!" to arg 2
  5250. set arg-2 tab name to "&b&lULTRA &e%arg-2%"
  5251. updateRankAPI(arg-2)
  5252. setPlayerdata(arg-2, "rank", "Ultra")
  5253. else:
  5254. send "&9Client Manager> &c&lInvalid rank!"
  5255. else if argument 3 is "HERO":
  5256. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5257. if {_c} is true:
  5258. set {mineplex.rank.%arg-2%} to "&d&lHERO "
  5259. execute console command "/__mp__dp__ %arg-2%"
  5260. send "&9Client Manager> &7%arg-2%'s rank has been updated to Hero!"
  5261. send "&9Client Manager> &7Your rank has been updated to Hero!" to arg 2
  5262. set arg-2 tab name to "&d&lHERO &e%arg-2%"
  5263. updateRankAPI(arg-2)
  5264. setPlayerdata(arg-2, "rank", "Hero")
  5265. else:
  5266. send "&9Client Manager> &c&lInvalid rank!"
  5267. else if argument 3 is "LEGEND":
  5268. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5269. if {_c} is true:
  5270. set {mineplex.rank.%arg-2%} to "&a&lLEGEND "
  5271. execute console command "/__mp__dp__ %arg-2%"
  5272. add "mineplex.legend" to arg-2's permissions
  5273. send "&9Client Manager> &7%arg-2%'s rank has been updated to Legend!"
  5274. send "&9Client Manager> &7Your rank has been updated to Legend!" to arg 2
  5275. set arg-2 tab name to "&a&lLEGEND &e%arg-2%"
  5276. updateRankAPI(arg-2)
  5277. setPlayerdata(arg-2, "rank", "Legend")
  5278. else:
  5279. send "&9Client Manager> &c&lInvalid rank!"
  5280. else if argument 3 is "TITAN":
  5281. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5282. if {_c} is true:
  5283. set {mineplex.rank.%arg-2%} to "&c&lTITAN "
  5284. execute console command "/__mp__dp__ %arg-2%"
  5285. add "mineplex.legend" to arg-2's permissions
  5286. add "mineplex.titan" to arg-2's permissions
  5287. send "&9Client Manager> &7%arg-2%'s rank has been updated to Titan!"
  5288. send "&9Client Manager> &7Your rank has been updated to Titan!" to arg 2
  5289. set arg-2 tab name to "&c&lTITAN &e%arg-2%"
  5290. updateRankAPI(arg-2)
  5291. setPlayerdata(arg-2, "rank", "Titan")
  5292. else:
  5293. send "&9Client Manager> &c&lInvalid rank!"
  5294. else if argument 3 is "ETERNAL":
  5295. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5296. if {_c} is true:
  5297. set {mineplex.rank.%arg-2%} to "&3&lETERNAL "
  5298. execute console command "/__mp__dp__ %arg-2%"
  5299. add "mineplex.legend" to arg-2's permissions
  5300. add "mineplex.titan" to arg-2's permissions
  5301. send "&9Client Manager> &7%arg-2%'s rank has been updated to Eternal!"
  5302. send "&9Client Manager> &7Your rank has been updated to Eternal!" to arg 2
  5303. set arg-2 tab name to "&3&lETERNAL &e%arg-2%"
  5304. updateRankAPI(arg-2)
  5305. setPlayerdata(arg-2, "rank", "Eternal")
  5306. else:
  5307. send "&9Client Manager> &c&lInvalid rank!"
  5308. else if argument 3 is "TRAINEE":
  5309. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5310. if {_c} is true:
  5311. set {mineplex.rank.%arg-2%} to "&6&lTRAINEE "
  5312. execute console command "/__mp__dp__ %arg-2%"
  5313. add "mineplex.trainee" to arg-2's permissions
  5314. add "mineplex.legend" to arg-2's permissions
  5315. add "mineplex.titan" to arg-2's permissions
  5316. add "mineplex.2fa" to arg-2's permissions
  5317. send "&9Client Manager> &7%arg-2%'s rank has been updated to Trainee!"
  5318. send "&9Client Manager> &7Your rank has been updated to Trainee!" to arg 2
  5319. set arg-2 tab name to "&6&lTRAINEE &e%arg-2%"
  5320. updateRankAPI(arg-2)
  5321. setPlayerdata(arg-2, "rank", "Trainee")
  5322. else:
  5323. send "&9Client Manager> &c&lInvalid rank!"
  5324. else if argument 3 is "MODERATOR":
  5325. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5326. if {_c} is true:
  5327. set {mineplex.rank.%arg-2%} to "&6&lMOD "
  5328. execute console command "/__mp__dp__ %arg-2%"
  5329. add "mineplex.trainee" to arg-2's permissions
  5330. add "mineplex.mod" to arg-2's permissions
  5331. add "mineplex.legend" to arg-2's permissions
  5332. add "mineplex.2fa" to arg-2's permissions
  5333. add "mineplex.titan" to arg-2's permissions
  5334. send "&9Client Manager> &7%arg-2%'s rank has been updated to Mod!"
  5335. send "&9Client Manager> &7Your rank has been updated to Mod!" to arg 2
  5336. set arg-2 tab name to "&6&lMOD &e%arg-2%"
  5337. updateRankAPI(arg-2)
  5338. setPlayerdata(arg-2, "rank", "Mod")
  5339. else:
  5340. send "&9Client Manager> &c&lInvalid rank!"
  5341. else if argument 3 is "SNR_MODERATOR":
  5342. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5343. if {_c} is true:
  5344. set {mineplex.rank.%arg-2%} to "&6&lSR.MOD "
  5345. execute console command "/__mp__dp__ %arg-2%"
  5346. add "mineplex.trainee" to arg-2's permissions
  5347. add "mineplex.mod" to arg-2's permissions
  5348. add "mineplex.srmod" to arg-2's permissions
  5349. add "mineplex.legend" to arg-2's permissions
  5350. add "mineplex.2fa" to arg-2's permissions
  5351. add "mineplex.titan" to arg-2's permissions
  5352. send "&9Client Manager> &7%arg-2%'s rank has been updated to Sr.Mod!"
  5353. send "&9Client Manager> &7Your rank has been updated to Sr.Mod!" to arg 2
  5354. set arg-2 tab name to "&6&lSR.MOD &e%arg-2%"
  5355. updateRankAPI(arg-2)
  5356. set "rank" to "SrMod" in yaml file "plugins/Mineplex-Core-Remake/playerdata/%{_uuid}%.yml"
  5357. setPlayerdata(arg-2, "rank", "SrMod")
  5358. else:
  5359. send "&9Client Manager> &c&lInvalid rank!"
  5360. else if argument 3 is "CLANS_MOD":
  5361. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5362. if {_c} is true:
  5363. set {mineplex.rank.%arg-2%} to "&6&lC.MOD "
  5364. execute console command "/__mp__dp__ %arg-2%"
  5365. add "mineplex.trainee" to arg-2's permissions
  5366. add "mineplex.mod" to arg-2's permissions
  5367. add "mineplex.srmod" to arg-2's permissions
  5368. add "mineplex.legend" to arg-2's permissions
  5369. add "mineplex.2fa" to arg-2's permissions
  5370. add "mineplex.titan" to arg-2's permissions
  5371. send "&9Client Manager> &7%arg-2%'s rank has been updated to C.Mod!"
  5372. send "&9Client Manager> &7Your rank has been updated to C.Mod!" to arg 2
  5373. set arg-2 tab name to "&6&lC.MOD &e%arg-2%"
  5374. updateRankAPI(arg-2)
  5375. setPlayerdata(arg-2, "rank", "CMod")
  5376. else:
  5377. send "&9Client Manager> &c&lInvalid rank!"
  5378. else if argument 3 is "ADMIN":
  5379. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5380. if {_c} is true:
  5381. set {mineplex.rank.%arg-2%} to "&4&lADMIN "
  5382. execute console command "/__mp__dp__ %arg-2%"
  5383. add "mineplex.trainee" to arg-2's permissions
  5384. add "mineplex.legend" to arg-2's permissions
  5385. add "mineplex.mod" to arg-2's permissions
  5386. add "mineplex.jrdev" to arg-2's permissions
  5387. add "mineplex.youtube" to arg-2's permissions
  5388. add "mineplex.builder" to arg-2's permissions
  5389. add "mineplex.srmod" to arg-2's permissions
  5390. add "mineplex.admin" to arg-2's permissions
  5391. add "mineplex.titan" to arg-2's permissions
  5392. add "mineplex.2fa" to arg-2's permissions
  5393. send "&9Client Manager> &7%arg-2%'s rank has been updated to Admin!"
  5394. send "&9Client Manager> &7Your rank has been updated to Admin!" to arg 2
  5395. set arg-2 tab name to "&4&lADMIN &e%arg-2%"
  5396. updateRankAPI(arg-2)
  5397. setPlayerdata(arg-2, "rank", "Admin")
  5398. else:
  5399. send "&9Client Manager> &c&lInvalid rank!"
  5400. else if argument 3 is "APEX":
  5401. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5402. if {_c} is true:
  5403. set {mineplex.rank.%arg-2%} to "&9&lAPEX "
  5404. execute console command "/__mp__dp__ %arg-2%"
  5405. add "mineplex.trainee" to arg-2's permissions
  5406. add "mineplex.legend" to arg-2's permissions
  5407. add "mineplex.mod" to arg-2's permissions
  5408. add "mineplex.jrdev" to arg-2's permissions
  5409. add "mineplex.youtube" to arg-2's permissions
  5410. add "mineplex.builder" to arg-2's permissions
  5411. add "mineplex.srmod" to arg-2's permissions
  5412. add "mineplex.admin" to arg-2's permissions
  5413. add "mineplex.titan" to arg-2's permissions
  5414. add "mineplex.2fa" to arg-2's permissions
  5415. send "&9Client Manager> &7%arg-2%'s rank has been updated to Apex Minecraft Hosting!"
  5416. send "&9Client Manager> &7Your rank has been updated to Apex Minecraft Hosting!" to arg 2
  5417. set arg-2 tab name to "&9&lAPEX &e%arg-2%"
  5418. updateRankAPI(arg-2)
  5419. setPlayerdata(arg-2, "rank", "Apex")
  5420. else:
  5421. send "&9Client Manager> &c&lInvalid rank!"
  5422. else if argument 3 is "LEADER":
  5423. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5424. if {_c} is true:
  5425. set {mineplex.rank.%arg-2%} to "&4&lLEADER "
  5426. execute console command "/__mp__dp__ %arg-2%"
  5427. add "mineplex.trainee" to arg-2's permissions
  5428. add "mineplex.mod" to arg-2's permissions
  5429. add "mineplex.jrdev" to arg-2's permissions
  5430. add "mineplex.builder" to arg-2's permissions
  5431. add "mineplex.srmod" to arg-2's permissions
  5432. add "mineplex.admin" to arg-2's permissions
  5433. add "mineplex.youtube" to arg-2's permissions
  5434. add "mineplex.legend" to arg-2's permissions
  5435. add "mineplex.2fa" to arg-2's permissions
  5436. add "mineplex.leader" to arg-2's permissions
  5437. add "mineplex.titan" to arg-2's permissions
  5438. send "&9Client Manager> &7%arg-2%'s rank has been updated to Leader!"
  5439. send "&9Client Manager> &7Your rank has been updated to Leader!" to arg 2
  5440. set arg-2 tab name to "&4&lLEADER &e%arg-2%"
  5441. updateRankAPI(arg-2)
  5442. setPlayerdata(arg-2, "rank", "Leader")
  5443. else:
  5444. send "&9Client Manager> &c&lInvalid rank!"
  5445. else if argument 3 is "OWNER":
  5446. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5447. if {_c} is true:
  5448. set {mineplex.rank.%arg-2%} to "&4&lOWNER "
  5449. execute console command "/__mp__dp__ %arg-2%"
  5450. add "mineplex.trainee" to arg-2's permissions
  5451. add "mineplex.mod" to arg-2's permissions
  5452. add "mineplex.srmod" to arg-2's permissions
  5453. add "mineplex.admin" to arg-2's permissions
  5454. add "mineplex.jrdev" to arg-2's permissions
  5455. add "mineplex.dev" to arg-2's permissions
  5456. add "mineplex.youtube" to arg-2's permissions
  5457. add "mineplex.builder" to arg-2's permissions
  5458. add "mineplex.leader" to arg-2's permissions
  5459. add "mineplex.jrdev" to arg-2's permissions
  5460. add "mineplex.2fa" to arg-2's permissions
  5461. add "mineplex.owner" to arg-2's permissions
  5462. add "mineplex.legend" to arg-2's permissions
  5463. add "mineplex.titan" to arg-2's permissions
  5464. send "&9Client Manager> &7%arg-2%'s rank has been updated to Owner!"
  5465. send "&9Client Manager> &7Your rank has been updated to Owner!" to arg 2
  5466. set arg-2 tab name to "&4&lOWNER &e%arg-2%"
  5467. updateRankAPI(arg-2)
  5468. setPlayerdata(arg-2, "rank", "Owner")
  5469. else:
  5470. send "&9Client Manager> &c&lInvalid rank!"
  5471. else if argument 3 is "BUILDER":
  5472. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5473. if {_c} is true:
  5474. set {mineplex.rank.%arg-2%} to "&9&lBUILDER "
  5475. execute console command "/__mp__dp__ %arg-2%"
  5476. add "mineplex.titan" to arg-2's permissions
  5477. add "mineplex.legend" to arg-2's permissions
  5478. add "mineplex.2fa" to arg-2's permissions
  5479. send "&9Client Manager> &7%arg-2%'s rank has been updated to Builder!"
  5480. send "&9Client Manager> &7Your rank has been updated to Builder!" to arg 2
  5481. set arg-2 tab name to "&9&lBUIDLER &e%arg-2%"
  5482. updateRankAPI(arg-2)
  5483. setPlayerdata(arg-2, "rank", "Builder")
  5484. else:
  5485. send "&9Client Manager> &c&lInvalid rank!"
  5486. else if argument 3 is "MAPPER":
  5487. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5488. if {_c} is true:
  5489. set {mineplex.rank.%arg-2%} to "&9&lMAPPER "
  5490. execute console command "/__mp__dp__ %arg-2%"
  5491. add "mineplex.builder" to arg-2's permissions
  5492. add "mineplex.titan" to arg-2's permissions
  5493. add "mineplex.legend" to arg-2's permissions
  5494. add "mineplex.2fa" to arg-2's permissions
  5495. send "&9Client Manager> &7%arg-2%'s rank has been updated to Mapper!"
  5496. send "&9Client Manager> &7Your rank has been updated to Mapper!" to arg 2
  5497. set arg-2 tab name to "&9&lMAPPER &e%arg-2%"
  5498. updateRankAPI(arg-2)
  5499. setPlayerdata(arg-2, "rank", "Mapper")
  5500. else:
  5501. send "&9Client Manager> &c&lInvalid rank!"
  5502. else if argument 3 is "SUPPORT":
  5503. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5504. if {_c} is true:
  5505. set {mineplex.rank.%arg-2%} to "&9&lSUPPORT "
  5506. execute console command "/__mp__dp__ %arg-2%"
  5507. add "mineplex.trainee" to arg-2's permissions
  5508. add "mineplex.legend" to arg-2's permissions
  5509. add "mineplex.jrdev" to arg-2's permissions
  5510. add "mineplex.2fa" to arg-2's permissions
  5511. add "mineplex.mod" to arg-2's permissions
  5512. add "mineplex.youtube" to arg-2's permissions
  5513. add "mineplex.builder" to arg-2's permissions
  5514. add "mineplex.srmod" to arg-2's permissions
  5515. add "mineplex.admin" to arg-2's permissions
  5516. add "mineplex.titan" to arg-2's permissions
  5517. send "&9Client Manager> &7%arg-2%'s rank has been updated to Support!"
  5518. send "&9Client Manager> &7Your rank has been updated to Support!" to arg 2
  5519. set arg-2 tab name to "&9&lSUPPORT &e%arg-2%"
  5520. updateRankAPI(arg-2)
  5521. setPlayerdata(arg-2, "rank", "Support")
  5522. else:
  5523. send "&9Client Manager> &c&lInvalid rank!"
  5524. else if argument 3 is "ARTIST":
  5525. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5526. if {_c} is true:
  5527. set {mineplex.rank.%arg-2%} to "&9&lARTIST "
  5528. execute console command "/__mp__dp__ %arg-2%"
  5529. add "mineplex.legend" to arg-2's permissions
  5530. add "mineplex.titan" to arg-2's permissions
  5531. send "&9Client Manager> &7%arg-2%'s rank has been updated to Artist!"
  5532. send "&9Client Manager> &7Your rank has been updated to Artist!" to arg 2
  5533. set arg-2 tab name to "&9&lARTIST &e%arg-2%"
  5534. updateRankAPI(arg-2)
  5535. setPlayerdata(arg-2, "rank", "Artist")
  5536. else:
  5537. send "&9Client Manager> &c&lInvalid rank!"
  5538. else if argument 3 is "MAPLEAD":
  5539. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5540. if {_c} is true:
  5541. set {mineplex.rank.%arg-2%} to "&9&lMAPLEAD "
  5542. execute console command "/__mp__dp__ %arg-2%"
  5543. add "mineplex.builder" to arg-2's permissions
  5544. add "mineplex.2fa" to arg-2's permissions
  5545. add "mineplex.titan" to arg-2's permissions
  5546. add "mineplex.legend" to arg-2's permissions
  5547. send "&9Client Manager> &7%arg-2%'s rank has been updated to MapLead!"
  5548. send "&9Client Manager> &7Your rank has been updated to MapLead!" to arg 2
  5549. set arg-2 tab name to "&9&lMAPLEAD &e%arg-2%"
  5550. updateRankAPI(arg-2)
  5551. setPlayerdata(arg-2, "rank", "Maplead")
  5552. else:
  5553. send "&9Client Manager> &c&lInvalid rank!"
  5554. else if argument 3 is "JNR_DEV":
  5555. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5556. if {_c} is true:
  5557. set {mineplex.rank.%arg-2%} to "&6&lJR.DEV "
  5558. execute console command "/__mp__dp__ %arg-2%"
  5559. add "mineplex.trainee" to arg-2's permissions
  5560. add "mineplex.mod" to arg-2's permissions
  5561. add "mineplex.srmod" to arg-2's permissions
  5562. add "mineplex.2fa" to arg-2's permissions
  5563. add "mineplex.builder" to arg-2's permissions
  5564. add "mineplex.jrdev" to arg-2's permissions
  5565. add "mineplex.legend" to arg-2's permissions
  5566. add "mineplex.titan" to arg-2's permissions
  5567. send "&9Client Manager> &7%arg-2%'s rank has been updated to Jr.Dev!"
  5568. send "&9Client Manager> &7Your rank has been updated to Jr.Dev!" to arg 2
  5569. set arg-2 tab name to "&6&lJR.DEV &e%arg-2%"
  5570. updateRankAPI(arg-2)
  5571. setPlayerdata(arg-2, "rank", "JrDev")
  5572. else:
  5573. send "&9Client Manager> &c&lInvalid rank!"
  5574. else if argument 3 is "DEVELOPER":
  5575. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5576. if {_c} is true:
  5577. set {mineplex.rank.%arg-2%} to "&4&lDEV "
  5578. execute console command "/__mp__dp__ %arg-2%"
  5579. add "mineplex.trainee" to arg-2's permissions
  5580. add "mineplex.mod" to arg-2's permissions
  5581. add "mineplex.srmod" to arg-2's permissions
  5582. add "mineplex.jrdev" to arg-2's permissions
  5583. add "mineplex.2fa" to arg-2's permissions
  5584. add "mineplex.admin" to arg-2's permissions
  5585. add "mineplex.leader" to arg-2's permissions
  5586. add "mineplex.owner" to arg-2's permissions
  5587. add "mineplex.builder" to arg-2's permissions
  5588. add "mineplex.dev" to arg-2's permissions
  5589. add "mineplex.youtube" to arg-2's permissions
  5590. add "mineplex.admin" to arg-2's permissions
  5591. add "mineplex.legend" to arg-2's permissions
  5592. add "mineplex.titan" to arg-2's permissions
  5593. send "&9Client Manager> &7%arg-2%'s rank has been updated to Dev!"
  5594. send "&9Client Manager> &7Your rank has been updated to Dev!" to arg 2
  5595. set arg-2 tab name to "&4&lDEV &e%arg-2%"
  5596. updateRankAPI(arg-2)
  5597. setPlayerdata(arg-2, "rank", "Dev")
  5598. else:
  5599. send "&9Client Manager> &c&lInvalid rank!"
  5600. else if argument 3 is "TWITCH":
  5601. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5602. if {_c} is true:
  5603. set {mineplex.rank.%arg-2%} to "&5&lTWITCH "
  5604. execute console command "/__mp__dp__ %arg-2%"
  5605. add "mineplex.twitch" to arg-2's permissions
  5606. add "mineplex.legend" to arg-2's permissions
  5607. add "mineplex.titan" to arg-2's permissions
  5608. add "mineplex.youtube" to arg-2's permissions
  5609. send "&9Client Manager> &7%arg-2%'s rank has been updated to Twitch!"
  5610. send "&9Client Manager> &7Your rank has been updated to Twitch!" to arg 2
  5611. set arg-2 tab name to "&5&lTWITCH &e%arg-2%"
  5612. updateRankAPI(arg-2)
  5613. setPlayerdata(arg-2, "rank", "Twitch")
  5614. else:
  5615. send "&9Client Manager> &c&lInvalid rank!"
  5616. else if argument 3 is "YOUTUBE":
  5617. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5618. if {_c} is true:
  5619. set {mineplex.rank.%arg-2%} to "&c&lYOUTUBE "
  5620. execute console command "/__mp__dp__ %arg-2%"
  5621. add "mineplex.youtube" to arg-2's permissions
  5622. add "mineplex.legend" to arg-2's permissions
  5623. add "mineplex.titan" to arg-2's permissions
  5624. send "&9Client Manager> &7%arg-2%'s rank has been updated to YouTube!"
  5625. send "&9Client Manager> &7Your rank has been updated to YouTube!" to arg 2
  5626. set arg-2 tab name to "&c&lYOUTUBE &e%arg-2%"
  5627. updateRankAPI(arg-2)
  5628. setPlayerdata(arg-2, "rank", "Youtube")
  5629. else:
  5630. send "&9Client Manager> &c&lInvalid rank!"
  5631. else if argument 3 is "EVENT":
  5632. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5633. if {_c} is true:
  5634. set {mineplex.rank.%arg-2%} to "&f&lEVENT "
  5635. execute console command "/__mp__dp__ %arg-2%"
  5636. add "mineplex.youtube" to arg-2's permissions
  5637. add "mineplex.legend" to arg-2's permissions
  5638. add "mineplex.titan" to arg-2's permissions
  5639. send "&9Client Manager> &7%arg-2%'s rank has been updated to Event!"
  5640. send "&9Client Manager> &7Your rank has been updated to Event!" to arg 2
  5641. set arg-2 tab name to "&f&lEVENT &e%arg-2%"
  5642. updateRankAPI(arg-2)
  5643. setPlayerdata(arg-2, "rank", "Event")
  5644. else:
  5645. send "&9Client Manager> &c&lInvalid rank!"
  5646. else if argument 3 is "YT":
  5647. set {_c} to caseSensitive("%arg-3%", "%{_allcap}%")
  5648. if {_c} is true:
  5649. set {mineplex.rank.%arg-2%} to "&5&lYT "
  5650. execute console command "/__mp__dp__ %arg-2%"
  5651. add "mineplex.youtube" to arg-2's permissions
  5652. add "mineplex.legend" to arg-2's permissions
  5653. add "mineplex.titan" to arg-2's permissions
  5654. send "&9Client Manager> &7%arg-2%'s rank has been updated to YT!"
  5655. send "&9Client Manager> &7Your rank has been updated to YT!" to arg 2
  5656. set arg-2 tab name to "&5&lYT &e%arg-2%"
  5657. updateRankAPI(arg-2)
  5658. setPlayerdata(arg-2, "rank", "Yt")
  5659. else:
  5660. send "&9Client Manager> &c&lInvalid rank!"
  5661. else:
  5662. send "&9Client Manager> &c&lInvalid rank!"
  5663. rankLoad(arg-2, 2, 0)
  5664. else if argument 1 is "test":
  5665. if arg-2 or arg-3 is not set:
  5666. send "&9/rank test <player> <rank>: Temporarily sets the target users' rank"
  5667. else:
  5668. if arg 2 is online:
  5669. if {mineplex.testrank.%arg-2%} is not set:
  5670. if arg 3 is "ULTRA":
  5671. set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
  5672. set {mineplex.rank.%arg-2%} to "&b&lULTRA "
  5673. execute console command "/__mp__dp__ %arg-2%"
  5674. set {_or} to uncolored {mineplex.testrank.%arg-2%}
  5675. send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
  5676. send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
  5677. send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
  5678. send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
  5679. set arg-2 tab name to "&b&lULTRA &e%arg-2%"
  5680. updateRankAPI(arg-2)
  5681. wait 5 ticks
  5682. rankLoad(arg-2, 2, 1)
  5683. else if arg 3 is "HERO":
  5684. set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
  5685. set {mineplex.rank.%arg-2%} to "&d&lHERO "
  5686. execute console command "/__mp__dp__ %arg-2%"
  5687. set {_or} to uncolored {mineplex.testrank.%arg-2%}
  5688. send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
  5689. send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
  5690. send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
  5691. send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
  5692. set arg-2 tab name to "&d&lHERO &e%arg-2%"
  5693. updateRankAPI(arg-2)
  5694. wait 5 ticks
  5695. rankLoad(arg-2, 2, 1)
  5696. else if arg 3 is "LEGEND":
  5697. set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
  5698. set {mineplex.rank.%arg-2%} to "&a&lLEGEND "
  5699. execute console command "/__mp__dp__ %arg-2%"
  5700. set {_or} to uncolored {mineplex.testrank.%arg-2%}
  5701. send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
  5702. send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
  5703. send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
  5704. send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
  5705. set arg-2 tab name to "&a&lLEGEND &e%arg-2%"
  5706. updateRankAPI(arg-2)
  5707. wait 5 ticks
  5708. rankLoad(arg-2, 2, 1)
  5709. else if arg 3 is "TITAN":
  5710. set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
  5711. set {mineplex.rank.%arg-2%} to "&c&lTITAN "
  5712. execute console command "/__mp__dp__ %arg-1%"
  5713. set {_or} to uncolored {mineplex.testrank.%arg-2%}
  5714. send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
  5715. send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
  5716. send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
  5717. send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
  5718. set arg-2 tab name to "&c&lTITAN &e%arg-2%"
  5719. updateRankAPI(arg-2)
  5720. wait 5 ticks
  5721. rankLoad(arg-2, 2, 1)
  5722. else if arg 3 is "ETERNAL":
  5723. set {mineplex.testrank.%arg-2%} to {mineplex.rank.%arg-2%}
  5724. set {mineplex.rank.%arg-2%} to "&3&lETERNAL "
  5725. execute console command "/__mp__dp__ %arg-2%"
  5726. set {_or} to uncolored {mineplex.testrank.%arg-2%}
  5727. send "&9Client Manager> &7%arg-2%'s rank has been updated to %arg-3%!"
  5728. send "&9Client Manager> &7%arg-2%'s rank will be reset to %{_or}%on their login!"
  5729. send "&9Client Manager> &7Your rank has been updated to %arg-3%!" to arg 2
  5730. send "&9Client Manager> &7Your rank will be reset to %{_or}%on your login!" to arg 2
  5731. set arg-2 tab name to "&3&lETERNAL &e%arg-2%"
  5732. updateRankAPI(arg-2)
  5733. wait 5 ticks
  5734. rankLoad(arg-2, 2, 1)
  5735. else:
  5736. send "&9Client Manager> &c&lInvalid rank!"
  5737. else:
  5738. send "&9Client Manager> &c&lThis player already has a test rank!"
  5739. else:
  5740. send "&9Online Player Search> &e0 &7matches for [&e%arg-2%&7]."
  5741.  
  5742.  
  5743.  
  5744.  
  5745. command /powerplay [<offline player>]:
  5746. permission: mineplex.jrdev
  5747. permission message: &9Permissions> &7You do not have permission to do that.
  5748. trigger:
  5749. if arg 1 is set:
  5750. if {mineplex.ppc.%arg-1%} is not set:
  5751. set {mineplex.ppc.%arg-1%} to true
  5752. send "&9PPC> &7%arg-1% Power Play: &aTrue"
  5753. else:
  5754. delete {mineplex.ppc.%arg-1%}
  5755. send "&9PPC> &7%arg-1% Power Play: &cFalse"
  5756. else:
  5757. send "&9PPC> &7/powerplay (player)"
  5758.  
  5759. command /shard [<offline player>] [<string>] [<string>]:
  5760. permission: mineplex.admin
  5761. permission message: &9Permissions> &7You do not have permission to do that.
  5762. trigger:
  5763. if arg 1 is not set:
  5764. send "&9Shard> &7Missing Args: &e/shard <player> <amount>"
  5765. else:
  5766. if arg 2 is not set:
  5767. send "&9Shard> &7Missing Args: &e/shard <player> <amount>"
  5768. else:
  5769. if arg 1 is not online:
  5770. send "&9Shard> &7Could not find player &e%arg-1%"
  5771. else:
  5772. set {_num} to arg 2 parsed as an integer
  5773. if {_num} is an integer:
  5774. add {_num} to {mineplex.shards.%arg-1%}
  5775. send "&9Shard> &7You gave &e%arg-2% Shards &7to &e%arg-1%&7."
  5776. send "&9Shard> &e%player% &7gave you &e%arg-2% Shards&7." to arg-1
  5777. addShards(arg-1, {_num})
  5778. else:
  5779. send "&9Shard> &7Invalid Shards Amount"
  5780.  
  5781. command /gem [<offline player>] [<string>] [<string>]:
  5782. permission: mineplex.admin
  5783. permission message: &9Permissions> &7You do not have permission to do that.
  5784. trigger:
  5785. if arg 1 is not set:
  5786. send "&9Gem> &7Missing Args: &e/gem <player> <amount>"
  5787. else:
  5788. if arg 2 is not set:
  5789. send "&9Gem> &7Missing Args: &e/gem <player> <amount>"
  5790. else:
  5791. if arg 1 is not online:
  5792. send "&9Gem> &7Could not find player &e%arg-1%"
  5793. else:
  5794. set {_num} to arg 2 parsed as an integer
  5795. if {_num} is an integer:
  5796. addGems(arg-1, {_num})
  5797. send "&9Gem> &7You gave &e%arg-2% Gems &7to &e%arg-1%&7."
  5798. send "&9Gem> &e%player% &7gave you &e%arg-2% Gems&7." to arg-1
  5799. else:
  5800. send "&9Gem> &7Invalid Gems Amount"
  5801.  
  5802. command /getadmin:
  5803. permission: mineplex.jrdev
  5804. permission message: &9Permissions> &7You do not have permission to do that.
  5805. trigger:
  5806. if {mineplex.rank.%player%} is "&6&lJR.DEV ":
  5807. if {mineplex.disguise.%player%} is set:
  5808. set {_p} to {mineplex.disguise.%player%}
  5809. else:
  5810. set {_p} to player
  5811. if {mineplex.adminmode.%player%} is true:
  5812. remove "mineplex.admin" from player's permissions
  5813. remove "mineplex.builder" from player's permissions
  5814. remove "mineplex.youtube" from player's permissions
  5815. set {mineplex.adminmode.%player%} to false
  5816. send "&9Admin Mode> &7%{_p}% Admin Mode: &cFalse"
  5817. else:
  5818. set {mineplex.adminmode.%player%} to true
  5819. add "mineplex.admin" to player's permissions
  5820. add "mineplex.builder" to player's permissions
  5821. add "mineplex.youtube" to player's permissions
  5822. send "&9Admin Mode> &7%{_p}% Admin Mode: &aTrue"
  5823. else:
  5824. send "&9Admin Mode> &7/getadmin is only for JR.DEV!"
  5825.  
  5826. command /__mp__dp__ <player>:
  5827. executable by: console
  5828. trigger:
  5829. remove "mineplex.trainee" from arg-1's permissions
  5830. remove "mineplex.legend" from arg-1's permissions
  5831. remove "mineplex.titan" from arg-1's permissions
  5832. remove "mineplex.mod" from arg-1's permissions
  5833. remove "mineplex.srmod" from arg-1's permissions
  5834. remove "mineplex.admin" from arg-1's permissions
  5835. remove "mineplex.leader" from arg-1's permissions
  5836. remove "mineplex.owner" from arg-1's permissions
  5837. remove "mineplex.jrdev" from arg-1's permissions
  5838. remove "mineplex.2fa" from arg-1's permissions
  5839. remove "mineplex.dev" from arg-1's permissions
  5840. remove "mineplex.twitch" from arg-1's permissions
  5841. remove "mineplex.youtube" from arg-1's permissions
  5842. remove "mineplex.builder" from arg-1's permissions
  5843.  
  5844. function rawreport(arg1: player , arg2: player , arg3: text , arg4: text , arg5: text) :: string:
  5845. if {_arg3} is "Hacking":
  5846. set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
  5847. set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
  5848. set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
  5849. set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
  5850. set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
  5851. set {mineplex.report.open.%{mineplex.report.id}%} to true
  5852. send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
  5853. else if {_arg3} is "Chat-Abuse":
  5854. set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
  5855. set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
  5856. set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
  5857. set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
  5858. set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
  5859. set {mineplex.report.open.%{mineplex.report.id}%} to true
  5860. send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
  5861. else if {_arg3} is "Gameplay":
  5862. set {mineplex.report.player.%{mineplex.report.id}%} to {_arg1}
  5863. set {mineplex.report.reporter.%{mineplex.report.id}%} to {_arg2}
  5864. set {mineplex.report.type.%{mineplex.report.id}%} to {_arg3}
  5865. set {mineplex.report.server.%{mineplex.report.id}%} to {_arg4}
  5866. set {mineplex.report.reason.%{mineplex.report.id}%} to {_arg5}
  5867. set {mineplex.report.open.%{mineplex.report.id}%} to true
  5868. send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to {_arg2}
  5869. else:
  5870. stop
  5871. loop all players:
  5872. if loop-player has permission "mineplex.trainee":
  5873. if {mineplex.pref.report.%loop-player%} is true:
  5874. send "&9[Report ##%{mineplex.report.id}%] &7%{_arg2}% has reported %{_arg1}% for a &e%{_arg3}% &7offence with reason &e%{_arg5}%&7!" to loop-player
  5875. add 1 to {mineplex.report.id}
  5876.  
  5877. command /report [<offline player>] [<text>]:
  5878. permission: mineplex.titan
  5879. permission message: &9Report> &cThe report feature is currently in a trial phase for Titan players
  5880. trigger:
  5881. if arg-2 is set:
  5882. if arg-1 is player:
  5883. send "&9Report> &cYou cannot report yourself."
  5884. stop
  5885. open chest with 3 rows named "Report %arg-1%" to player
  5886. format slot 11 of player with iron sword named "&c&lHacking" with lore "&7X-ray, Forcefield, Speed, Fly etc" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Hacking", "%player's world%", arg-2)]
  5887. format slot 13 of player with book and quill named "&3&lChat Abuse" with lore "&7Verbal Abuse, Spam, Harassment, Trolling, etc" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Chat-Abuse", "%player's world%", arg-2)]
  5888. format slot 15 of player with ender pearl named "&fGameplay" with lore "&7Map and Bug Exploits" to close then run [send "&9Report ##%{mineplex.report.id}%> &aSuccessfully created report." to player]->[rawreport(arg-1, player, "Gameplay", "%player's world%", arg-2)]
  5889. else:
  5890. send "&9Report> &cInvalid Usage: &e/report <player> <reason>"
  5891.  
  5892. command /reporthandle [<string>] [<string>]:
  5893. aliases: /rh
  5894. permission: mineplex.mod
  5895. permission message: &9Permissions> &7You do not have permission to do that.
  5896. trigger:
  5897. if arg 1 is not set:
  5898. send "&9Report> &7Corect Usage: &e/reporthandle <report id>"
  5899. else:
  5900. set {_id} to arg-1 parsed as a number
  5901. if {_id} is a number:
  5902. if {mineplex.report.open.%{_id}%} is true:
  5903. if {mineplex.report.hand.%{_id}%} is not set:
  5904. set {mineplex.report.hand.%{_id}%} to player
  5905. set {_sus} to {mineplex.report.player.%{_id}%} parsed as an offline player
  5906. set {_ip} to ip address of {_sus}
  5907. loop {mineplex.totalaccounts.%{_ip}%::*}:
  5908. add 1 to {_accounts}
  5909. if {_accounts} is not set:
  5910. set {_accounts} to 1
  5911. send ""
  5912. send "&9Report ##%{_id}%> &bReport Overview"
  5913. send "&9Report ##%{_id}%> &bSuspect - &6%{mineplex.report.player.%{_id}%}%"
  5914. send "&9Report ##%{_id}%> &bType - &6%{mineplex.report.type.%{_id}%}%"
  5915. send "&9Report ##%{_id}%> &bTeam - &6None"
  5916. send "&9Report ##%{_id}%>"
  5917. send "&9Report ##%{_id}%> &6SoonTM &btotal reports"
  5918. send "&9Report ##%{_id}%>"
  5919. send "&9Report ##%{_id}%> &7(1) &6%{mineplex.report.reporter.%{_id}%}% ##1 &7- ""&b%{mineplex.report.reason.%{_id}%}%&7"""
  5920. send "&9Report ##%{_id}%>"
  5921. send "&9Report ##%{_id}%> &bView chat log"
  5922. mcrjson("%player%", "&9Report ##%{_id}%> ||&bClose this report||ttp:&bClick to close this report||cmd:/reportclose %{_id}% undetermined")
  5923. loop all players:
  5924. if loop-player has permission "mineplex.trainee":
  5925. if {mineplex.pref.report.%loop-player%} is true:
  5926. send "&9[Report %{_id}%] &e%player% &7is handling this report." to loop-player
  5927. else:
  5928. send "&9Report> &7This report is already being handling!"
  5929. else:
  5930. send "&9Report> &7This report has already been closed or does not exsit!"
  5931. else:
  5932. send "&9Report> &cYour arguments are inappropriate for this command!"
  5933. send "&9Report> &e/reporthandle (id)"
  5934.  
  5935. command /reportclose [<string>] [<string>] [<string>]:
  5936. aliases: /rc
  5937. permission: mineplex.mod
  5938. permission message: &9Permissions> &7You do not have permission to do that.
  5939. trigger:
  5940. if arg 1 is not set:
  5941. send "&9Report> &7Corect Usage: &e/reportclose (report id)"
  5942. send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
  5943. stop
  5944. if arg 2 is not set:
  5945. send "&9Report> &7Corect Usage: &e/reportclose (report id)"
  5946. send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
  5947. stop
  5948. else:
  5949. set {_id} to arg-1 parsed as a number
  5950. if {mineplex.report.hand.%{_id}%} is not player:
  5951. send "&9Report> &cYou can only close your own report!"
  5952. stop
  5953. if {_id} is a number:
  5954. if {mineplex.report.open.%{_id}%} is true:
  5955. if arg 2 is "UNDETERMINED":
  5956. set {_r} to "&f&lCould not determine"
  5957. set {mineplex.report.open.%{_id}%} to false
  5958. loop all players:
  5959. if loop-player has permission "mineplex.trainee":
  5960. if {mineplex.pref.report.%loop-player%} is true:
  5961. send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
  5962. else if arg 2 is "MUTED":
  5963. set {_r} to "&e&lMuted"
  5964. set {mineplex.report.open.%{_id}%} to false
  5965. loop all players:
  5966. if loop-player has permission "mineplex.trainee":
  5967. if {mineplex.pref.report.%loop-player%} is true:
  5968. send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
  5969. else if arg 2 is "BANNED":
  5970. set {_r} to "&c&lBanned"
  5971. set {mineplex.report.open.%{_id}%} to false
  5972. loop all players:
  5973. if loop-player has permission "mineplex.trainee":
  5974. if {mineplex.pref.report.%loop-player%} is true:
  5975. send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
  5976. else if arg 2 is "ABUSE":
  5977. set {_r} to "&4&lAbuse of report system"
  5978. set {mineplex.report.open.%{_id}%} to false
  5979. loop all players:
  5980. if loop-player has permission "mineplex.trainee":
  5981. if {mineplex.pref.report.%loop-player%} is true:
  5982. send "&9[Report %{_id}%] &e%player% &7closed this report. (%{_r}%&7)." to loop-player
  5983. else:
  5984. send "&9Report> &cInvalid report reason!"
  5985. else:
  5986. send "&9Report> &7This report has already been closed or does not exsit!"
  5987. else:
  5988. send "&9Report> &cYour arguments are inappropriate for this command!"
  5989. send "&9Report> &e/reportclose (report id) (reason)"
  5990. send "&9Report> &7Reasons: &eUNDETERMINED MUTED BANNED ABUSE"
  5991.  
  5992. command /s [<text>]:
  5993. permission: mineplex.mod
  5994. permission message: &9Permissions> &7You do not have permission to do that.
  5995. trigger:
  5996. if {mineplex.disguise.%player%} is set:
  5997. set {_p} to {mineplex.disguise.%player%}
  5998. else:
  5999. set {_p} to player
  6000. if argument 1 is set:
  6001. broadcast "&f&l%{_p}% &b%arg-1%"
  6002. else:
  6003. send "&9Broadcast> &7Corect Usage: /s <message>."
  6004.  
  6005. command /gm [<player>]:
  6006. permission: mineplex.builder
  6007. permission message: &9Permissions> &7You do not have permission to do that.
  6008. trigger:
  6009. if {mineplex.disguise.%player%} is set:
  6010. set {_p} to {mineplex.disguise.%player%}
  6011. else:
  6012. set {_p} to player
  6013. if argument 1 is not set:
  6014. if player's gamemode is survival:
  6015. set the player's gamemode to creative
  6016. send "&9Game Mode> &7%{_p}% Creative Mode: &aTrue"
  6017. else:
  6018. set the player's gamemode to survival
  6019. send "&9Game Mode> &7%{_p}% Creative Mode: &cFalse"
  6020. else:
  6021. if player has permission "mineplex.admin":
  6022. if arg-1's gamemode is survival:
  6023. set the arg-1's gamemode to creative
  6024. send "&9Game Mode> &7%arg-1% Creative Mode: &aTrue"
  6025. else:
  6026. set the arg-1's gamemode to survival
  6027. send "&9Game Mode> &7%arg-1% Creative Mode: &cFalse"
  6028. else:
  6029. send "&9Permissions> &7You do not have permission to do that."
  6030.  
  6031. command /ignore [<offline player>] [<string>]:
  6032. trigger:
  6033. if arg 1 is not set:
  6034. if {mineplex.ignorelist.%player%::*} is not set:
  6035. send "&b&m=====================[&f&lIgnoring&b&m]======================"
  6036. send ""
  6037. send "&fWelcome to your Ignore List!"
  6038. send ""
  6039. send "&fTo ignore people, type &a/ignore <Player Name>"
  6040. send ""
  6041. send "&fType &a/ignore &fat any time to view the ignored!"
  6042. send ""
  6043. send "&b&m====================================================="
  6044. else:
  6045. send "&b&m=====================[&f&lIgnoring&b&m]======================"
  6046. loop {mineplex.ignorelist.%player%::*}:
  6047. mcrjson("%player%", "&7Ignoring %loop-value% &f - ||&c&lUnignore||ttp:&fStop ignoring %loop-value%||cmd:/unignore %loop-value%||")
  6048. send "&b&m====================================================="
  6049. else:
  6050. loop {mineplex.ignorelist.%player%::*}:
  6051. if loop-value is "%arg-1%":
  6052. set {_pre} to true
  6053. if {_pre} is true:
  6054. send "&9Ignore> &a%arg-1% &7has already been ignored."
  6055. else:
  6056. add "%arg-1%" to {mineplex.ignorelist.%player%::*}
  6057. send "&9Ignore> &7Now ignoring &a%arg-1%"
  6058.  
  6059. command /unignore [<offline player>] [<string>]:
  6060. trigger:
  6061. if arg 1 is set:
  6062. send "&9Ignore> &7No longer ignoring &a%arg-1%"
  6063. remove "%arg-1%" from {mineplex.ignorelist.%player%::*}
  6064.  
  6065. command /message [<player>] [<text>]:
  6066. aliases: /tell, /m, /w, /msg, /whisper
  6067. trigger:
  6068. if {mineplex.disguise.%player%} is set:
  6069. set {_p} to {mineplex.disguise.%player%}
  6070. else:
  6071. set {_p} to player
  6072. set {_get} to getPlayerdata(player, "muted")
  6073. if {_get} is "yes":
  6074. if {muted::%player%::type} is "perm":
  6075. send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for Permanent."
  6076. stop
  6077. if {muted::%player%::type} is "temp":
  6078. set {_waited} to difference between {muted::%player%::when} and now
  6079. if {_waited} is less than {muted::%player%::time}:
  6080. send "&9Punish> &7Shh, you're muted because %{muted::%player%::reason}% by %{muted::%player%::by}% for &a%{muted::%player%::time}%."
  6081. stop
  6082. if argument 1 is set:
  6083. if argument 2 is set:
  6084. if {mineplex.pref.pm.%arg-1%} is false:
  6085. send "&d%arg-1% has private messaging disabled."
  6086. stop
  6087. loop {mineplex.ignorelist.%player%::*}:
  6088. if loop-value is "%arg-1%":
  6089. send "&9Ignore> &7You are ignoring that player"
  6090. stop
  6091. loop {mineplex.ignorelist.%arg-1%::*}:
  6092. if loop-value is "%player%":
  6093. send "&9Ignore> &7That player is ignoring you"
  6094. stop
  6095. send "&6&l%{_p}% > %arg-1% &e&l%arg-2%"
  6096. send "&6&l%{_p}% > %arg-1% &e&l%arg-2%" to arg-1
  6097. play "NOTE_PLING" to player at volume 0.5
  6098. play "NOTE_PLING" to arg-1 at volume 0.5
  6099. set {mineplex.lastm.%player%} to "%arg-1%" parsed as player
  6100. if {mineplex.rank.%arg-1%} is "&4&lDEV ":
  6101. send "&d%arg-1% is often AFK or minimized, due to plugin development."
  6102. send "&dPlease be patient if they do not reply instantly."
  6103. else:
  6104. send "&9Message> &cErr...something went wrong?"
  6105. else:
  6106. send "&9Message> &cErr...something went wrong?"
  6107.  
  6108. command /ping:
  6109. trigger:
  6110. send "&9Chat> &7PONG!"
  6111.  
  6112. on command:
  6113. command is "minecraft:me":
  6114. send "&9Chat> &7Nope, not allowed!"
  6115. cancel event
  6116.  
  6117. command /me [<string>]:
  6118. aliases: /minecraft:me
  6119. trigger:
  6120. if arg 1 is not set:
  6121. send "&cUsage: /me <action...>"
  6122. else:
  6123. send "&9Chat> &7Nope, not allowed!"
  6124.  
  6125. command /newsconfirm <number>:
  6126. permission: mineplex.admin
  6127. permission message: &9Permissions> &7You do not have permission to do that.
  6128. trigger:
  6129. mcrjson("%player%", "&9Hub Manager>|| &a[CONFIRM]||ttp:Are you absolutely sure???||cmd:/news delete %arg-1%|| &6News Entry %arg-1% &7deletion?")
  6130.  
  6131. command /news [<string>] [<string>] [<string>]:
  6132. permission: mineplex.admin
  6133. permission message: &9Permissions> &7You do not have permission to do that.
  6134. trigger:
  6135. if arg 1 is not set:
  6136. send "&9News Manager> &7Available news arguments for this command:"
  6137. send "&6/news list &7Lists (numbered) stored news messages from database. &4Admin"
  6138. send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &4Admin"
  6139. send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &4Admin"
  6140. send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &4Admin"
  6141. send "&4*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &4Admin"
  6142. else:
  6143. if arg 1 is "list":
  6144. send "&9Hub Manager> &7Current server news messages:"
  6145. mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 1 : %{mineplex.news.line1}%||cmd:/newsconfirm 1|| &6News 1 &7: &f%{mineplex.news.line1}%")
  6146. mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 2 : %{mineplex.news.line2}%||cmd:/newsconfirm 2|| &6News 2 &7: &f%{mineplex.news.line2}%")
  6147. mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 3 : %{mineplex.news.line3}%||cmd:/newsconfirm 3|| &6News 3 &7: &f%{mineplex.news.line3}%")
  6148. mcrjson("%player%", "&9Hub Manager>|| &c[DELETE]||ttp:Deletes News Entry 4 : %{mineplex.news.line4}%||cmd:/newsconfirm 4|| &6News 4 &7: &f%{mineplex.news.line4}%")
  6149. else if arg 1 is "add":
  6150. if arg 2 is set:
  6151. set {_news} to "%arg-2%"
  6152. if arg 3 is set:
  6153. set {_news} to "%arg-2% %arg-3%"
  6154. replace all "&" with "§" in {_news}
  6155. if {mineplex.news.line1}'s length is 0:
  6156. if {mineplex.mode} is "sql":
  6157. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'"
  6158. set {mineplex.news.line1} to {_news}
  6159. send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
  6160. else if {mineplex.news.line2}'s length is 0:
  6161. if {mineplex.mode} is "sql":
  6162. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'"
  6163. set {mineplex.news.line2} to {_news}
  6164. send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
  6165. else if {mineplex.news.line3}'s length is 0:
  6166. if {mineplex.mode} is "sql":
  6167. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'"
  6168. set {mineplex.news.line3} to {_news}
  6169. send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
  6170. else if {mineplex.news.line4}'s length is 0:
  6171. if {mineplex.mode} is "sql":
  6172. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'"
  6173. set {mineplex.news.line4} to {_news}
  6174. send "&9Hub Manager> &7The news entry: &6%{_news}% &7has been added to the database!"
  6175. else:
  6176. send "&9Hub Manager> &c&lNo free news slots!"
  6177. else:
  6178. send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
  6179. else if arg 1 is "delete":
  6180. if arg 2 is set:
  6181. if arg 2 is "1":
  6182. set {mineplex.news.line1} to ""
  6183. if {mineplex.mode} is "sql":
  6184. update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '1'"
  6185. send "&9Hub Manager> &7The news entry at position &61 &7has been deleted!"
  6186. else if arg 2 is "2":
  6187. if {mineplex.mode} is "sql":
  6188. update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '2'"
  6189. set {mineplex.news.line2} to ""
  6190. send "&9Hub Manager> &7The news entry at position &62 &7has been deleted!"
  6191. else if arg 2 is "3":
  6192. if {mineplex.mode} is "sql":
  6193. update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '3'"
  6194. set {mineplex.news.line3} to ""
  6195. send "&9Hub Manager> &7The news entry at position &63 &7has been deleted!"
  6196. else if arg 2 is "4":
  6197. if {mineplex.mode} is "sql":
  6198. update "UPDATE `newslist` SET `newsString` = ' ' WHERE newsPosition = '4'"
  6199. set {mineplex.news.line4} to ""
  6200. send "&9Hub Manager> &7The news entry at position &64 &7has been deleted!"
  6201. else:
  6202. send "&9Hub Manager> &cThe specified new position is invalid!"
  6203. else:
  6204. send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
  6205. else if arg 1 is "set":
  6206. if arg 2 is set:
  6207. if arg 3 is set:
  6208. set {_news} to arg 3
  6209. replace all "&" with "§" in {_news}
  6210. if arg 2 is "1":
  6211. if {mineplex.mode} is "sql":
  6212. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '1'"
  6213. set {mineplex.news.line1} to {_news}
  6214. send "&9Hub Manager> &7The news entry at position &61 &7has been updated to: %{_news}%"
  6215. else if arg 2 is "2":
  6216. if {mineplex.mode} is "sql":
  6217. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '2'"
  6218. set {mineplex.news.line2} to {_news}
  6219. send "&9Hub Manager> &7The news entry at position &62 &7has been updated to: %{_news}%"
  6220. else if arg 2 is "3":
  6221. if {mineplex.mode} is "sql":
  6222. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '3'"
  6223. set {mineplex.news.line3} to {_news}
  6224. send "&9Hub Manager> &7The news entry at position &63 &7has been updated to: %{_news}%"
  6225. else if arg 2 is "4":
  6226. if {mineplex.mode} is "sql":
  6227. update "UPDATE `newslist` SET `newsString` = '%{_news}%' WHERE newsPosition = '4'"
  6228. set {mineplex.news.line4} to {_news}
  6229. send "&9Hub Manager> &7The news entry at position &64 &7has been updated to: %{_news}%"
  6230. else:
  6231. send "&9Hub Manager> &cThe specified new position is invalid!"
  6232. else:
  6233. send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
  6234. else:
  6235. send "&9Hub Manager> &cYour arguments are inappropriate for this command!"
  6236. else:
  6237. send "&9News Manager> &7Available news arguments for this command:"
  6238. send "&6/news list &7Lists (numbered) stored news messages from database. &cAdmin"
  6239. send "&6/news add <newsEntry> &7Adds specified news entry string to database at end of table. &cAdmin"
  6240. send "&6/news delete ## &7Removes specified (numbered) news entry string from database. &cAdmin"
  6241. send "&6/news set ## <newsEntry> &7Updates specified (numbered) news entry string from database. &cAdmin"
  6242. send "&c*Please Note: &7Updates to server news entries from the database are on a 4 minute cycle! &cAdmin"
  6243.  
  6244. command /r [<text>]:
  6245. aliases: /reply
  6246. trigger:
  6247. if {mineplex.disguise.%player%} is set:
  6248. set {_p} to {mineplex.disguise.%player%}
  6249. else:
  6250. set {_p} to player
  6251. if {mineplex.lastm.%player%} is set:
  6252. if argument 1 is set:
  6253. if {mineplex.lastm.%player%} is online:
  6254. send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%"
  6255. send "&6&l%{_p}% > %{mineplex.lastm.%player%}% &e&l%arg-1%" to {mineplex.lastm.%player%}
  6256. else:
  6257. send "&9Message> &e%{mineplex.lastm.%player%}% &7is no longer online!"
  6258. else:
  6259. send "&9Message> &cErr...something went wrong?"
  6260. else:
  6261. send "&9Message> &7You have not messaged anyone recently."
  6262.  
  6263. command /party [<string>] [<player>]:
  6264. aliases: /z
  6265. trigger:
  6266. if argument 1 is not set:
  6267. send "&9Party> &7Listing Party Commands:"
  6268. send "&f/party <Player>: &eJoin/Create/Invite Player"
  6269. send "&f/party leave: &eLeave your current party"
  6270. send "&f/party kick <Player>: &eKick player from your Party"
  6271. send "&f/party info: &eDisplays info on the current Party."
  6272. else:
  6273. if argument 1 is "kick":
  6274. if {party.%player%} is not set:
  6275. message "&9Party> &7You don't have a party"
  6276. else:
  6277. if {party.%player%} is not player:
  6278. message "&9Party> &7You have to be a party leader to do this"
  6279. stop
  6280. if player arg is not set:
  6281. message "&9Party> &7Player needed. /party kick <player>"
  6282. else:
  6283. if {party.%player%::*} doesn't contain player arg:
  6284. message "&9Party> &7The player needs to be in your party"
  6285. stop
  6286. message "&9Party> &7You kicked %player arg% from the party"
  6287. message "&9Party> &7You've been kicked by %player% from his party" to player arg
  6288. loop {party.%player%::*}:
  6289. if loop-value = player arg:
  6290. delete {party.%player%::%loop-index%}
  6291. delete {party.%player arg%}
  6292. delete {party.%player arg%.chat}
  6293. else if arg 1 is "leave":
  6294. if {party.%player%} is not set:
  6295. message "&9Party> &7You don't have a party"
  6296. else:
  6297. if {party.%player%} is player:
  6298. message "&9Party> &7You can't leave if you are the leader. Do /party disband"
  6299. stop
  6300. message "&9Party> &7You left your party"
  6301. message "&9Party> &7%player% left your party" to {party.%player%}
  6302. set {party.%player%.chat} to false
  6303. loop {party.%{party.%player%}%::*}:
  6304. if loop-value = player:
  6305. delete {party.%{party.%player%}%::%loop-index%}
  6306. delete {party.%player%}
  6307. delete {party.%player%.chat}
  6308. else if arg 1 is "disband":
  6309. if {party.%player%} is not set:
  6310. message "&9Party> &cYou don't have a party"
  6311. else:
  6312. if {party.%player%} is not player:
  6313. message "&9Party> &7You have to be a party leader to do this"
  6314. stop
  6315. message "&9Party> &7You disband your party"
  6316. loop {party.%player%::*}:
  6317. loop-value is not player:
  6318. message "&9Party> &7Your party has been disbanded" to loop-value
  6319. delete {party.%loop-value%.chat}
  6320. delete {party.%loop-value%}
  6321. delete {party.%player%}
  6322. delete {party.%player%.chat}
  6323. delete {party.%player%::*}
  6324. else if arg 1 is "info":
  6325. if {party.%player%} is not set:
  6326. message "&9Party> &7You don't have a party"
  6327. else:
  6328. message "&9Party> &7Party Details:"
  6329. message "Party Leader: &7%{party.%player%}%"
  6330. set {_partyMember} to ""
  6331. loop {party.%{party.%player%}%::*}:
  6332. set {_partyMember} to "%{_partyMember}% %loop-value%"
  6333. message "Your Party: &7%{_partyMember}%"
  6334. else:
  6335. set {_mineplex.last.party} to "%arg-1%" parsed as player
  6336. if {_mineplex.last.party} is online:
  6337. if {party.%player%} is set:
  6338. add {_mineplex.last.party} to {party.%player%::*}
  6339. set {party.%player%.chat} to true
  6340. set {party.%arg-1%.chat} to true
  6341. set {party.%{_mineplex.last.party}%} to player
  6342. message "&9Party> &7You invited %{_mineplex.last.party}% to the party."
  6343. else:
  6344. set {party.%player%} to player
  6345. message "&9Party> &7Created a party."
  6346. add player to {party.%player%::*}
  6347. make player execute command "/party %arg-1%"
  6348. else:
  6349. send "&9Party> &7That player is not online."
  6350.  
  6351. command /announce [<text>]:
  6352. permission: mineplex.admin
  6353. permission message: &9Permissions> &7You do not have permission to do that.
  6354. trigger:
  6355. if argument 1 is set:
  6356. send all players title "&eAnnouncement" with subtitle "&f%arg-1%" for 10 seconds
  6357. broadcast "&9Announcement> &b%arg-1%"
  6358. else:
  6359. send "&9Message> &cErr...something went wrong?"
  6360.  
  6361. command /global [<text>]:
  6362. permission: mineplex.jrdev
  6363. permission message: &9Permissions> &7You do not have permission to do that.
  6364. trigger:
  6365. if arg 1 is not set:
  6366. send "&9Message> &cErr...something went wrong?"
  6367. else:
  6368. broadcast "&9Announcement> &b%arg-1%"
  6369.  
  6370. every 3 seconds:
  6371. set {mineplex.lag.avg.1} to tps
  6372. wait 1 second
  6373. set {mineplex.lag.avg.2} to tps
  6374. wait 1 second
  6375. set {mineplex.lag.avg.3} to tps
  6376.  
  6377. command /lag:
  6378. trigger:
  6379. if player has permission "mineplex.jrdev":
  6380. set {_avg} to {mineplex.lag.avg.1} + {mineplex.lag.avg.2} + {mineplex.lag.avg.3}
  6381. set {_avg} to {_avg} / 3
  6382. set {_tps} to tps
  6383. set {_f} to free ram
  6384. set {_m} to max ram
  6385. send "&9LagMeter> &7Live-------&e%{_tps}%"
  6386. send "&9LagMeter> &7Avg--------&e%{_avg}%"
  6387. send "&9LagMeter> &eMEM (RAM)"
  6388. send "&9LagMeter> &7Free-------&e%{_f}%MB"
  6389. send "&9LagMeter> &7Max--------&e%{_m}%MB"
  6390. else:
  6391. send "&9Chat> &7PONG!"
  6392.  
  6393. #Punish Systems/Commands
  6394.  
  6395. function punishWarn(s: player , p: offline player , r: text) :: player:
  6396. send "&9Punish> &7%{_s}% issued a friendly warning to you." to {_p}
  6397. send "&9Punish> &7&lReason: &7%{_r}%" to {_p}
  6398. add 1 to {mineplex.punish.past.warn.%{_p}%}
  6399. loop all players:
  6400. if loop-player has permission "mineplex.trainee":
  6401. send "&9Punish> &7%{_s}% issued a friendly warning to %{_p}%." to loop-player
  6402.  
  6403. function punishReportBan(s: player , p: offline player , r: text) :: player:
  6404. set {banned::%{_p}%} to true
  6405. set {banned::%{_p}%::type} to "report"
  6406. set {banned::%{_p}%::reason} to {_r}
  6407. set {banned::%{_p}%::staff} to {_s}
  6408. set {banned::%{_p}%::now} to now
  6409. setPlayerdata({_p}, "banned", "yes")
  6410. kick {_p} due to "&c&lYou are banned for Permanent by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  6411. add 1 to {mineplex.punish.past.reportban.%{_p}%}
  6412. loop all players:
  6413. if loop-player has permission "mineplex.trainee":
  6414. send "&9Punish> &7%{_s}% report banned %{_p}% for Permanent." to loop-player
  6415.  
  6416. function punishBan(s: player , p: offline player , r: text) :: player:
  6417. set {banned::%{_p}%} to true
  6418. set {banned::%{_p}%::type} to "perm"
  6419. set {banned::%{_p}%::reason} to {_r}
  6420. set {banned::%{_p}%::staff} to {_s}
  6421. set {banned::%{_p}%::now} to now
  6422. setPlayerdata({_p}, "banned", "yes")
  6423. kick {_p} due to "&c&lYou are banned for Permanent by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  6424. add 1 to {mineplex.punish.past.permban.%{_p}%}
  6425. loop all players:
  6426. if loop-player has permission "mineplex.trainee":
  6427. send "&9Punish> &7%{_s}% banned %{_p}% for Permanent." to loop-player
  6428.  
  6429. function punishDTempBan(s: player , p: offline player, r: text, d: number) :: player:
  6430. set {_duration} to "%{_d}% days" parsed as timespan
  6431. set {banned::%{_p}%} to true
  6432. set {banned::%{_p}%::type} to "temp"
  6433. set {banned::%{_p}%::time} to {_duration}
  6434. set {banned::%{_p}%::reason} to {_r}
  6435. set {banned::%{_p}%::staff} to {_s}
  6436. set {banned::%{_p}%::when} to now
  6437. add 1 to {mineplex.punish.past.tempban.%{_p}%}
  6438. setPlayerdata({_p}, "banned", "yes")
  6439. kick {_p} due to "&c&lYou are banned for %{banned::%{_p}%::time}% by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  6440. loop all players:
  6441. if loop-player has permission "mineplex.trainee":
  6442. send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player
  6443.  
  6444. function punishHTempBan(s: player , p: offline player, r: text, d: number) :: player:
  6445. set {_duration} to "%{_d}% hours" parsed as timespan
  6446. set {banned::%{_p}%} to true
  6447. set {banned::%{_p}%::type} to "temp"
  6448. set {banned::%{_p}%::time} to {_duration}
  6449. set {banned::%{_p}%::reason} to {_r}
  6450. set {banned::%{_p}%::staff} to {_s}
  6451. set {banned::%{_p}%::when} to now
  6452. setPlayerdata({_p}, "banned", "yes")
  6453. kick {_p} due to "&c&lYou are banned for %{banned::%{_p}%::time}% by %{_s}%%nl%&f%{banned::%{_p}%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  6454. add 1 to {mineplex.punish.past.tempban.%{_p}%}
  6455. loop all players:
  6456. if loop-player has permission "mineplex.trainee":
  6457. send "&9Punish> &7%{_s}% banned %{_p}% for %{_duration}%" to loop-player
  6458.  
  6459. function punishMute(s: player, p: offline player, r: text) :: player:
  6460. set {muted::%{_p}%} to true
  6461. set {muted::%{_p}%::type} to "perm"
  6462. set {muted::%{_p}%::reason} to {_r}
  6463. set {muted::%{_p}%::by} to {_s}
  6464. add 1 to {mineplex.punish.past.permmute.%{_p}%}
  6465. setPlayerdata({_p}, "muted", "yes")
  6466. send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
  6467. send "&9Punish> &7%{muted::%{_p}%::by}% muted %{_p}% for Permanent." to {_p}
  6468. loop all players:
  6469. if loop-player has permission "mineplex.trainee":
  6470. send "&9Punish> &7%{_s}% muted %{_p}% for Permanent." to loop-player
  6471.  
  6472. function punishHTempMute(s: player, p: offline player, r: text, d: number) :: player:
  6473. set {_duration} to "%{_d}% hours" parsed as timespan
  6474. set {muted::%{_p}%} to true
  6475. set {muted::%{_p}%::type} to "temp"
  6476. set {muted::%{_p}%::reason} to {_r}
  6477. set {muted::%{_p}%::time} to {_duration}
  6478. set {muted::%{_p}%::by} to {_s}
  6479. set {muted::%{_p}%::when} to now
  6480. add 1 to {mineplex.punish.past.permmute.%{_p}%}
  6481. setPlayerdata({_p}, "muted", "yes")
  6482. send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p}
  6483. send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
  6484. loop all players:
  6485. if loop-player has permission "mineplex.trainee":
  6486. send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player
  6487.  
  6488. function punishDTempMute(s: player, p: offline player, r: text, d: number) :: player:
  6489. set {_duration} to "%{_d}% days" parsed as timespan
  6490. set {muted::%{_p}%} to true
  6491. set {muted::%{_p}%::type} to "temp"
  6492. set {muted::%{_p}%::reason} to {_r}
  6493. set {muted::%{_p}%::time} to {_duration}
  6494. set {muted::%{_p}%::by} to {_s}
  6495. set {muted::%{_p}%::when} to now
  6496. add 1 to {mineplex.punish.past.permmute.%{_p}%}
  6497. setPlayerdata({_p}, "muted", "yes")
  6498. send "&9Punish> &7%{_s}% muted you for %{_duration}%." to {_p}
  6499. send "&9Punish> &7&lReason: &r&7%{_r}%" to {_p}
  6500. loop all players:
  6501. if loop-player has permission "mineplex.trainee":
  6502. send "&9Punish> &7%{_s}% muted %{_p}% for %{_duration}%." to loop-player
  6503.  
  6504. function punishUnban(s: string, p: string) :: player:
  6505. delete {banned::%{_p}%}
  6506. delete {banned::%{_p}%::*}
  6507. setPlayerdata({_p}, "banned", "no")
  6508.  
  6509. function punishUnmute(s: player, p: string) :: player:
  6510. delete {muted::%{_p}%}
  6511. delete {muted::%{_p}%::*}
  6512. setPlayerdata({_p}, "muted", "no")
  6513. loop all players:
  6514. if loop-player has permission "mineplex.trainee":
  6515. send "&9Punish> &7%{_s}% unmuted %{_p}%" to loop-player
  6516.  
  6517. on connect:
  6518. set {_get} to getPlayerdata(player, "banned")
  6519. if {_get} is "yes":
  6520. if player has permission "mineplex.admin":
  6521. if {mineplex.config.unbanadmin} is "true":
  6522. punishUnban("Expired", "%player%")
  6523. stop
  6524. if {banned::%player%::type} is "perm":
  6525. kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  6526. stop
  6527. if {banned::%player%::type} is "report":
  6528. kick player due to "&c&lYou are banned for Permanent%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  6529. stop
  6530. if {banned::%player%::type} is "temp":
  6531. set {_waited} to difference between {banned::%player%::when} and now
  6532. if {_waited} is less than {banned::%player%::time}:
  6533. kick player due to "&c&lYou are banned for %{banned::%player%::time}%%nl%&f%{banned::%player%::reason}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  6534. else:
  6535. punishUnban("Expired", "%player%")
  6536.  
  6537. on inventory click:
  6538. if inventory name of player's current inventory is " Punish":
  6539. cancel event
  6540. clicked slot >= 45
  6541. set {_clickedslot.%player%} to (clicked slot - 44)
  6542. if {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} is set:
  6543. if "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}%" contains "&eRemoved by: ":
  6544. send "" to console
  6545. else:
  6546. set {_reasonchanger.%player%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%}% ||||&eRemoved by: &f%player%||&eRemove Reason: &f%{punishgui.%player%::2}%"
  6547. set {reversed.p.%{punishgui.%player%::1}%::history::%{_clickedslot.%player%}%} to "%{_reasonchanger.%player%}%"
  6548. close player's inventory
  6549. delete {p.%{punishgui.%player%::1}%::history::*}
  6550. set {_slot} to 0
  6551. loop {reversed.p.%{punishgui.%player%::1}%::history::*}:
  6552. add 1 to {_slot}
  6553. set {_reversedslot} to 1
  6554. loop {reversed.p.%{punishgui.%player%::1}%::history::*}:
  6555. set {p.%{punishgui.%player%::1}%::history::%{_reversedslot}%} to "%{reversed.p.%{punishgui.%player%::1}%::history::%{_slot}%}%"
  6556. remove 1 from {_slot}
  6557. add 1 to {_reversedslot}
  6558. if "%{_reasonchanger.%player%}%" contains "ChatOffense":
  6559. punishUnmute(player, {punishgui.%player%::1})
  6560. if "%{_reasonchanger.%player%}%" contains "Hacking" or "Exploiting" or "Other":
  6561. punishUnban("memes", {punishgui.%player%::1})
  6562. if "%{_reasonchanger.%player%}%" contains "Warning":
  6563. stop
  6564.  
  6565. command /p [<offline player>] [<text>]:
  6566. aliases: /punish
  6567. permission: mineplex.trainee
  6568. permission message: &9Permissions> &7You do not have permission to do that.
  6569. trigger:
  6570. if arg-2 is not set:
  6571. send "&9Punish> &7Commands List:"
  6572. send "&6/punish &7<player> <reason> &6Mod"
  6573. if arg-2 is set:
  6574. if {p.%arg-1%::Chat1} is not set:
  6575. set {p.%arg-1%::Client3} to "__mp__tempban__ %arg-1% %player% 30"
  6576. set {p.%arg-1%::ClientL3} to "&fBan Duration: &e30.0 Days"
  6577. set {p.%arg-1%::Client2} to "__mp__tempban__ %arg-1% %player% 30"
  6578. set {p.%arg-1%::ClientL2} to "&fBan Duration: &e30.0 Days"
  6579. set {p.%arg-1%::ClientL1} to "&fBan Duration: &e1.0 Days"
  6580. set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 1"
  6581. set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% 4 %player%"
  6582. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e4.0 Hours"
  6583. set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 2 %player%"
  6584. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.0 Hours"
  6585. set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 1 %player%"
  6586. set {p.%arg-1%::ChatL2} to "&fMute Duration: &e1.0 Days"
  6587. set {p.%arg-1%::Chat3} to "__mp__tempmute__ %arg-1% 30 %player%"
  6588. set {p.%arg-1%::ChatL3} to "&fMute Duration: &e30.0 Days"
  6589. if {p.%arg-1%::pOffences.Chat1} is 1:
  6590. set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 4 %player%"
  6591. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e4.0 Hours"
  6592. if {p.%arg-1%::pOffences.Chat1} is 2:
  6593. set {p.%arg-1%::Chat1} to "__mp__htempmute__ %arg-1% 10 %player%"
  6594. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e10.0 Hours"
  6595. if {p.%arg-1%::pOffences.Chat1} is 3:
  6596. set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%"
  6597. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.0 Days"
  6598. if {p.%arg-1%::pOffences.Chat1} is 4:
  6599. set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 1 %player%"
  6600. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e1.4 Days"
  6601. if {p.%arg-1%::pOffences.Chat1} is 5:
  6602. set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 3 %player%"
  6603. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e2.8 Days"
  6604. if {p.%arg-1%::pOffences.Chat1} is 6:
  6605. set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 7 %player%"
  6606. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e7.0 Days"
  6607. if {p.%arg-1%::pOffences.Chat1} is 7:
  6608. set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 14 %player%"
  6609. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e14.0 Days"
  6610. if {p.%arg-1%::pOffences.Chat1} is 8:
  6611. set {p.%arg-1%::Chat1} to "__mp__tempmute__ %arg-1% 30 %player%"
  6612. set {p.%arg-1%::ChatL1} to "&fMute Duration: &e30.0 Days"
  6613. if {p.%arg-1%::pOffences.Chat1} is 9:
  6614. set {p.%arg-1%::Chat1} to "__mp__mute__ %arg-1% %player%"
  6615. set {p.%arg-1%::ChatL1} to "&fMute Duration: &ePermanent"
  6616. if {p.%arg-1%::pOffences.Chat2} is 1:
  6617. set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 2 %player%"
  6618. set {p.%arg-1%::ChatL2} to "&fMute Duration: &e2.0 Days"
  6619. if {p.%arg-1%::pOffences.Chat2} is 2:
  6620. set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 4 %player%"
  6621. set {p.%arg-1%::ChatL2} to "&fMute Duration: &e4.0 Days"
  6622. if {p.%arg-1%::pOffences.Chat2} is 3:
  6623. set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 7 %player%"
  6624. set {p.%arg-1%::ChatL2} to "__mp__tempmute__ %arg-1% 7 %player%"
  6625. if {p.%arg-1%::pOffences.Chat2} is 4:
  6626. set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 14 %player%"
  6627. set {p.%arg-1%::ChatL2} to "&fMute Duration: &e14.0 Days"
  6628. if {p.%arg-1%::pOffences.Chat2} is 5:
  6629. set {p.%arg-1%::Chat2} to "__mp__tempmute__ %arg-1% 30 %player%"
  6630. set {p.%arg-1%::ChatL2} to "&fMute Duration: &e30.0 Days"
  6631. if {p.%arg-1%::pOffences.Chat2} is 6:
  6632. set {p.%arg-1%::Chat2} to "__mp__mute__ %arg-1% %player%"
  6633. set {p.%arg-1%::ChatL2} to "&fMute Duration: &ePermanent"
  6634. if {p.%arg-1%::pOffences.Chat3} is 1:
  6635. set {p.%arg-1%::Chat3} to "__mp__mute__ %arg-1% %player%"
  6636. set {p.%arg-1%::ChatL3} to "&fMute Duration: &ePermanent"
  6637. if {p.%arg-1%::pOffences.General} is 1:
  6638. set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 8"
  6639. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e8.0 Hours"
  6640. if {p.%arg-1%::pOffences.General} is 2:
  6641. set {p.%arg-1%::General} to "__mp__htempban__ %arg-1% %player% 16"
  6642. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e16.0 Hours"
  6643. if {p.%arg-1%::pOffences.General} is 3:
  6644. set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 1"
  6645. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e1.4 Days"
  6646. if {p.%arg-1%::pOffences.General} is 4:
  6647. set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 3"
  6648. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e3.0 Days"
  6649. if {p.%arg-1%::pOffences.General} is 5:
  6650. set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 7"
  6651. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e7.0 Days"
  6652. if {p.%arg-1%::pOffences.General} is 6:
  6653. set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 14"
  6654. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e14.0 Days"
  6655. if {p.%arg-1%::pOffences.General} is 7:
  6656. set {p.%arg-1%::General} to "__mp__tempban__ %arg-1% %player% 30"
  6657. set {p.%arg-1%::GeneralL} to "&fBan Duration: &e30.0 Days"
  6658. if {p.%arg-1%::pOffences.General} is 8:
  6659. set {p.%arg-1%::General} to "__mp__ban__ %arg-1% %player%"
  6660. set {p.%arg-1%::GeneralL} to "&fBan Duration: &ePermanent"
  6661.  
  6662. if {p.%arg-1%::pOffences.Client1} is 1:
  6663. set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 2"
  6664. set {p.%arg-1%::ClientL1} to "&fBan Duration: &e2.0 Days"
  6665. if {p.%arg-1%::pOffences.Client1} is 2:
  6666. set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 4"
  6667. set {p.%arg-1%::ClientL1} to "&fBan Duration: &e4.0 Days"
  6668. if {p.%arg-1%::pOffences.Client1} is 3:
  6669. set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 7"
  6670. set {p.%arg-1%::ClientL1} to "&fBan Duration: &e7.0 Days"
  6671. if {p.%arg-1%::pOffences.Client1} is 4:
  6672. set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 16"
  6673. set {p.%arg-1%::ClientL1} to "&fBan Duration: &e16.0 Days"
  6674. if {p.%arg-1%::pOffences.Client1} is 5:
  6675. set {p.%arg-1%::Client1} to "__mp__tempban__ %arg-1% %player% 30"
  6676. set {p.%arg-1%::ClientL1} to "&fBan Duration: &e30.0 Days"
  6677. if {p.%arg-1%::pOffences.Client1} is 6:
  6678. set {p.%arg-1%::Client1} to "__mp__ban__ %arg-1% %player%"
  6679. set {p.%arg-1%::ClientL1} to "&fBan Duration: &ePermanent"
  6680. if {p.%arg-1%::pOffences.Client2} is 1:
  6681. set {p.%arg-1%::Client2} to "__mp__ban__ %arg-1% %player%"
  6682. set {p.%arg-1%::ClientL2} to "&fBan Duration: &ePermanent"
  6683. if {p.%arg-1%::pOffences.Client3} is 1:
  6684. set {p.%arg-1%::Client3} to "__mp__ban__ %arg-1% %player%"
  6685. set {p.%arg-1%::ClientL3} to "&fBan Duration: &ePermanent"
  6686. if {p.%arg-1%::pOffences.Chat1} is not set:
  6687. set {p.%arg-1%::pOffences.Chat1} to 0
  6688. set {p.%arg-1%::pOffences.Chat2} to 0
  6689. set {p.%arg-1%::pOffences.Chat3} to 0
  6690. set {p.%arg-1%::pOffences.General} to 0
  6691. set {p.%arg-1%::pOffences.Client1} to 0
  6692. set {p.%arg-1%::pOffences.Client2} to 0
  6693. set {p.%arg-1%::pOffences.Client3} to 0
  6694. if player has permission "mineplex.trainee" or "mineplex.mod":
  6695. delete {reversed.p.%arg-1%::history::*}
  6696. set {_slot} to 0
  6697. loop {p.%arg-1%::history::*}:
  6698. add 1 to {_slot}
  6699. set {_reversedslot} to 1
  6700. loop {p.%arg-1%::history::*}:
  6701. set {reversed.p.%arg-1%::history::%{_reversedslot}%} to "%{p.%arg-1%::history::%{_slot}%}%"
  6702. remove 1 from {_slot}
  6703. add 1 to {_reversedslot}
  6704. open chest with 6 rows named " Punish" to player
  6705. wait 1 tick
  6706. format slot 4 of player with arg-1's skull named "&a&l%arg-1%" with lore "&r%arg-2%" to be unstealable
  6707.  
  6708. format slot 10 of player with book and quill named "&a&lChat Offense" with lore "&7Verbal Abuse, Spam, Harrassment, Trolling, etc" to be unstealable
  6709. format slot 19 of player with cactus green named "&a&lSeverity 1" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Chat1}%||%{p.%arg-1%::ChatL1}%||||&7Light Spam||&f Sending the same message 2-5 times||||&7Light Advertising||&f 'anyone want to play on minecade?'||||&7Light Abuse/Harassment||&f 'you suck at this game'||||&7Hackusations||&f 'you're such a hacker!'||||&7Trolling||||&2Give Warning if 0 Past Offences and 0 Warnings." to close then run [punishHTempMute(sender, arg-1, arg-2, 4)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f1||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Chat1}]
  6710.  
  6711. format slot 12 of player with hopper named "&a&lGeneral Offense" with lore "&7Command/Map/Class/Skill exploits, etc" to be unstealable
  6712. format slot 21 of player with cactus green named "&a&lSeverity 1" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.General}%||%{p.%arg-1%::GeneralL}%||||&7Team Killing||&f Intentionally killing your team mates||||&7Trolling (Gameplay)||&f Using abilities to trap players in spawn||||&7Map/Bug Exploiting||&f Abusing an exploit to gain an advantage" to close then run [punishHTempBan(sender, arg-1, arg-2, 8)]->[add "&ePunishment Type: &fExploiting||&eSeverity: &f1||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.General}]
  6713. format slot 14 of player with iron sword named "&a&lClient Mod" with lore "&7X-ray, Forcefield, Speed, Fly, Inventory Hacks, etc" to be unstealable
  6714. format slot 23 of player with cactus green named "&a&lSeverity 1" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Client1}%||%{p.%arg-1%::ClientL1}%||||&7Examples;||&f Damage Indicators||&f Player Radar" to close then run [punishDTempBan(sender, arg-1, arg-2, 1)]->[add "&ePunishment Type: &fHacking||&eSeverity: &f1||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Client1}]
  6715. format slot 25 of player with paper named "&a&lWarning" with lore "||&7Example Warning Input;||&f Spam - Repeatedly writing MEOW||&f Swearing - Saying 'fuck' and 'shit'||&f Hack Accusation - Accused Tomp13 of hacking||&f Trolling - was trying to make bob angry in chat" to close then run [punishWarn(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fWarning||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
  6716. if player has permission "mineplex.mod": #Access all punishments!
  6717. format slot 28 of player with dandelion yellow named "&a&lSeverity 2" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Chat2}%||%{p.%arg-1%::ChatL2}%||||&7Medium Spam|| &fSending the same message 6-20 times||||&7Medium Advertising;|| &f'join crap.server.net' - posted once||||&7Medium Abuse/Harassment|| &f'piss off you stupid newb'|| &f'SHIT ADMINS ARE SHIT!!!'|| &f'you're terrible, learn to play'||||&7Avoiding Chat Filter|| &f'F|_|<K YOU'" to close then run [punishDTempMute(sender, arg-1, arg-2, 2)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f2||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Chat2}]
  6718. format slot 37 of player with rose red named "&a&lSeverity 3" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Chat3}%||%{p.%arg-1%::ChatL3}%||||&7Severe Spam|| &fSending the same message 20+ times|| &fOnly really used for a spam bot||||&7Severe Abuse/Harassment|| &f'go fucking die in a fire you fucking sack of shit'" to close then run [punishMute(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f3||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Chat3}]
  6719.  
  6720. format slot 32 of player with dandelion yellow named "&a&lSeverity 2" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Client2}%||%{p.%arg-1%::ClientL2}%||||&7Hacks;|| &fForcefield|| &fSpeed Hack|| &fReach Hack|| &fOther Hack||||&7Hack Reports (SR & FR);|| &fForcefield|| &fSpeed Hack|| &fReach Hack|| &fOther Hack|| &fFly Hack" to close then run [punishDTempBan(sender, arg-1, arg-2, 30)]->[add "&ePunishment Type: &fHacking||&eSeverity: &f2||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Client2}]
  6721. format slot 41 of player with rose red named "&a&lSeverity 3" with lore "&fPast Offences: &e%{p.%arg-1%::pOffences.Client3}%||%{p.%arg-1%::ClientL3}%||||&7Hacks:|| &fFly Hack||||&c&lWARNING;||&cUse Severity 2 for Forum/Staff Reports" to close then run [punishDTempBan(sender, arg-1, arg-2, 30)]->[add "&ePunishment Type: &fHacking||&eSeverity: &f3||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]->[add 1 to {p.%arg-1%::pOffences.Client3}]
  6722.  
  6723. format slot 43 of player with book and quill named "&a&lPermanent Mute" with lore "&fMute Duration: &ePermanent||||&7Severe Advertising;||&f 'JOIN MINECADE! THIS SUCKS!||&f 'join crap.server.net! FREE ADMIN!||||&2Must supply detailed reason for Mute." to close then run [punishMute(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fChatOffense||&eSeverity: &f4||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
  6724. format slot 34 of player with redstone block named "&a&lPermanent Ban" with lore "&fBan Duration: &ePermanent||||&2Must supply detailed reason for Ban." to close then run [punishBan(sender, arg-1, arg-2)]->[add "&ePunishment Type: &fOther||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
  6725. format slot 26 of player with enchanted book named "&a&lPermanent Report Ban" with lore "&fReport Ban Duration: &ePermanent||||&7Abusing Report Feature|| &r/report SomeUser THE STAFF HERE SUCK|| &r/report SomeUser MINEPLEX IS A F****** PIECE OF S***" to close then run [punishReportBan(sender, arg-1, arg-2)]->[add "&ePunishment Type: &rOther||||&eReason: &f%arg-2%||||&eStaff: &f%player%||||&eDate: &f%now%" to {p.%arg-1%::history::*}]
  6726. set {_banned} to getPlayerdata(arg-1, "banned")
  6727. set {_muted} to getPlayerdata(arg-1, "muted")
  6728. set {_slot} to 45
  6729. loop {reversed.p.%arg-1%::history::*}:
  6730. set {punishgui.%player%::*} to "%arg 1%"
  6731. add "%arg 2%" to {punishgui.%player%::*}
  6732. if "%loop-value%" contains "&ePunishment Type: &fChatOffense":
  6733. if {_muted} is true:
  6734. if "%loop-value%" does not contain "&eRemoved by: ":
  6735. set slot {_slot} of player's current inventory to shiny book and quill named "&a&lChat Offense" with lore "%loop-value%"
  6736. add 1 to {_slot}
  6737. else:
  6738. set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%"
  6739. add 1 to {_slot}
  6740. else:
  6741. set slot {_slot} of player's current inventory to book and quill named "&a&lChat Offense" with lore "%loop-value%"
  6742. add 1 to {_slot}
  6743. if "%loop-value%" contains "&ePunishment Type: &fHacking":
  6744. if {_banned} is true:
  6745. if "%loop-value%" does not contain "&eRemoved by: ":
  6746. set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%"
  6747. add 1 to {_slot}
  6748. else:
  6749. set slot {_slot} of player's current inventory to shiny iron sword named "&a&lClient Mod" with lore "%loop-value%"
  6750. add 1 to {_slot}
  6751. else:
  6752. set slot {_slot} of player's current inventory to iron sword named "&a&lClient Mod" with lore "%loop-value%"
  6753. add 1 to {_slot}
  6754. if "%loop-value%" contains "&ePunishment Type: &fExploiting":
  6755. if {_banned} is true:
  6756. if "%loop-value%" does not contain "&eRemoved by: ":
  6757. set slot {_slot} of player's current inventory to shiny hopper named "&a&lGeneral Offense" with lore "%loop-value%"
  6758. add 1 to {_slot}
  6759. else:
  6760. set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%"
  6761. add 1 to {_slot}
  6762. else:
  6763. set slot {_slot} of player's current inventory to hopper named "&a&lGeneral Offense" with lore "%loop-value%"
  6764. add 1 to {_slot}
  6765. if "%loop-value%" contains "&ePunishment Type: &fWarning":
  6766. set slot {_slot} of player's current inventory to paper named "&a&lWarning" with lore "%loop-value%"
  6767. add 1 to {_slot}
  6768. if "%loop-value%" contains "&ePunishment Type: &fOther":
  6769. if {_banned} is true:
  6770. if "%loop-value%" does not contain "&eRemoved by: ":
  6771. set slot {_slot} of player's current inventory to shiny redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
  6772. add 1 to {_slot}
  6773. else:
  6774. set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
  6775. add 1 to {_slot}
  6776. else:
  6777. set slot {_slot} of player's current inventory to redstone block named "&a&lPermanent Ban" with lore "%loop-value%"
  6778. add 1 to {_slot}
  6779. if "%loop-value%" contains "&ePunishment Type: &rOther":
  6780. set slot {_slot} of player's current inventory to enchanted book named "&a&lPermanent Report Ban" with lore "%loop-value%"
  6781. add 1 to {_slot}
  6782. if {_slot} = 54:
  6783. exit loop
  6784. if {mineplex.rank.%player%} is "&6&LJR.DEV " or "&4&lDEV ":
  6785. format slot 0 of player with shiny dandelion named "&a&lDEV WARNING" with lore "&rDevelopers are advised against using the punish system||&runless permitted by LT" to be unstealable
  6786.  
  6787. #Prefs System
  6788.  
  6789. function prefsSystem(p: player , t: number) :: number:
  6790. if {_t} is 1:
  6791. if {mineplex.pref.hg.%{_p}%} is true:
  6792. set {mineplex.pref.hg.%{_p}%} to false
  6793. else:
  6794. set {mineplex.pref.hg.%{_p}%} to true
  6795. else if {_t} is 2:
  6796. if {mineplex.pref.hpv.%{_p}%} is true:
  6797. set {mineplex.pref.hpv.%{_p}%} to false
  6798. hide all players from {_p}
  6799. else:
  6800. set {mineplex.pref.hpv.%{_p}%} to true
  6801. reveal all players from {_p}
  6802. loop all players:
  6803. if {mineplex.vanish.%loop-player%} is true:
  6804. add loop-player to {%{_p}%.vanishlist::*}
  6805. loop all players:
  6806. if loop-player does not have permission "mineplex.admin":
  6807. hide {%{_p}%.vanishlist::*} from all players
  6808. delete {%{_p}%.vanishlist::*}
  6809. else if {_t} is 3:
  6810. if {mineplex.pref.pc.%{_p}%} is true:
  6811. set {mineplex.pref.pc.%{_p}%} to false
  6812. else:
  6813. set {mineplex.pref.pc.%{_p}%} to true
  6814. else if {_t} is 4:
  6815. if {mineplex.pref.pm.%{_p}%} is true:
  6816. set {mineplex.pref.pm.%{_p}%} to false
  6817. else:
  6818. set {mineplex.pref.pm.%{_p}%} to true
  6819. else if {_t} is 5:
  6820. if {mineplex.pref.gwen.%{_p}%} is true:
  6821. set {mineplex.pref.gwen.%{_p}%} to false
  6822. else:
  6823. set {mineplex.pref.gwen.%{_p}%} to true
  6824. else if {_t} is 6:
  6825. if {mineplex.pref.report.%{_p}%} is true:
  6826. set {mineplex.pref.report.%{_p}%} to false
  6827. else:
  6828. set {mineplex.pref.report.%{_p}%} to true
  6829. else if {_t} is 7:
  6830. if {mineplex.pref.ff.%{_p}%} is true:
  6831. set {mineplex.pref.ff.%{_p}%} to false
  6832. else:
  6833. set {mineplex.pref.ff.%{_p}%} to true
  6834. else if {_t} is 8:
  6835. if {mineplex.ff.%{_p}%} is true:
  6836. set {mineplex.ff.%{_p}%} to false
  6837. delete {mineplex.ff.list::%{_p}%}
  6838. else:
  6839. set {mineplex.ff.%{_p}%} to true
  6840. set {mineplex.ff.list::%{_p}%} to true
  6841. else if {_t} is 9:
  6842. if {mineplex.pref.rm.%{_p}%} is true:
  6843. set {mineplex.pref.rm.%{_p}%} to false
  6844. else:
  6845. set {mineplex.pref.rm.%{_p}%} to true
  6846. else if {_t} is 10:
  6847. if {mineplex.pref.aj.%{_p}%} is true:
  6848. set {mineplex.pref.aj.%{_p}%} to false
  6849. else:
  6850. set {mineplex.pref.aj.%{_p}%} to true
  6851. else if {_t} is 11:
  6852. if {mineplex.pref.daw.%{_p}%} is true:
  6853. set {mineplex.pref.daw.%{_p}%} to false
  6854. else:
  6855. set {mineplex.pref.daw.%{_p}%} to true
  6856. else if {_t} is 12:
  6857. if {mineplex.pref.cj.%{_p}%} is true:
  6858. set {mineplex.pref.cj.%{_p}%} to false
  6859. else:
  6860. set {mineplex.pref.cj.%{_p}%} to true
  6861. else if {_t} is 13:
  6862. if {mineplex.pref.sct.%{_p}%} is true:
  6863. set {mineplex.pref.sct.%{_p}%} to false
  6864. else:
  6865. set {mineplex.pref.sct.%{_p}%} to true
  6866. else if {_t} is 14:
  6867. if {mineplex.pref.hm.%{_p}%} is true:
  6868. set {mineplex.pref.hm.%{_p}%} to false
  6869. else:
  6870. set {mineplex.pref.hm.%{_p}%} to true
  6871. else if {_t} is 15:
  6872. if {mineplex.pref.pr.%{_p}%} is true:
  6873. set {mineplex.pref.pr.%{_p}%} to false
  6874. else:
  6875. set {mineplex.pref.pr.%{_p}%} to true
  6876. else if {_t} is 16:
  6877. if {mineplex.pref.spfr.%{_p}%} is true:
  6878. set {mineplex.pref.spfr.%{_p}%} to false
  6879. else:
  6880. set {mineplex.pref.spfr.%{_p}%} to true
  6881. else if {_t} is 17:
  6882. if {mineplex.pref.dfg.%{_p}%} is true:
  6883. set {mineplex.pref.dfg.%{_p}%} to false
  6884. else:
  6885. set {mineplex.pref.dfg.%{_p}%} to true
  6886. else if {_t} is 18:
  6887. if {mineplex.pref.sci.%{_p}%} is true:
  6888. set {mineplex.pref.sci.%{_p}%} to false
  6889. else:
  6890. set {mineplex.pref.sci.%{_p}%} to true
  6891. else if {_t} is 19:
  6892. if {mineplex.pref.dpg.%{_p}%} is true:
  6893. set {mineplex.pref.dpg.%{_p}%} to false
  6894. else:
  6895. set {mineplex.pref.dpg.%{_p}%} to true
  6896. else if {_t} is 20:
  6897. if {mineplex.pref.hif.%{_p}%} is true:
  6898. set {mineplex.pref.hif.%{_p}%} to false
  6899. else:
  6900. set {mineplex.pref.hif.%{_p}%} to true
  6901.  
  6902. function profile_system(arg1: text , arg2: text , p: player, p2: player) :: number:
  6903. set {_wither} to "MHF_WSkeleton" parsed as a player
  6904. if {_arg1} is "menu":
  6905. if {_arg2} is "profile":
  6906. wait 2 ticks
  6907. open chest with 3 rows named "My Profile" to {_p}
  6908. wait 4 ticks
  6909. format slot 11 of {_p} with {_p}'s skull named "&eStats and Achievements" with lore "&f||&fView your Statistics and Achievements||&ffor all of the games on Mineplex!||&f||&fType &a/stats &fto access this anywhere!" to run [profile_system("menu", "stats", {_p}, {_p2})]
  6910. format slot 13 of {_p} with redstone comparator item named "&ePreferences" with lore "&f||&fSet your preferences to your liking||&fso you can enjoy the game more!||&f||&fType &a/prefs &fto access this anywhere!" to run [profile_system("menu", "prefs", {_p}, {_p2})]
  6911. format slot 15 of {_p} with glistering melon named "&eMineplex Player Server" with lore "&f||&fCreate a server where you are the Host.||&fYou can Choose the game, map and much more!||&f||&fType &a/mps &fto access this anywhere!" to be unstealable
  6912. if {_arg2} is "prefs":
  6913. if {_p} has permission "mineplex.trainee":
  6914. open chest with 6 rows named "My Preferences" to {_p}
  6915. wait 3 tick
  6916. format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6917. format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6918. format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6919. format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6920. format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6921. format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6922. format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6923. format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6924. format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6925. format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6926. format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6927. format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6928. format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6929. format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6930. format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6931. format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6932. format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6933. format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6934. format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6935. format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6936. format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6937. format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6938. format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6939. format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6940. format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6941. format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6942. format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})]
  6943. format slot 21 of {_p} with diamond named "&eExclusive Preferences" to run [profile_system("menu", "staff", {_p}, {_p2})]
  6944. format slot 23 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})]
  6945. format slot 25 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})]
  6946. format slot 31 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})]
  6947. else:
  6948. open chest with 5 rows named "My Preferences" to {_p}
  6949. wait 3 tick
  6950. format slot 0 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6951. format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6952. format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6953. format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6954. format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6955. format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6956. format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6957. format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6958. format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6959. format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6960. format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6961. format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6962. format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6963. format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6964. format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6965. format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6966. format slot 37 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6967. format slot 38 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6968. format slot 39 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6969. format slot 40 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6970. format slot 41 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6971. format slot 42 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6972. format slot 43 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6973. format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6974. format slot 19 of {_p} with paper named "&eUser Preferences" to run [profile_system("menu", "user", {_p}, {_p2})]
  6975. format slot 21 of {_p} with redstone comparator item named "&eGame Mechanic Preferences" to run [profile_system("menu", "game", {_p}, {_p2})]
  6976. format slot 23 of {_p} with compass named "&eMiscellaneous Preferences" to run [profile_system("menu", "misc", {_p}, {_p2})]
  6977. format slot 25 of {_p} with red flower named "&eSocial Preferences" to run [profile_system("menu", "social", {_p}, {_p2})]
  6978. if {_arg2} is "user":
  6979. open chest with 6 rows named "User Preferences" to {_p}
  6980. wait 3 tick
  6981. format slot 0 of {_p} with bed item named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
  6982. format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6983. format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6984. format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6985. format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6986. format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6987. format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6988. format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6989. format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6990. format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6991. format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6992. format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6993. format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6994. format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6995. format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6996. format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6997. format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6998. format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
  6999. format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7000. format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7001. format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7002. format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7003. format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7004. format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7005. format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7006. format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7007. if {mineplex.pref.hg.%{_p}%} is true:
  7008. format slot 10 of {_p} with fire charge named "&aHub Games" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
  7009. format slot 19 of {_p} with light green dye named "&aHub Games" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
  7010. else:
  7011. format slot 10 of {_p} with fire charge named "&cHub Games" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
  7012. format slot 19 of {_p} with gray dye named "&cHub Games" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 1)]->[profile_system("menu", "user", {_p}, {_p2})]
  7013. if {mineplex.pref.hpv.%{_p}%} is true:
  7014. format slot 12 of {_p} with eye of ender named "&aHub Player Visibility" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
  7015. format slot 21 of {_p} with light green dye named "&aHub Player Visibility" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
  7016. else:
  7017. format slot 12 of {_p} with eye of ender named "&cHub Player Visibility" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
  7018. format slot 21 of {_p} with gray dye named "&cHub Player Visibility" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 2)]->[profile_system("menu", "user", {_p}, {_p2})]
  7019. if {mineplex.pref.pc.%{_p}%} is true:
  7020. format slot 14 of {_p} with paper named "&aPlayer Chat" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
  7021. format slot 23 of {_p} with light green dye named "&aPlayer Chat" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
  7022. else:
  7023. format slot 14 of {_p} with paper named "&cPlayer Chat" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
  7024. format slot 23 of {_p} with gray dye named "&cPlayer Chat" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 3)]->[profile_system("menu", "user", {_p}, {_p2})]
  7025. if {mineplex.pref.pm.%{_p}%} is true:
  7026. format slot 16 of {_p} with map named "&aPrivate Messaging" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
  7027. format slot 25 of {_p} with light green dye named "&aPrivate Messaging" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
  7028. else:
  7029. format slot 16 of {_p} with map named "&CPrivate Messaging" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
  7030. format slot 25 of {_p} with gray dye named "&cPrivate Messaging" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 4)]->[profile_system("menu", "user", {_p}, {_p2})]
  7031. if {mineplex.pref.rm.%{_p}%} is true:
  7032. format slot 31 of {_p} with command block named "&aSend random messages" with lore "&aEnabled||&f||&fClick to Disable||&f||&7Got nothing to say? We got you covered!" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
  7033. format slot 40 of {_p} with light green dye named "&aSend random messages" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
  7034. else:
  7035. format slot 31 of {_p} with command block named "&cSend random messages" with lore "&cDisabled||&f||&fClick to Enable||&f||&7Got nothing to say? We got you covered!" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
  7036. format slot 40 of {_p} with gray dye named "&cSend random messages" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 9)]->[profile_system("menu", "user", {_p}, {_p2})]
  7037. if {_arg2} is "game":
  7038. open chest with 6 rows named "Game Mechanic Preference" to {_p}
  7039. wait 3 tick
  7040. format slot 0 of {_p} with bed item named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
  7041. format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7042. format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7043. format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7044. format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7045. format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7046. format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7047. format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7048. format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7049. format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7050. format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7051. format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7052. format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7053. format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7054. format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7055. format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7056. format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7057. format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7058. format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7059. format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7060. format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7061. format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7062. format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7063. format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7064. format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7065. format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7066. if {mineplex.pref.aj.%{_p}%} is true:
  7067. format slot 11 of {_p} with diamond sword named "&aAuto Join Next Game" with lore "&aEnabled||&f||&fClick to Disable||&f||&7Feel like playing again?||&7Enable this, and when you're you||&7a 15 second timer will start||&7when it ends, it'll send you||&7to another game!" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
  7068. format slot 20 of {_p} with light green dye named "&aAuto Join Next Game" with lore "&aEnabled||&f||&fClick to Disable||" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
  7069. else:
  7070. format slot 11 of {_p} with diamond sword named "&cAuto Join Next Game" with lore "&cDisabled||&f||&fClick to Enable||&f||&7Feel like playing again?||&7Enable this, and when you're you||&7a 15 second timer will start||&7when it ends, it'll send you||&7to another game!" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
  7071. format slot 20 of {_p} with gray dye named "&cAuto Join Next Game" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 10)]->[profile_system("menu", "game", {_p}, {_p2})]
  7072. if {mineplex.pref.daw.%{_p}%} is true:
  7073. format slot 13 of {_p} with barrier named "&aDisable Automatic Warning" with lore "&aEnabled||&f||&fClick to Disable||&f||&7Know what you're doing?||&7Disable this to not receive||&7a message warning you about Auto-Join" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
  7074. format slot 22 of {_p} with light green dye named "&aDisable Automatic Warning" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
  7075. else:
  7076. format slot 13 of {_p} with barrier named "&cDisable Automatic Warning" with lore "&cDisabled||&f||&fClick to Enable||&f||&7Know what you're doing?||&7Disable this to not receive||&7a message warning you about Auto-Join" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
  7077. format slot 22 of {_p} with gray dye named "&cDisable Automatic Warning" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 11)]->[profile_system("menu", "game", {_p}, {_p2})]
  7078. if {mineplex.pref.cj.%{_p}%} is true:
  7079. format slot 15 of {_p} with clock named "&aCountdown to Join" with lore "&aEnabled||&f||&fClick to Disable||&f||&7See that fancy text when you're out?||&7If you click it, and this is enabled||&7a 15 second time will countdown||&7until you are sent to a new game" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
  7080. format slot 24 of {_p} with light green dye named "&aCountdown to Join" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
  7081. else:
  7082. format slot 15 of {_p} with clock named "&cCountdown to Join" with lore "&cDisabled||&f||&fClick to Enable||&f||&7See that fancy text when you're out?||&7If you click it, and this is enabled||&7a 15 second time will countdown||&7until you are sent to a new game" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
  7083. format slot 24 of {_p} with gray dye named "&cCountdown to Join" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 12)]->[profile_system("menu", "game", {_p}, {_p2})]
  7084. if {_arg2} is "misc":
  7085. open chest with 6 rows named "Miscellaneous Preference" to {_p}
  7086. wait 3 tick
  7087. format slot 0 of {_p} with bed item named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
  7088. format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7089. format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7090. format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7091. format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7092. format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7093. format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7094. format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7095. format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7096. format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7097. format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7098. format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7099. format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7100. format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7101. format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7102. format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7103. format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7104. format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7105. format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7106. format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7107. format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7108. format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7109. format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7110. format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7111. format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7112. format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7113. if {mineplex.pref.sct.%{_p}%} is true:
  7114. format slot 12 of {_p} with iron sword named "&aShow Clan Tips" with lore "&aEnabled||&f||&fClick to Disable||&f||&f" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7115. format slot 21 of {_p} with light green dye named "&aShow Clan Tips" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7116. else:
  7117. format slot 12 of {_p} with iron sword named "&cShow Clan Tips" with lore "&cDisabled||&f||&fClick to Enable||&f||&f" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7118. format slot 21 of {_p} with gray dye named "&cShow Clan Tips" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 13)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7119. if {mineplex.pref.hm.%{_p}%} is true:
  7120. format slot 14 of {_p} with note block named "&aHub Music" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7121. format slot 23 of {_p} with light green dye named "&aHub Music" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7122. else:
  7123. format slot 14 of {_p} with note block named "&cHub Music" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7124. format slot 23 of {_p} with gray dye named "&cHub Music" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 14)]->[profile_system("menu", "misc", {_p}, {_p2})]
  7125. if {_arg2} is "social":
  7126. open chest with 6 rows named "Social Preferences" to {_p}
  7127. wait 3 tick
  7128. format slot 0 of {_p} with bed item named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
  7129. format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7130. format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7131. format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7132. format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7133. format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7134. format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7135. format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7136. format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7137. format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7138. format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7139. format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7140. format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7141. format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7142. format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7143. format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7144. format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7145. format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7146. format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7147. format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7148. format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7149. format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7150. format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7151. format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7152. format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7153. format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7154. if {mineplex.pref.pr.%{_p}%} is true:
  7155. format slot 10 of {_p} with human head named "&aParty Requests" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
  7156. format slot 19 of {_p} with light green dye named "&aParty Requests" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
  7157. else:
  7158. format slot 10 of {_p} with human head named "&cParty Requests" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
  7159. format slot 19 of {_p} with gray dye named "&cParty Requests" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 15)]->[profile_system("menu", "social", {_p}, {_p2})]
  7160. if {mineplex.pref.spfr.%{_p}%} is true:
  7161. format slot 12 of {_p} with red flower named "&aShow Pending Friend Requests" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
  7162. format slot 21 of {_p} with light green dye named "&aShow Pending Friend Requests" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
  7163. else:
  7164. format slot 12 of {_p} with red flower named "&cShow Pending Friend Requests" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
  7165. format slot 21 of {_p} with gray dye named "&cShow Pending Friend Requests" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 16)]->[profile_system("menu", "social", {_p}, {_p2})]
  7166. if {mineplex.pref.dfg.%{_p}%} is true:
  7167. format slot 14 of {_p} with chest named "&aDisplay Friend GUI" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
  7168. format slot 23 of {_p} with light green dye named "&aDisplay Friend GUI" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
  7169. else:
  7170. format slot 14 of {_p} with chest named "&cDisplay Friend GUI" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
  7171. format slot 23 of {_p} with gray dye named "&cDisplay Friend GUI" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 17)]->[profile_system("menu", "social", {_p}, {_p2})]
  7172. if {mineplex.pref.sci.%{_p}%} is true:
  7173. format slot 16 of {_p} with book named "&aShow Community Invites" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
  7174. format slot 25 of {_p} with light green dye named "&aShow Community Invites" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
  7175. else:
  7176. format slot 16 of {_p} with book named "&cShow Community Invites" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
  7177. format slot 25 of {_p} with gray dye named "&cShow Community Invites" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 18)]->[profile_system("menu", "social", {_p}, {_p2})]
  7178. if {mineplex.pref.dpg.%{_p}%} is true:
  7179. format slot 31 of {_p} with chest named "&aDisplay Parties GUI" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
  7180. format slot 40 of {_p} with light green dye named "&aDisplay Parties GUI" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
  7181. else:
  7182. format slot 31 of {_p} with chest named "&cDisplay Parties GUI" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
  7183. format slot 40 of {_p} with gray dye named "&cDisplay Parties GUI" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 19)]->[profile_system("menu", "social", {_p}, {_p2})]
  7184. if {_arg2} is "staff":
  7185. open chest with 6 rows named "Exclusive Preferences" to {_p}
  7186. wait 3 tick
  7187. format slot 0 of {_p} with bed item named "&7← Go Back" to run [profile_system("menu", "prefs", {_p}, {_p2})]
  7188. format slot 1 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7189. format slot 2 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7190. format slot 3 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7191. format slot 4 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7192. format slot 5 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7193. format slot 6 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7194. format slot 7 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7195. format slot 8 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7196. format slot 9 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7197. format slot 17 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7198. format slot 18 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7199. format slot 26 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7200. format slot 27 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7201. format slot 35 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7202. format slot 36 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7203. format slot 44 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7204. format slot 45 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7205. format slot 46 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7206. format slot 47 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7207. format slot 48 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7208. format slot 49 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7209. format slot 50 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7210. format slot 51 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7211. format slot 52 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7212. format slot 53 of {_p} with light blue stained glass pane named "&f" to be unstealable
  7213. if {mineplex.pref.hif.%{_p}%} is true:
  7214. format slot 10 of {_p} with nether star named "&aHub Invisibility & Flight" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7215. format slot 19 of {_p} with light green dye named "&aHub Invisibility & Flight" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7216. else:
  7217. format slot 10 of {_p} with nether star named "&cHub Invisibility & Flight" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7218. format slot 19 of {_p} with gray dye named "&cHub Invisibility & Flight" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 20)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7219. if {mineplex.ff.%{_p}%} is true:
  7220. format slot 12 of {_p} with slimeball named "&aHub Forcefield" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7221. format slot 21 of {_p} with light green dye named "&aHub Forcefield" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7222. else:
  7223. format slot 12 of {_p} with slimeball named "&cHub Forcefield" with lore "&cDisabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7224. format slot 21 of {_p} with gray dye named "&cHub Forcefield" with lore "&cDisabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 8)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7225. if {mineplex.pref.gwen.%{_p}%} is true:
  7226. format slot 14 of {_p} with paper named "&aGlobal GWEN Reports" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7227. format slot 23 of {_p} with light green dye named "&aGlobal GWEN Reports" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7228. else:
  7229. format slot 14 of {_p} with paper named "&cGlobal GWEN Reports" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7230. format slot 23 of {_p} with gray dye named "&cGlobal GWEN Reports" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 5)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7231. if {mineplex.pref.report.%{_p}%} is true:
  7232. format slot 16 of {_p} with book named "&aUser Reports" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7233. format slot 25 of {_p} with light green dye named "&aUser Reports" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7234. else:
  7235. format slot 16 of {_p} with book named "&cUser Reports" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7236. format slot 25 of {_p} with gray dye named "&cUser Reports" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 6)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7237. if {mineplex.pref.ff.%{_p}%} is true:
  7238. format slot 31 of {_p} with saddle named "&aIgnore Hub Velocity" with lore "&aEnabled||&f||&fClick to Disable||&f" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7239. format slot 40 of {_p} with light green dye named "&aIgnore Hub Velocity" with lore "&aEnabled||&f||&fClick to Disable" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7240. else:
  7241. format slot 31 of {_p} with saddle named "&cIgnore Hub Velocity" with lore "&cDisabled||&f||&fClick to Enable||&f" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7242. format slot 40 of {_p} with gray dye named "&cIgnore Hub Velocity" with lore "&cDisabled||&f||&fClick to Enable" to run [prefsSystem({_p}, 7)]->[profile_system("menu", "staff", {_p}, {_p2})]
  7243.  
  7244. command /prefs:
  7245. trigger:
  7246. profile_system("menu", "prefs", player, player)
  7247.  
  7248. #GWEN CODING!! (Using my old plugin Shield) (I took it down as I was ripping off json.sk but wtevr) lol
  7249.  
  7250. on damage:
  7251. if "%Victim's name%" is "BeamCow" or "BeamGuar":
  7252. cancel event
  7253. on death:
  7254. if "%Victim's name%" is "BeamCow" or "BeamGuar":
  7255. clear drops
  7256.  
  7257. on quit:
  7258. delete {forcefield.past.%player%}
  7259.  
  7260. function beamGo(p: player) :: number:
  7261. apply slowness 255 to {_p} for 7 seconds
  7262. set {_p2} to location 3 blocks in front of {_p}
  7263. add 5 to y-coordinate of {_p2}
  7264. set {_p3} to location 3 blocks behind {_p}
  7265. add 5 to y-coordinate of {_p3}
  7266. set {_p4} to location 3 blocks left of {_p}
  7267. add 5 to y-coordinate of {_p4}
  7268. set {_p5} to location 3 blocks right of {_p}
  7269. add 5 to y-coordinate of {_p5}
  7270. spawn a guardian at {_p2}
  7271. add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
  7272. set {_t2} to last spawned entity
  7273. spawn a guardian at {_p3}
  7274. add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
  7275. set {_t3} to last spawned entity
  7276. spawn a guardian at {_p4}
  7277. add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
  7278. set {_t4} to last spawned entity
  7279. spawn a guardian at {_p5}
  7280. add "{CustomName:""BeamCow"", NoGravity:1, Silent:1}" to nbt of last spawned entity
  7281. set {_t5} to last spawned entity
  7282. set {_player} to {_p}
  7283. set {_r} to randomize "BHWFEAEG619"
  7284. set {_s} to "Chiss" parsed as a player
  7285. setPlayerdata({_p}, "banned", "yes")
  7286. punishBan({_s} ,{_player} , "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%")
  7287. set {banned::%{_player}%} to true
  7288. set {banned::%{_player}%::type} to "perm"
  7289. set {banned::%{_player}%::reason} to "[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%"
  7290. set {banned::%{_player}%::staff} to "Chiss"
  7291. set {banned::%{_player}%::when} to now
  7292. add "&ePunishment Type: &fOther||||&eReason: &f[GWEN] Token: %{_r}%||||&eStaff: &fChiss||||&eDate: &f%now%" to {p.%{_player}%::history::*}
  7293. Beam({_p}, {_t2})
  7294. Beam({_p}, {_t3})
  7295. Beam({_p}, {_t4})
  7296. Beam({_p}, {_t5})
  7297. wait 5.2 seconds
  7298. broadcast "&9GWEN> &7%{_p}% has been banned. I am always watching"
  7299. kick {_player} due to "&c&lYou are banned for Permanent by %{mineplex.config.servername}% Anti-Cheat%nl%&f[GWEN Cheat Detection]%nl%%nl%Ban Token:%nl%%{_r}%%nl%&2Unfairly banned? Appeal at &a%{mineplex.config.appealwebsite}%"
  7300.  
  7301. command /gwenban <player>:
  7302. permission: mineplex.admin
  7303. permission message: &9Permissions> &7You do not have permission to do that.
  7304. trigger:
  7305. beamGo(arg-1)
  7306.  
  7307. on shoot:
  7308. if projectile is an arrow:
  7309. if difference between {bow.%shooter%} and now is less than 2 ticks:
  7310. gwenAlert((shooter), ("Fast Bow"))
  7311. set {bow.%shooter%} to now
  7312.  
  7313. every 4 second :
  7314. set {autoclick.check} to true
  7315. wait 3 second
  7316. set {autoclick.check} to false
  7317. loop all players :
  7318. delete {player.click.%loop-player%}
  7319.  
  7320. on left click :
  7321. {autoclick.check} is true
  7322. add 1 to {player.click.%player%}
  7323. {player.click.%player%} > 69
  7324. gwenAlert((player), ("High CPS (%{player.click.%player%} / 3% clicks/second)"))
  7325.  
  7326. on walk on water:
  7327. set {_loc} to location of player
  7328. add 2 to y-coordinate of {_loc}
  7329. if block at {_loc} is air:
  7330. add 1 to {gwen.jesus.%player%}
  7331. if {gwen.jesus.%player%} is greater than 6:
  7332. gamemode of player is survival
  7333. gwenAlert((player), ("Jesus"))
  7334. delete {gwen.jesus.%player%}
  7335.  
  7336. on consume:
  7337. if difference between {fasteat.%player%} and now is less than 10 ticks:
  7338. cancel event
  7339. set {fasteat.%player%} to now
  7340. gwenAlert((player), ("FastEat"))
  7341. set {fasteat.%player%} to now
  7342.  
  7343. on damage:
  7344. if attacker is a player:
  7345. if victim is a player:
  7346. if attacker's gamemode is survival or adventure:
  7347. damage wasn't caused by thorns or projectile:
  7348. set {_reach.%attacker%} to distance between attacker and victim
  7349. set {_ping} to attacker's ping
  7350. if {_reach.%attacker%} is greater than 5.67:
  7351. if {_ping} is greater than 350:
  7352. gwenAlert((attacker), ("Reach"))
  7353. if {_ping} is less than 350:
  7354. gwenAlert((attacker), ("Reach"))
  7355.  
  7356. on damage of a player :
  7357. block at victim is not cobweb
  7358. victim is not riding
  7359. victim is not on fire
  7360. victim's y-coordinate is greater than 5
  7361. set {_loc9} to block north east victim
  7362. set {_loc8} to block south west victim
  7363. blocks within {_loc9} to {_loc8} is air
  7364. set {_loc} to location of victim
  7365. wait 10 ticks
  7366. set {_loc2} to location of victim
  7367. distance between {_loc} and {_loc2} = 0
  7368. victim's ping < 250
  7369. gwenAlert((victim), ("Velocity"))
  7370.  
  7371. #Systems
  7372.  
  7373. on leftclick holding tnt:
  7374. if {mineplex.tntlauncher} is true:
  7375. player has 1 tnt
  7376. spawn a primed tnt 1 meter above the player
  7377. add "{Fuse:60}" to nbt of the spawned entity
  7378. push the spawned entity in direction of player at speed 0.9
  7379. push the spawned entity upwards at speed 0.2
  7380. remove 1 tnt from player
  7381.  
  7382. on rightclick holding tnt:
  7383. if {mineplex.tntlauncher} is true:
  7384. player has 1 tnt
  7385. spawn a primed tnt 1 meter above the player
  7386. add "{Fuse:60}" to nbt of the spawned entity
  7387. push the spawned entity in direction of player at speed 0.9
  7388. push the spawned entity upwards at speed 0.2
  7389. remove 1 tnt from player
  7390.  
  7391. #Command Completers
  7392.  
  7393. on tab completer for "/mineplex-core":
  7394. if argument at 1 is set:
  7395. if argument at 1 is "useChat" or "titleOnJoin" or "useScoreboard":
  7396. add "true" to completions
  7397. add "false" to completions
  7398. else if argument at 1 is "chestPoint":
  7399. add "1" to completions
  7400. add "2" to completions
  7401. add "3" to completions
  7402. add "4" to completions
  7403. else if argument at 1 is "chestPointSub":
  7404. if argument at 2 is set:
  7405. add "1" to completions
  7406. add "2" to completions
  7407. add "3" to completions
  7408. add "4" to completions
  7409. add "5" to completions
  7410. add "6" to completions
  7411. add "7" to completions
  7412. add "8" to completions
  7413. else:
  7414. add "1" to completions
  7415. add "2" to completions
  7416. add "3" to completions
  7417. add "4" to completions
  7418. if argument at 1 is not set:
  7419. add "help" to completions
  7420. add "useChat" to completions
  7421. add "setAdmin" to completions
  7422. add "chestPoint" to completions
  7423. add "chestPointSub" to completions
  7424. add "titleOnJoin" to completions
  7425. add "reload" to completions
  7426. add "useScoreboard" to completions
  7427. add "spawnCarl" to completions
  7428. add "throwableTnt" to completions
  7429.  
  7430. on tab completer for "/tp":
  7431. add "here" to completions
  7432. add "h" to completions
  7433. add "back" to completions
  7434. add "b" to completions
  7435. add "all" to completions
  7436. loop all players:
  7437. add "%loop-player%" to completions
  7438.  
  7439. on tab completer for "/give":
  7440. if player has permission "mineplex.admin":
  7441. loop all items:
  7442. add "%loop-value%" to completions
  7443. loop all players:
  7444. add "%loop-player%" to completions
  7445. add "ALL" to completions
  7446.  
  7447. #Modules
  7448.  
  7449. on load:
  7450. delete {mineplex::modules::*}
  7451. set {mineplex.modulesapi.online} to true
  7452.  
  7453. on unload:
  7454. delete {mineplex::modules::*}
  7455. set {mineplex.modulesapi.online} to false
  7456.  
  7457. command /modules:
  7458. trigger:
  7459. send "&9Modules> &7Modules API version 0.1"
  7460. send "&9Modules> &7Going to *attempt* to list modules."
  7461. send "&9Modules> &7This does not mean that your module is not loaded."
  7462. loop {mineplex::modules::*}:
  7463. send "&9Modules> &e%loop-value%"
  7464.  
  7465. #add "Bungee Module" to {mineplex::modules::*}
  7466. #remove "Bungee Module" from {mineplex::modules::*}
  7467.  
  7468. #MPS
  7469.  
  7470. #on load:
  7471. # if {wget} is not set:
  7472. # download file from "" to file "./WheezyMap.zip"
  7473.  
  7474. #command /mpsconfirm:
  7475. # permission: mineplex.op
  7476. # trigger:
  7477. # if {mineplex.mps.%player%} is not set:
  7478. # send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly."
  7479. # send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1."
  7480. # copy dir "./mps/Mineplex" to "./mps/%player%-1/"
  7481. # load world "./mps/%player%-1"
  7482. # set {mps.%player%-1} to "yes"
  7483. # wait 20 seconds
  7484. # else:
  7485. # send "&9Personal Server Manager> &7Your server is still being created or already exists. If you haven't been connected in 20 seconds, type /server %player%-1."
  7486. #
  7487. #command /hostserver:
  7488. # permission: mineplex.op
  7489. # trigger:
  7490. # if {mineplex.mps.%player%} is not set:
  7491. # send "&9Personal Server Manager> &7%player%-1 successfully created. You will be sent to it shortly."
  7492. # send "&9Personal Server Manager> &7If you haven't been connected in 20 seconds, type /server %player%-1."
  7493. # create folder "./mps/%player%-1"
  7494. # load world "./mps/%player%-1"
  7495. # wait 20 seconds
  7496. # teleport player to spawn of "./mps/%player%-1"
  7497. # else:
  7498. # send "&9Personal Server Manager> &7Your server is still being created or already exists. If you haven't been connected in 20 seconds, type /server %player%-1."
  7499.  
  7500. #command /endserver:
  7501. # trigger:
  7502. # loop all players:
  7503. # loop-player's world is "./mps/%player%-1":
  7504. # teleport player to spawn of "%arg-1%"
  7505. # unload world "./mps/%player%-1"
  7506. # wait 2 seconds
  7507. # delete folder "./mps/%player%-1/data/"
  7508. # delete folder "./mps/%player%-1/region/"
  7509. # delete file "./mps/%player%-1/level.dat"
  7510. # delete file "./mps/%player%-1/uid.dat"
  7511. # delete file "./mps/%player%-1/session.lock"
  7512. # delete dir "./mps/%player%-1"
  7513.  
  7514. #command /tpwrd <text>:
  7515. # trigger:
  7516. # set {_w} to "world"
  7517. # teleport player to spawn of {_w}
  7518.  
  7519. #command /menu:
  7520. # trigger:
  7521. # open chest with 3 rows named "Private Server Menu" to player
  7522. # wait 1 tick
  7523. # format slot 11 of player with diamond sword named "&a&lGive Co-Host" with lore "||&e" to close then run [execute console command "say no way hosay"]
  7524. # format slot 13 of player with lava bucket named "&aRemove Player" with lore "||&e" to close then run [execute console command "kick Citrin_ lol"]
  7525. # format slot 15 of player with redstone comparator item named "&aGame Options" with lore "||&e" to close then run [execute console command "say xd"]
  7526. # format slot 20 of player with golden sword named "&a&lRemove Co-Host" with lore "||&e" to close then run [execute console command "say no way hosay"]
  7527. # format slot 22 of player with water bucket named "&a&lUn-Remove Player" with lore "||&e" to close then run [execute console command "say no way hosay"]
  7528. # format slot 24 of player with tnt named "&a&lKill Private Server" with lore "||&7Shift-Right Click to Kill Private Server" to close then run [execute console command "say xd"]
  7529.  
  7530.  
  7531. #skPerms by LimeGlass
  7532. #Thanks for Letting Me Bake This In!
  7533. options:
  7534. prefix: &6[&5SkPerms&6]
  7535. maincolour: &6
  7536. secondcolour: &7
  7537. command: /skperms
  7538. aliases: /perm, /permission
  7539. permission: skperms.admin
  7540.  
  7541. #CMD protection is basically extra security for your server. Only players inside of a list variable can use SkPerms
  7542. CMDprotection: false
  7543. CMDprotectionMsg: Unknown command. Type ""/help"" for help
  7544. #The player list is the list variable that contains players that can use SkPerms if CMDprotection is enabled
  7545. PlayerList: {example::players::*}
  7546.  
  7547. UseChat: false #use prefix and suffix in the chat
  7548. #Chat types:
  7549. #Display - Changes the player's display name (Vault will hook if installed)
  7550. #Override - !COMING SOON
  7551. ChatType: "Display"
  7552.  
  7553. version: 1.0.5
  7554.  
  7555. on script load:
  7556. if file "plugins\SkPerms" exists:
  7557. delete {skperms::config::*}
  7558. else:
  7559. set yaml value "version" from file "plugins\SkPerms\config.yml" to "{@version}"
  7560. set yaml value "useYML" from file "plugins\SkPerms\config.yml" to false
  7561. set {skperms::config::version} to yaml value "version" from file "plugins\SkPerms\config.yml"
  7562. set {skperms::config::useYML} to yaml value "useYML" from file "plugins\SkPerms\config.yml"
  7563. if {skperms::config::useYML} is true:
  7564. if {skperms::players::*} is not set:
  7565. stop
  7566. delete file "plugins\SkPerms\players.yml"
  7567. loop {skperms::players::*}:
  7568. loop {skperms::player::%loop-value%::permissions::*}:
  7569. add "%loop-value-2%" to yaml list "players.%loop-value-1%.permissions" from file "plugins\SkPerms\players.yml"
  7570. on script unload:
  7571. loop {skperms::groups::*}:
  7572. if {skperms::group::%loop-value%::*} is not set:
  7573. loop {skperms::group::%loop-value-1%::permissions::*}:
  7574. loop {skperms::players::*}:
  7575. remove "%loop-value-2%" from {skperms::player::%loop-value-3%::permissions::*}
  7576. loop {skperms::players::*}:
  7577. remove "%loop-value-1%" from {skperms::player::%loop-value-2%::groups::*}
  7578. if {skperms::player::%loop-value-2%::groups::*} is not empty:
  7579. loop {skperms::player::%loop-value-2%::groups::*}:
  7580. loop {skperms::group::%loop-value-1%::permissions::*}:
  7581. set {_p} to "%loop-value-2%" parsed as player
  7582. add "%loop-value-4%" to {_p}'s permissions
  7583. remove "%loop-value%" from {skperms::groups::*}
  7584. command {@command} [<text>] [<text>] [<text>] [<text>] [<text>]:
  7585. permission: {@permission}
  7586. aliases: {@aliases}
  7587. trigger:
  7588. if {@CMDprotection} is true:
  7589. if command sender is not console:
  7590. if {@PlayerList} doesn't contain player or "%player%":
  7591. message "{@CMDprotectionMsg}"
  7592. stop
  7593. if arg 1 is not set:
  7594. message ""
  7595. message "{@prefix} v{@version}:"
  7596. message "{@maincolour}{@command} deleteDefault"
  7597. message "{@secondcolour}Deletes default group setting (If set)"
  7598. message "{@maincolour}{@command} (d|default) (group)"
  7599. if {skperms::default} is set:
  7600. message "{@secondcolour}Set the default group {@maincolour}(&7%{skperms::default}%{@maincolour})"
  7601. else:
  7602. message "{@secondcolour}Set the default group"
  7603. message "{@maincolour}{@command} (p|player) (player) (add|remove|list) permission [permission]"
  7604. message "{@secondcolour}Add/remove/list a players permissions"
  7605. message "{@maincolour}{@command} (p|player) (player) (add|set|remove|list) group [group]"
  7606. message "{@secondcolour}Add/remove/set/list a players group"
  7607. message "{@maincolour}{@command} (g|group) (group) (add|remove|list) permission [permission]"
  7608. message "{@secondcolour}Add/remove/list a group permission"
  7609. message "{@maincolour}{@command} (g|group) (group) (add|remove|list) group [group]"
  7610. message "{@secondcolour}Add/remove/list a groups connected groups"
  7611. message "{@secondcolour}A group is created once it contains a permission"
  7612. message "{@maincolour}{@command} (g|group) (group) (prefix|suffix) set (text)"
  7613. message "{@secondcolour}Set a suffix or prefix to a group"
  7614. message ""
  7615. else if arg 1 is "deleteDefault":
  7616. delete {skperms::default}
  7617. message "{@prefix} {@maincolour}Removed default group (No group set)"
  7618. else if arg 1 is "d", "setdefault" or "default":
  7619. if arg 2 is set:
  7620. set {skperms::default} to "%arg 2%"
  7621. message "{@prefix} {@maincolour}Set default group to &l%arg 2%"
  7622. else:
  7623. message "{@prefix} {@maincolour}Error: Group not specified"
  7624. else if arg 1 is "p" or "player":
  7625. if arg 2 is not set:
  7626. message "{@prefix} {@maincolour}Error: Player not specified"
  7627. else if arg 2 is set:
  7628. if arg 3 is "a" or "add":
  7629. if arg 4 is "p", "permission" or "permissions":
  7630. if arg 5 is set:
  7631. if {skperms::groups::*} doesn't contain "%arg 2%":
  7632. add "%arg 2%" to {skperms::groups::*}
  7633. set {_player} to arg 2 parsed as player
  7634. add "%arg 5%" to {_player}'s permissions
  7635. set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions
  7636. message "{@prefix} {@maincolour}Added %arg 5% to %arg 2%'s permissions"
  7637. else:
  7638. message "{@prefix} {@maincolour}Error: Permission not specified"
  7639. else if arg 4 is "g", "group" or "groups":
  7640. if arg 5 is set:
  7641. if {skperms::groups::*} doesn't contain "%arg 2%":
  7642. add "%arg 2%" to {skperms::groups::*}
  7643. if {skperms::player::%arg 2%::groups::*} doesn't contain "%arg 5%":
  7644. add "%arg 5%" to {skperms::player::%arg 2%::groups::*}
  7645. else:
  7646. message "{@prefix} {@secondcolour}%arg 2% already has group %arg 5%"
  7647. stop
  7648. message "{@prefix} {@maincolour}Added %arg 2% to group %arg 5%"
  7649. if {@UseChat} is true:
  7650. if {@ChatType} is "Display" or "display":
  7651. loop all players:
  7652. if {skperms::player::%player%::groups::*} contains "%arg 5%":
  7653. if {skperms::group::%arg 5%::prefix} is set:
  7654. if {skperms::group::%arg 5%::suffix} is set:
  7655. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7656. else:
  7657. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
  7658. else if {skperms::group::%arg 5%::suffix} is set:
  7659. set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7660. else:
  7661. set loop-player's display name to "%player%"
  7662. loop all players:
  7663. if {skperms::player::%player%::groups::*} is not set:
  7664. set loop-player's display name to "%player%"
  7665. else:
  7666. message "{@prefix} {@maincolour}Error: Group not specified"
  7667. else:
  7668. message "{@prefix} {@maincolour}Error: Type not specified"
  7669. else if arg 3 is "s" or "set":
  7670. if arg 4 is "g", "group" or "groups":
  7671. if arg 5 is set:
  7672. if {skperms::groups::*} doesn't contain "%arg 2%":
  7673. add "%arg 2%" to {skperms::groups::*}
  7674. delete {skperms::player::%arg 2%::groups::*}
  7675. add "%arg 5%" to {skperms::player::%arg 2%::groups::*}
  7676. message "{@prefix} {@maincolour}Set %arg 2% to group %arg 5%"
  7677. if {@UseChat} is true:
  7678. if {@ChatType} is "Display" or "display":
  7679. loop all players:
  7680. if {skperms::player::%player%::groups::*} contains "%arg 5%":
  7681. if {skperms::group::%arg 5%::prefix} is set:
  7682. if {skperms::group::%arg 5%::suffix} is set:
  7683. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7684. else:
  7685. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
  7686. else if {skperms::group::%arg 5%::suffix} is set:
  7687. set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7688. else:
  7689. set loop-player's display name to "%player%"
  7690. loop all players:
  7691. if {skperms::player::%player%::groups::*} is not set:
  7692. set loop-player's display name to "%player%"
  7693. else:
  7694. message "{@prefix} {@maincolour}Error: Group not specified"
  7695. else:
  7696. message "{@prefix} {@maincolour}Error: Type not specified"
  7697. else if arg 3 is "r" or "remove":
  7698. if arg 4 is "p", "permission" or "permissions":
  7699. if arg 5 is set:
  7700. set {_player} to arg 2 parsed as player
  7701. remove "%arg 5%" from {_player}'s permissions
  7702. set {skperms::player::%arg 2%::permissions::*} to {_player}'s permissions
  7703. message "{@prefix} {@maincolour}Removed %arg 5% from %arg 2%'s permissions"
  7704. else:
  7705. message "{@prefix} {@maincolour}Error: Permission not specified"
  7706. else if arg 4 is "g", "group" or "groups":
  7707. if arg 5 is set:
  7708. if {skperms::player::%arg 2%::groups::*} contains "%arg 5%":
  7709. remove "%arg 5%" from {skperms::player::%arg 2%::groups::*}
  7710. message "{@prefix} {@maincolour}Removed %arg 2% from group %arg 5%"
  7711. if {@UseChat} is true:
  7712. if {@ChatType} is "Display" or "display":
  7713. loop all players:
  7714. if {skperms::player::%player%::groups::*} contains "%arg 5%":
  7715. if {skperms::group::%arg 5%::prefix} is set:
  7716. if {skperms::group::%arg 5%::suffix} is set:
  7717. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7718. else:
  7719. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
  7720. else if {skperms::group::%arg 5%::suffix} is set:
  7721. set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7722. else:
  7723. set loop-player's display name to "%player%"
  7724. loop all players:
  7725. if {skperms::player::%player%::groups::*} is not set:
  7726. set loop-player's display name to "%player%"
  7727. else:
  7728. message "{@prefix} {@maincolour}Error: Player %arg 2% doesn't have that group"
  7729. else:
  7730. message "{@prefix} {@maincolour}Error: Group not specified"
  7731. else:
  7732. message "{@prefix} {@maincolour}Error: Type not specified"
  7733. else if arg 3 is "l" or "list":
  7734. if arg 4 is "p", "permission" or "permissions":
  7735. set {_player} to arg 2 parsed as player
  7736. message "{@prefix} {@maincolour}%{_player}'s permissions%"
  7737. else if arg 4 is "g", "group" or "groups":
  7738. message "{@prefix} {@maincolour}%{skperms::player::%arg 2%::groups::*}%"
  7739. else:
  7740. message "{@prefix} {@maincolour}Error: Type not specified"
  7741. else if arg 1 is "g", "group" or "groups":
  7742. if arg 2 is not set:
  7743. message "{@prefix} {@maincolour}Error: Group not specified"
  7744. else if arg 2 is set:
  7745. if arg 3 is "a" or "add":
  7746. if arg 4 is "p", "permission" or "permissions":
  7747. if arg 5 is set:
  7748. if {skperms::groups::*} doesn't contain "%arg 2%":
  7749. add "%arg 2%" to {skperms::groups::*}
  7750. add "%arg 5%" to {skperms::group::%arg 2%::permissions::*}
  7751. message "{@prefix} {@maincolour}Added %arg 5% to group %arg 2%'s permissions"
  7752. loop all players:
  7753. if {skperms::player::%player%::groups::*} contains "%arg 2%":
  7754. loop {skperms::group::%arg 2%::permissions::*}:
  7755. add "%loop-value-2%" to loop-player's permissions
  7756. else:
  7757. message "{@prefix} {@maincolour}Error: Permission not specified"
  7758. else if arg 4 is "g", "group" or "groups":
  7759. if arg 5 is set:
  7760. if {skperms::groups::*} doesn't contain "%arg 2%":
  7761. add "%arg 2%" to {skperms::groups::*}
  7762. loop {skperms::group::%arg 5%::permissions::*}:
  7763. add "%loop-value%" to {skperms::group::%arg 2%::permissions::*}
  7764. message "{@prefix} {@maincolour}Added %arg 5%'s permissions to group %arg 2%"
  7765. loop all players:
  7766. if {skperms::player::%player%::groups::*} contains "%arg 2%":
  7767. loop {skperms::group::%arg 2%::permissions::*}:
  7768. add "%loop-value-2%" to loop-player's permissions
  7769. else:
  7770. message "{@prefix} {@maincolour}Error: Group not specified"
  7771. else:
  7772. message "{@prefix} {@maincolour}Error: Type not specified"
  7773. else if arg 3 is "r" or "remove":
  7774. if arg 4 is "p", "permission" or "permissions":
  7775. if arg 5 is set:
  7776. loop all players:
  7777. if {skperms::player::%player%::groups::*} contains "%arg 2%":
  7778. loop {skperms::group::%arg 2%::permissions::*}:
  7779. remove "%loop-value-2%" from loop-player's permissions
  7780. remove "%arg 5%" from {skperms::group::%arg 2%::permissions::*}
  7781. message "{@prefix} {@maincolour}Removed %arg 5% from group %arg 2%'s permissions"
  7782. loop all players:
  7783. if {skperms::player::%player%::groups::*} contains "%arg 2%":
  7784. loop {skperms::group::%arg 2%::permissions::*}:
  7785. add "%loop-value-2%" to loop-player's permissions
  7786. else:
  7787. message "{@prefix} {@maincolour}Error: Permission not specified"
  7788. else if arg 4 is "g", "group" or "groups":
  7789. if arg 5 is set:
  7790. loop all players:
  7791. if {skperms::player::%player%::groups::*} contains "%arg 2%":
  7792. loop {skperms::group::%arg 2%::permissions::*}:
  7793. remove "%loop-value-2%" from loop-player's permissions
  7794. loop {skperms::group::%arg 5%::permissions::*}:
  7795. remove "%loop-value%" from {skperms::group::%arg 2%::permissions::*}
  7796. add 1 to {_l}
  7797. message "{@prefix} {@maincolour}Removed %{_l}% of %arg 5%'s permissions from group %arg 2%"
  7798. loop all players:
  7799. if {skperms::player::%player%::groups::*} contains "%arg 2%":
  7800. loop {skperms::group::%arg 2%::permissions::*}:
  7801. add "%loop-value-2%" to loop-player's permissions
  7802. else:
  7803. message "{@prefix} {@maincolour}Error: Group not specified"
  7804. else:
  7805. message "{@prefix} {@maincolour}Error: Type not specified"
  7806. else if arg 3 is "l" or "list":
  7807. if arg 4 is "p", "permission" or "permissions":
  7808. message "{@prefix} {@maincolour}%{skperms::group::%arg 2%::permissions::*}%"
  7809. else:
  7810. message "{@prefix} {@maincolour}Error: Type not specified"
  7811. else if arg 3 is "prefix" or "suffix":
  7812. if arg 4 is "set":
  7813. if arg 5 is set:
  7814. set {skperms::group::%arg 2%::%arg 3%} to "%arg 5%"
  7815. message "{@prefix} {@maincolour}%arg 3% set to %arg 5%"
  7816. if {@UseChat} is true:
  7817. if {@ChatType} is "Display" or "display":
  7818. loop all players:
  7819. if {skperms::player::%player%::groups::*} contains "%arg 5%":
  7820. if {skperms::group::%arg 5%::prefix} is set:
  7821. if {skperms::group::%arg 5%::suffix} is set:
  7822. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7823. else:
  7824. set loop-player's display name to coloured "%{skperms::group::%arg 5%::prefix}%%loop-player%"
  7825. else if {skperms::group::%arg 5%::suffix} is set:
  7826. set loop-player's display name to coloured "%loop-player%%{skperms::group::%arg 5%::suffix}%"
  7827. else:
  7828. set loop-player's display name to "%player%"
  7829. loop all players:
  7830. if {skperms::player::%player%::groups::*} is not set:
  7831. set loop-player's display name to "%player%"
  7832. else:
  7833. message "{@prefix} {@maincolour}Prefix/Suffix not specified"
  7834. else:
  7835. message "{@prefix} {@maincolour}Error: Type not specified (Type ""set"")"
  7836. #on quit:
  7837. # set {skperms::player::%player%::permissions::*} to player's permissions
  7838.  
  7839. on join:
  7840. loop 2 times:
  7841. remove "%player%" from {skperms::players::*}
  7842. add "%player%" to {skperms::players::*}
  7843. loop {skperms::groups::*}:
  7844. if player has permission "skperms.group.%loop-value%":
  7845. if {skperms::player::%player%::groups::*} doesn't contain "%loop-value%":
  7846. add "%loop-value%" to {skperms::player::%player%::groups::*}
  7847. if {skperms::default} is set:
  7848. loop {skperms::group::%{skperms::default}%::permissions::*}:
  7849. add "%loop-value%" to player's permissions
  7850. loop {skperms::player::%player%::permissions::*}:
  7851. add "%loop-value%" to player's permissions
  7852. if {skperms::player::%player%::groups::*} is not empty:
  7853. loop {skperms::player::%player%::groups::*}:
  7854. loop {skperms::group::%loop-value%::permissions::*}:
  7855. add "%loop-value-2%" to player's permissions
  7856. if {@UseChat} is true:
  7857. if {@ChatType} is "Display" or "display":
  7858. if {skperms::group::%loop-index%::prefix} is set:
  7859. if {skperms::group::%loop-index%::suffix} is set:
  7860. set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%%{skperms::group::%loop-index%::suffix}%"
  7861. else:
  7862. set player's display name to coloured "%{skperms::group::%loop-index%::prefix}%%player%"
  7863. else if {skperms::group::%loop-index%::suffix} is set:
  7864. set player's display name to coloured "%player%%{skperms::group::%loop-index%::suffix}%"
  7865. else:
  7866. set player's display name to "%player%"
  7867. loop all players:
  7868. if {skperms::player::%player%::groups::*} is not set:
  7869. set loop-player's display name to "%player%"
  7870.  
  7871. on load:
  7872. set {_time} to difference between {mineplex.starttime} and now
  7873. broadcast "&9MCR> &7Mineplex Core &e{@MCRVER} &7has been loaded! (%{_time}%)"
Add Comment
Please, Sign In to add comment