diff --git a/quakespasm/Quake/cvar.c b/quakespasm/Quake/cvar.c index bb3d6d83..1dd9ff29 100644 --- a/quakespasm/Quake/cvar.c +++ b/quakespasm/Quake/cvar.c @@ -197,6 +197,19 @@ void Cvar_ResetAll_f (void) Cvar_Reset (var->name); } +/* +============ +Cvar_ResetCfg_f -- QuakeSpasm +============ +*/ +void Cvar_ResetCfg_f (void) +{ + cvar_t *var; + + for (var = cvar_vars ; var ; var = var->next) + if (var->flags & CVAR_ARCHIVE) Cvar_Reset (var->name); +} + //============================================================================== // // INIT @@ -217,6 +230,7 @@ void Cvar_Init (void) Cmd_AddCommand ("inc", Cvar_Inc_f); Cmd_AddCommand ("reset", Cvar_Reset_f); Cmd_AddCommand ("resetall", Cvar_ResetAll_f); + Cmd_AddCommand ("resetcfg", Cvar_ResetCfg_f); } //============================================================================== diff --git a/quakespasm/Quake/menu.c b/quakespasm/Quake/menu.c index 189b297a..afcfd7df 100644 --- a/quakespasm/Quake/menu.c +++ b/quakespasm/Quake/menu.c @@ -1120,7 +1120,7 @@ void M_Options_Draw (void) // OPT_CONSOLE: M_Print (16, 32 + 8*OPT_CONSOLE, " Goto console"); // OPT_DEFAULTS: - M_Print (16, 32 + 8*OPT_DEFAULTS, " Reset defaults"); + M_Print (16, 32 + 8*OPT_DEFAULTS, " Reset config"); // OPT_SCALE: M_Print (16, 32 + 8*OPT_SCALE, " Scale"); @@ -1210,8 +1210,11 @@ void M_Options_Key (int k) Con_ToggleConsole_f (); break; case OPT_DEFAULTS: - Cbuf_AddText ("resetall\n"); //johnfitz - Cbuf_AddText ("exec default.cfg\n"); + if (SCR_ModalMessage("Would you like to reset the\nconfiguration? (y/n)\n", 5.0f)) + { + Cbuf_AddText ("resetcfg\n"); + Cbuf_AddText ("exec default.cfg\n"); + } break; case OPT_VIDEO: M_Menu_Video_f ();