From 8599119c8d4ed9625939b910db3650718de9ac2e Mon Sep 17 00:00:00 2001 From: Alibek Omarov Date: Wed, 3 Nov 2021 23:06:51 +0600 Subject: [PATCH] engine: add filterable flag support for cvars and cmds --- engine/common/cmd.c | 3 +++ engine/common/cvar.c | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/engine/common/cmd.c b/engine/common/cmd.c index 4de7bbb3..56f63d57 100644 --- a/engine/common/cmd.c +++ b/engine/common/cmd.c @@ -952,6 +952,9 @@ static qboolean Cmd_ShouldAllowCommand( cmd_t *cmd, qboolean isPrivileged ) if( cl_filterstuffcmd.value <= 0.0f ) return true; + if( FBitSet( cmd->flags, CMD_FILTERABLE )) + return false; + for( i = 0; i < ARRAYSIZE( prefixes ); i++ ) { if( !Q_stricmp( cmd->name, prefixes[i] )) diff --git a/engine/common/cvar.c b/engine/common/cvar.c index a421e01c..70e0faca 100644 --- a/engine/common/cvar.c +++ b/engine/common/cvar.c @@ -769,15 +769,18 @@ static qboolean Cvar_ShouldSetCvar( convar_t *v, qboolean isPrivileged ) if( isPrivileged ) return true; - if( v->flags & FCVAR_PRIVILEGED ) + if( FBitSet( v->flags, FCVAR_PRIVILEGED )) return false; if( cl_filterstuffcmd.value <= 0.0f ) return true; + if( FBitSet( v->flags, FCVAR_FILTERABLE )) + return false; + for( i = 0; i < ARRAYSIZE( prefixes ); i++ ) { - if( Q_stricmp( v->name, prefixes[i] )) + if( !Q_stricmp( v->name, prefixes[i] )) return false; }