/* ============ Cvar_WriteVariables Appends lines containing "set variable value" for all variables with the archive flag set to qtrue. ============ */ void Cvar_WriteVariables( fileHandle_t f, qboolean vmCvars ) { cvar_t *var; char buffer[1024]; for (var = cvar_vars ; var ; var = var->next) { if( ( var->flags & CVAR_ARCHIVE ) && ( ( var->flags & (CVAR_VM_CREATED|CVAR_USER_CREATED) ) != 0 ) == vmCvars ) { // write the latched value, even if it hasn't taken effect yet if ( var->latchedString ) { if( strlen( var->name ) + strlen( var->latchedString ) + 10 > sizeof( buffer ) ) { Com_Printf( S_COLOR_YELLOW "WARNING: value of variable " "\"%s\" too long to write to file\n", var->name ); continue; } Com_sprintf (buffer, sizeof(buffer), "seta %s \"%s\"\n", var->name, Cmd_EscapeString(var->latchedString)); } else { if( strlen( var->name ) + strlen( var->string ) + 10 > sizeof( buffer ) ) { Com_Printf( S_COLOR_YELLOW "WARNING: value of variable " "\"%s\" too long to write to file\n", var->name ); continue; } Com_sprintf (buffer, sizeof(buffer), "seta %s \"%s\"\n", var->name, Cmd_EscapeString(var->string)); } FS_Write( buffer, strlen( buffer ), f ); } } }
/* ============ Cmd_WriteAliases ============ */ void Cmd_WriteAliases(fileHandle_t f) { char buffer[1024] = "clearaliases\n"; cmd_alias_t *alias = cmd_aliases; FS_Write(buffer, strlen(buffer), f); while (alias) { Com_sprintf(buffer, sizeof(buffer), "alias %s \"%s\"\n", alias->name, Cmd_EscapeString(alias->exec)); FS_Write(buffer, strlen(buffer), f); alias = alias->next; } }