From 031754dcc6018080c0bcc2d07fb2d811b22240c4 Mon Sep 17 00:00:00 2001 From: estorado Date: Tue, 8 Jun 2021 23:19:10 +0200 Subject: [PATCH] Create antichat.lua --- antichat/antichat.lua | 85 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 antichat/antichat.lua diff --git a/antichat/antichat.lua b/antichat/antichat.lua new file mode 100644 index 0000000..455ee09 --- /dev/null +++ b/antichat/antichat.lua @@ -0,0 +1,85 @@ +modname="Antichat" +version="1.0" + +function et_InitGame() + et.RegisterModname(modname.." "..version) +end +-- Antichat by Ryven +-- Allow only wolfadmin commands to be passed + +local blackList = { "say", "say_team", "say_buddy", "say_teamnl", "m", "pm" } +local whitelist = { + "!help", + "!admintest", + "!greeting", + "!rules", + "!stats", + "!sprees", + "!listmaps", + "!time", + "!listplayers", + "!finger", + "!listaliases", + "!listlevels", + "!showwarns", + "!showhistory", + "!dewarn", + "!showbans", + "!warn", + "!put", + "!mute", + "!unmute", + "!vmute", + "!vunmute", + "!plock", + "!punlock", + "!kick", + "!ban", + "!unban", + "!slap", + "!gib", + "!setlevel", + "!incognito", + "!balance", + "!lock", + "!unlock", + "!shuffle", + "!shufflesr", + "!spec999", + "!swap", + "!cointoss", + "!nextmap", + "!pause", + "!unpause", + "!reset", + "!restart", + "!enablevote", + "!needbots", + "!kickbots", + "!putbots", + "!readconfig", + "!listlevels", + "!resetsprees" +} + +local function contains(table, value) + if value == "" then + return false + end + for i = 1, #table do + if table[i] == value then + return true + end + end + return false +end + +function et_ClientCommand(clientNum, command) + if contains(blackList, command) then + local arg = et.trap_Argv(1) + if not contains(whitelist, arg) then + return 1 + end + end + return 0 +end