switch(request)
{
case CMD_REQUEST_COMMAND:
- {
+ {
if(argv(1))
{
- Ban_Delete(stof(argv(1)));
- return;
+ float tmp_number = -1;
+ string tmp_string;
+
+ if(substring(argv(1), 0, 1) == "#")
+ {
+ tmp_string = substring(argv(1), 1, -1);
+
+ if(tmp_string != "") // is it all one token? like #1
+ {
+ tmp_number = stof(tmp_string);
+ }
+ else if(argc > 2) // no, it's two tokens? # 1
+ {
+ tmp_number = stof(argv(2));
+ }
+ else
+ tmp_number = -1;
+ }
+ else // maybe it's ONLY a number?
+ {
+ tmp_number = stof(argv(1));
+
+ if((tmp_number == 0) && (argv(1) != "0"))
+ { tmp_number = -1; }
+ }
+
+ if(tmp_number >= 0)
+ {
+ Ban_Delete(tmp_number);
+ return;
+ }
}
}
// ==================================
// Do not hard code aliases for these, instead create them in commands.cfg... also: keep in alphabetical order, please ;)
+// but for 0.5 compat, we need "bans" here as it was replaced... REMOVE IT AFTER 0.6 RELEASE!!!!
#define BAN_COMMANDS(request,arguments,command) \
BAN_COMMAND("ban", BanCommand_ban(request, arguments, command), "Ban an IP address or a range of addresses (like 1.2.3)") \
BAN_COMMAND("banlist", BanCommand_banlist(request), "List all existing bans") \
+ BAN_COMMAND("bans", BanCommand_banlist(request), "") \
BAN_COMMAND("kickban", BanCommand_kickban(request, arguments, command), "Disconnect a client and ban it at the same time") \
BAN_COMMAND("unban", BanCommand_unban(request, arguments), "Remove an existing ban") \
/* nothing */
void BanCommand_macro_help()
{
#define BAN_COMMAND(name,function,description) \
- { print(" ^2", name, "^7: ", description, "\n"); }
+ { if(strtolower(description) != "") { print(" ^2", name, "^7: ", description, "\n"); } }
BAN_COMMANDS(0, 0, "")
#undef BAN_COMMAND
void BanCommand_macro_write_aliases(float fh)
{
#define BAN_COMMAND(name,function,description) \
- { CMD_Write_Alias("qc_cmd_sv", name, description); }
+ { if(strtolower(description) != "") { CMD_Write_Alias("qc_cmd_sv", name, description); } }
BAN_COMMANDS(0, 0, "")
#undef BAN_COMMAND
}
return FALSE;
-}
\ No newline at end of file
+}