i need script for admin commands like !kick !ban !freeze !mute
ok and please don't forget to put !mute
reply me with the code
-- Variables admin = { 	list = {12345,99999,69420}, 	hooks = {"say"}, 	color = {red = "255000000", green = "000255000", blue = "000000255", white = "255255255"}, 	announce = function(id,txt) msg("\169255255255"..player(id,"name").." used \169"..txt)	end, 	fix = function(arg) 		local args = {} 		for k,v in pairs (arg) do 			if tonumber(v) then 				v = tonumber(v) 			end 			args[k] = v 		end 		return args 	end, 	commands = { -- arg[0] is id of player, arg[1] is the command made and arg[2] is target. 	-- you can use as many arguments as you want but all number strings will be converted into numbers. 	-- so if you want to have "3" you'll have to cast it into tostring(argument here) instead of just passing it 		["kick"] = function(arg) 			parse("kick "..arg[2]) 			admin.announce(arg[0],admin.color.green.." kick") 		end, 		["banusgn"] = function(arg) 			parse("banusgn "..player(arg[2],"usgn")) 			admin.announce(arg[0],admin.color.green.." ban by USGN") 		end, 		["banip"] = function(arg) 			parse("banip "..player(arg[2],"ip")) 			admin.announce(arg[0],admin.color.green.." ban by IP") 		end 	} } for k,v in pairs (admin.hooks) do 	addhook(v,"admin_"..v) end function string.split(str,pat) -- Splitting strings (sentences) into separate words local t = {} for word in string.gmatch(str,pat or "[^%s]+") do t[#t+1] = word end return t end -- Main Script: Functions function admin_say(id, txt) 	local arg = txt:split() 	arg[0] = id 	for _, usgn in ipairs(admin.list) do 		if player(id,"usgn") == usgn then 			if arg[1]:sub(1,1) == "!" then 				if admin.commands[arg[1]:sub(2,#arg[1])] then 					admin.commands[arg[1]:sub(2,#arg[1])](admin.fix(arg)) 				end 				return 1 			end 		end 	end end