diff --git a/engine/client/cl_main.c b/engine/client/cl_main.c index 1cc40aed..b869dfa3 100644 --- a/engine/client/cl_main.c +++ b/engine/client/cl_main.c @@ -99,6 +99,7 @@ CVAR_DEFINE_AUTO( rate, "25000", FCVAR_USERINFO|FCVAR_ARCHIVE|FCVAR_FILTERABLE, static CVAR_DEFINE_AUTO( cl_ticket_generator, "revemu2013", FCVAR_ARCHIVE, "you wouldn't steal a car" ); static CVAR_DEFINE_AUTO( cl_advertise_engine_in_name, "1", FCVAR_ARCHIVE|FCVAR_PRIVILEGED, "add [Xash3D] to the nickname when connecting to GoldSrc servers" ); static CVAR_DEFINE_AUTO( cl_log_outofband, "0", FCVAR_ARCHIVE, "log out of band messages, can be useful for server admins and for engine debugging" ); +static CVAR_DEFINE_AUTO( cl_autorecord, "0", 0, "automatically start recording a demo after joining the server" ); client_t cl; client_static_t cls; @@ -231,6 +232,14 @@ static void CL_CheckClientState( void ) } Con_DPrintf( "client connected at %.2f sec\n", Platform_DoubleTime() - cls.timestart ); + + if( cl_autorecord.value && !cls.demoplayback ) + { + if( cls.demorecording ) + CL_Stop_f(); + + Cbuf_AddTextf( "record %s_%s\n", Q_timestamp( TIME_FILENAME ), clgame.mapname ); + } } } @@ -3335,6 +3344,7 @@ static void CL_InitLocal( void ) Cvar_RegisterVariable( &cl_ticket_generator ); Cvar_RegisterVariable( &cl_advertise_engine_in_name ); Cvar_RegisterVariable( &cl_log_outofband ); + Cvar_RegisterVariable( &cl_autorecord ); Cvar_RegisterVariable( &showpause ); Cvar_RegisterVariable( &mp_decals );