summaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
authorM. Kristall <mkpdev@gmail.com>2009-10-28 19:22:57 +0000
committerTim Angus <tim@ngus.net>2013-01-03 00:17:11 +0000
commitcf1234d63e48d4124bd9bd03ebb91b314f409e10 (patch)
treeb39f298cee431bcaafc9858a9897463a30d4679d /src/ui
parente3cfb28d459a57050a764e8048626497f4553b4d (diff)
* Server- and client-side tab completion for commands handled by the game module
* Admin commands are just like all other commands now: no more ! ("!map" was renamed to "changemap" since "map" already exists) * Text in the chat ui beginning with / or \ is treated as a command unless ui_chatCommands = 0 (default 1)
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/ui_main.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/ui/ui_main.c b/src/ui/ui_main.c
index 35293669..896d0ca7 100644
--- a/src/ui/ui_main.c
+++ b/src/ui/ui_main.c
@@ -96,9 +96,9 @@ vmCvar_t ui_serverStatusTimeOut;
vmCvar_t ui_textWrapCache;
vmCvar_t ui_developer;
-vmCvar_t ui_winner;
-
vmCvar_t ui_emoticons;
+vmCvar_t ui_winner;
+vmCvar_t ui_chatCommands;
static cvarTable_t cvarTable[ ] =
{
@@ -123,7 +123,8 @@ static cvarTable_t cvarTable[ ] =
{ &ui_textWrapCache, "ui_textWrapCache", "1", CVAR_ARCHIVE },
{ &ui_developer, "ui_developer", "0", CVAR_ARCHIVE | CVAR_CHEAT },
{ &ui_emoticons, "cg_emoticons", "1", CVAR_LATCH | CVAR_ARCHIVE },
- { &ui_winner, "ui_winner", "", CVAR_ROM }
+ { &ui_winner, "ui_winner", "", CVAR_ROM },
+ { &ui_chatCommands, "ui_chatCommands", "1", CVAR_ARCHIVE }
};
static int cvarTableSize = sizeof( cvarTable ) / sizeof( cvarTable[0] );
@@ -3045,13 +3046,17 @@ static void UI_RunMenuScript( char **args )
char buffer[ MAX_CVAR_VALUE_STRING ];
trap_Cvar_VariableStringBuffer( "ui_sayBuffer", buffer, sizeof( buffer ) );
- if( buffer[ 0 ] )
+ if( !buffer[ 0 ] )
+ ;
+ else if( ui_chatCommands.integer && ( buffer[ 0 ] == '/' ||
+ buffer[ 0 ] == '\\' ) )
{
- if( uiInfo.chatTeam )
- trap_Cmd_ExecuteText( EXEC_APPEND, va( "say_team \"%s\"\n", buffer ) );
- else
- trap_Cmd_ExecuteText( EXEC_APPEND, va( "say \"%s\"\n", buffer ) );
+ trap_Cmd_ExecuteText( EXEC_APPEND, buffer + 1 );
}
+ else if( uiInfo.chatTeam )
+ trap_Cmd_ExecuteText( EXEC_APPEND, va( "say_team \"%s\"\n", buffer ) );
+ else
+ trap_Cmd_ExecuteText( EXEC_APPEND, va( "say \"%s\"\n", buffer ) );
}
else if( Q_stricmp( name, "playMovie" ) == 0 )
{