on chat: loop {blocked::*}: if message contains loop-value: cancel event send "" send "&7&n " send "" send "&cWe've blocked your word &7'%loop-value%&7' &cAs it breaks our chat rules. If you find a bypass and abuse it, you may be punished. &bFind out more on &6/rules&b, and if you have any questions, join our discord. (/discord)" send "" send "&7&o(Report it instead)" send "" send "&7&m " send "" send "&c&l(!) &8%player% &7tried to say &7&o'%loop-value%&7' &c&l(!) &8- &7&o(Chat alert)" to all players where [input has permission "skript.blockwords"] command /blockword [] []: permission: skript.blockwords permission message: &cYou do not have the required permission to execute this command. aliases: bw trigger: if arg-1 is "block": if arg-2 is set: if {blocked::*} does not contain arg-2: add arg-2 to {blocked::*} send "&cYou haved blocked the word &7'%arg-2%&7'&c." send "&7&o(To see all the blocked words, use /blockword list)" send "&7&o(If you accidentally added this word or want to remove it, use /blockword delete (word) , or /chc and click the option)" else: send "&cThat word is already blocked!" send "&7&o(To remove it, use /blockword delete (word) or /chc and click the option)" stop else: send "&cYou have to type the word you have to block! /blockword block (word)" stop if arg-1 is "delete": if arg-2 is set: if {blocked::*} contains arg-2: remove arg-2 from {blocked::*} send "&cYou haved unblocked the word &7'%arg-2%&7'&c." stop else: send "&cThat word was never blocked!" stop else: send "&cYou have to type the word you have to unblock! /blockword delete (word)" stop if arg-1 is "list": send "&bThe filtered words are &a• &f%{blocked::*}%" stop else: send "&cNot a argument. Block/Delete/List" stop Variables: {mutechat} = 1 command /chc []: aliases: chatcontrol permission: skript.chc permission message: &cYou do not have the required permission to execute this command. trigger: open virtual chest inventory with size 6 named "&7- &9Chat Control" to player make gui slot 37 of player with arrow named "&4&lExit" with lore "&aClick to go back" to run: close player's inventory make gui slot 15 of player with lava bucket named "&cClear chat" with lore "&7Clears the chat, nobody will be able" and "&7to see previous messages" and "&aClick to clear chat" and "&c&l(!) WARNING CAN LAG SERVER &c&l(!)" to run: loop 6000 times: broadcast "" broadcast " &7&lChat has been cleared! " send "" close player's inventory make gui slot 11 of player with iron bar named "&6Block a word" with lore "&7Censors a word and people can't say it" and "&7This can be done with &7&o(/blockword add)&7 too" and "&aClick to censor a word" to run: set {Blockword::%player%} to 1 send "&7Now please &ctype &7a word in chat that you want to block" close player's inventory make gui slot 13 of player with water bucket named "&aUnblock a word" with lore "&7Uncensors a word and everyone can say it" and "&7This can be done with &7&o(/blockword remove) &7too" and "&cClick to uncensor a word" to run: set {Removeword::%player%} to 1 send "&7Now please &ctype &7a word in chat that you want to unblock" close player's inventory make gui slot 43 of player with redstone comparator named "&6&oList the blocked word" with lore "&7Lists all the blocked words" and "&7This can be done with &7&o(/blockword list) &7too" and "&cClick to see" to run: make player execute "/blockword list" make gui slot 0 and 1 and 2 and 3 and 4 and 5 and 6 and 7 and 8 and 9 and 18 and 27 and 36 and 45 and 46 and 47 and 48 and 49 and 50 and 51 and 52 and 53 and 44 and 35 and 26 and 17 of player with black stained glass pane to do nothing if {mutechat} = 1: make gui slot 31 of player with lime clay named "&bUnmute chat" with lore "&7Unmutes chat, everyone" and "&7will be able to talk" and "&cClick to Unmute chat" to run: set {mutechat} to 0 broadcast "&bServername &6&l> &7Chat has been &bunmuted&7." close player's inventory else: make gui slot 31 of player with red clay named "&bMute chat" with lore "&7Mutes chat, only staff" and "&7Will be able to talk." and "&aClick to mute chat" to run: set {mutechat} to 1 broadcast "&bServername &6&l> &7Chat has been &bmuted&7." close player's inventory on chat: if {Removeword::%player%} = 1: cancel event make player execute "/blockword delete %message%" set {Removeword::%player%} to 0 on chat: if {mutechat} = 1: if player does not have permission "skript.chc": send " &7&lChat is muted! " send "" send "&cYou have to be staff to talk!" send "" cancel event on chat: if {Blockword::%player%} = 1: cancel event make player execute "/blockword block %message%" set {Blockword::%player%} to 0