options: #Prefix used for chat prefix: &7[&6Report&7] # \/ EDIT HERE \/ #Icon used for background of menu menu.bg: white window glass #Icon used for submenu menu.smbg: gray window glass #Icon used for hacks submenu icon.hacks: diamond sword #Icon used for chat submenu icon.chat: paper #Icon used for other submenu icon.other: slimeball #permission to use /reports command perm.reports: group.admin #permisson to get live time report notifications perm.notify: group.admin # /\ END EDIT /\ on script load: send "{@prefix} Booting" to console clear {report::system::topics::*} # \/ EDIT HERE \/ add "ForceField", "AntiKnockBack", "test1", "test2" and "AutoClicker" to {report::system::topics::hacks::*} add "Swearing", "Harassment", "test1" and "Advertising" to {report::system::topics::chat::*} add "BeingADouche", "SleepingWithMyMother" and "Begging" to {report::system::topics::other::*} # /\ END EDIT /\ # Nothing more to edit beyond this point add {report::system::topics::hacks::*}, {report::system::topics::chat::*} and {report::system::topics::other::*} to {report::system::topics::all::*} if {report::system::icons::*} isn't set: set {report::system::icons::hacks} to {@icon.hacks} set {report::system::icons::chat} to {@icon.chat} set {report::system::icons::other} to {@icon.other} send "{@prefix} Initial setup complete!" to console send "{@prefix} Loaded successfully" to console command sudo : trigger: make arg-1 execute arg-2 command /report [] []: usage: /report trigger: if arg-2 is "main": open chest with 6 rows named "&4Report &c%arg-1% &4for?" to player wait a tick loop 54 times: format slot (loop-number - 1) of player with {@menu.bg} to be unstealable format slot 12 of player with {@icon.hacks} named "&4HACK" with lore "&cChoose the form for hack %arg-1% using here" to run "sudo %player% report %arg-1% hacks" format slot 13 of player with {@icon.chat} named "&4Chat" with lore "&cChoose the form for spamming %arg-1% using here" to run "sudo %player% report %arg-1% chat" format slot 14 of player with {@icon.other} named "&4Another" with lore "&cChoose another form for abuse %arg-1% using here" to run "sudo %player% report %arg-1% other" invoke "greyout" from player else if arg-2 is "hacks", "chat" or "other": invoke "greyout" from player loop size of {report::system::topics::%arg-2%::*} times: if 37 + loop-number > 42: set {_start} to 41 else: set {_start} to 37 format slot {_start} + loop-number of player with {report::system::icons::%arg-2%} named "&4%{report::system::topics::%arg-2%::%loop-number%}%" with lore "&cClick here if you want to report %arg-1% for %{report::system::topics::%arg-2%::%loop-number%}%" to close then run "sudo %player% report %arg-1% finalize %{report::system::topics::%arg-2%::%loop-number%}%" else if arg-2 is "finalize": if {report::reports::%arg-1%::%arg-3%::*} contains player: send "{@prefix} You have already reported this! We're looking into it." else: add player to {report::reports::%arg-1%::%arg-3%::*} set {_date} to "%now%" set {_date::*} to {_date} split by " " replace all "/" with "-" in {_date::1} log "%player% reported %arg-1% for %arg-3%" to "report/%{_date::1}%.log" send "{@prefix} &6%arg-1% has been reported for &c%arg-3%!%nl%{@prefix} Thank you for your feedback." loop players: if loop-player has permission "{@perm.notify}": send "{@prefix} &6%player% reported &6%arg-1% for &c%arg-3%" to loop-player sub "greyout": loop 5 times: format slot (37 + loop-number) of parameter-1 with {@menu.smbg} named "&4Nothing" with lore "&cChoose a topic under here" to be unstealable format slot (46 + loop-number) of parameter-1 with {@menu.smbg} named "&4Nothing" with lore "&cChoose a topic under here" to be unstealable command /reports []['[s]] [report][s]: usage: /reports (display | clear | remove) %player% permission: {@perm.reports} permission message: {@prefix} You are not of the 1337. trigger: if arg-1 is "display": loop {report::system::topics::all::*}: if {report::reports::%arg-2%::%loop-value%::*} is set: add loop-value to {_reasons::*} add size of {report::reports::%arg-2%::%loop-value%::*} to {_counts::*} if {_reasons::*} is set: send "{@prefix} &6%arg-2%'s report log:" loop size of {_reasons::*} times: send " &6%{_counts::%loop-number%}% count(s) of &c%{_reasons::%loop-number%}%" else: send "{@prefix} This player is &aclean!" else if arg-1 is "remove": clear {report::reports::%arg-2%::*} send "{@prefix} &cRemoved &6%arg-2% from reports" else if arg-1 is "clearall": clear {report::reports::*} send "{@prefix} &cCleared all reports!"