static void ResetVariables(int cvar_flags, qbool userinfo) { cvar_t *var; qbool check_userinfos = false; if (userinfo) { if (!cfg_save_userinfo.value) cvar_flags |= CVAR_USERINFO; else if (userinfo && cfg_save_userinfo.value == 1) check_userinfos = true; } for (var = cvar_vars; var; var = var->next) { if (!( (var->flags & (cvar_flags | CVAR_ROM | CVAR_INIT | CVAR_USER_CREATED | CVAR_NO_RESET)) || (var->group && !strcmp(var->group->name, CVAR_GROUP_NO_GROUP)) )) { if (check_userinfos && ( !strcmp(var->name, "team") || !strcmp(var->name, "skin") || !strcmp(var->name, "spectator") ||!strcmp(var->name, "name") || !strcmp(var->name, "topcolor") || !strcmp(var->name, "bottomcolor") )) continue; Cvar_ResetVar(var); } } }
void Cvar_Reset (qbool use_regex) { qbool re_search = false; cvar_t *var; char *name; int i; if (Cmd_Argc() < 2) { Com_Printf("%s <cvar> [<cvar2>..]: reset variable to it default value\n", Cmd_Argv(0)); return; } for (i=1; i<Cmd_Argc(); i++) { name = Cmd_Argv(i); if (use_regex && (re_search = IsRegexp(name))) if(!ReSearchInit(name)) continue; if (use_regex && re_search) { for (var = cvar_vars ; var ; var=var->next) { if (ReSearchMatch(var->name)) { Cvar_ResetVar(var); } } } else { if ((var = Cvar_Find(name))) Cvar_ResetVar(var); else Com_Printf("%s : No variable with name %s\n", Cmd_Argv(0), name); } if (use_regex && re_search) ReSearchDone(); } }