summaryrefslogtreecommitdiff
path: root/src/game/g_admin.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/g_admin.c')
-rw-r--r--src/game/g_admin.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/game/g_admin.c b/src/game/g_admin.c
index ff65e70..05f43f4 100644
--- a/src/game/g_admin.c
+++ b/src/game/g_admin.c
@@ -389,6 +389,11 @@ g_admin_cmd_t g_admin_cmds[ ] =
{"bubble", G_admin_bubble, "bubble",
"continuously spawn bubbles around a player",
"[^3name|slot#^7]"
+ },
+
+ {"scrim", G_admin_scrim, "scrim",
+ "toggles scrim mode",
+ "[on|off]",
}
};
@@ -2331,6 +2336,7 @@ static AdminFlagListEntry_t adminFlagList[] =
{ ADMF_TEAMCHANGEFREE, "keeps credits on team switch" },
{ ADMF_TEAMCHAT_CMD, "can run commands from team chat" },
{ ADMF_UNACCOUNTABLE, "does not need to specify reason for kick/ban" },
+ { ADMF_NOSCRIMRESTRICTION, "team joining, vote and chat restrictions during scrims do not apply" },
{ ADMF_NO_BUILD, "can not build" },
{ ADMF_NO_CHAT, "can not talk" },
{ ADMF_NO_VOTE, "can not call votes" }
@@ -7589,3 +7595,43 @@ qboolean G_admin_bubble( gentity_t *ent, int skiparg )
return qtrue;
}
+
+qboolean G_admin_scrim(gentity_t *ent, int skiparg )
+{
+ char state[5];
+
+ if( G_SayArgc() < 2 + skiparg )
+ {
+ ADMP( "^3!scrim: ^7usage: !scrim [on|off]\n" );
+ return qfalse;
+ }
+
+ G_SayArgv( 1 + skiparg, state, sizeof( state ) );
+
+ if( !Q_stricmp(state, "on") )
+ {
+ if( g_scrimMode.integer != 0 )
+ {
+ ADMP( "^3!scrim: ^7scrim mode is already enabled.\n" );
+ return qfalse;
+ }
+ AP( va( "print \"^3!scrim: ^7%s ^7turned scrim mode ^2on^7\n\"", ( ent ) ? G_admin_adminPrintName( ent ) : "console" ) );
+ trap_Cvar_Set( "g_scrimMode", "1" );
+ }
+ else if( !Q_stricmp(state, "off") )
+ {
+ if( g_scrimMode.integer == 0 )
+ {
+ ADMP( "^3!scrim: ^7scrim mode is already disabled.\n" );
+ return qfalse;
+ }
+ AP( va( "print \"^3!scrim: ^7%s ^7turned scrim mode ^1off^7\n\"", ( ent ) ? G_admin_adminPrintName( ent ) : "console" ) );
+ trap_Cvar_Set( "g_scrimMode", "0" );
+
+ } else {
+ ADMP( "^3!scrim: ^7usage: !scrim [on|off]\n" );
+ return qfalse;
+ }
+
+ return qtrue;
+}