Finish cvar alias support.

Several functions that manipulate cvars were not checking for aliases.
This commit is contained in:
Bill Currie 2011-07-04 21:05:42 +09:00
parent 617e70c8e3
commit 6484dd16c7
2 changed files with 22 additions and 0 deletions

View file

@ -52,6 +52,8 @@ bi_Cvar_SetString (progs_t *pr)
const char *val = P_GSTRING (pr, 1);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
if (var)
Cvar_Set (var, val);
}
@ -63,6 +65,8 @@ bi_Cvar_SetInteger (progs_t *pr)
int val = P_INT (pr, 1);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
if (var)
Cvar_Set (var, va ("%d", val));
}
@ -74,6 +78,8 @@ bi_Cvar_SetFloat (progs_t *pr)
float val = P_FLOAT (pr, 1);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
if (var)
Cvar_Set (var, va ("%g", val));
}
@ -85,6 +91,8 @@ bi_Cvar_SetVector (progs_t *pr)
float *val = P_VECTOR (pr, 1);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
if (var)
Cvar_Set (var, va ("%g %g %g", val[0], val[1], val[2]));
}
@ -95,6 +103,8 @@ bi_Cvar_GetString (progs_t *pr)
const char *varname = P_GSTRING (pr, 0);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
if (var)
RETURN_STRING (pr, var->string);
else
@ -107,6 +117,8 @@ bi_Cvar_GetInteger (progs_t *pr)
const char *varname = P_GSTRING (pr, 0);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
R_INT (pr) = var ? var->int_val : 0;
}
@ -116,6 +128,8 @@ bi_Cvar_GetFloat (progs_t *pr)
const char *varname = P_GSTRING (pr, 0);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
R_FLOAT (pr) = var ? var->value : 0;
}
@ -125,6 +139,8 @@ bi_Cvar_GetVector (progs_t *pr)
const char *varname = P_GSTRING (pr, 0);
cvar_t *var = Cvar_FindVar (varname);
if (!var)
var = Cvar_FindAlias (varname);
if (var)
RETURN_VECTOR (pr, var->vec);
else

View file

@ -401,6 +401,8 @@ Cvar_Inc_f (void)
case 2:
name = Cmd_Argv (1);
var = Cvar_FindVar (name);
if (!var)
var = Cvar_FindAlias (name);
if (!var)
Sys_Printf ("Unknown variable \"%s\"\n", name);
break;
@ -444,6 +446,8 @@ Cvar_Cycle_f (void)
name = Cmd_Argv (1);
var = Cvar_FindVar (name);
if (!var)
var = Cvar_FindAlias (name);
if (!var) {
var = Cvar_Get (name, Cmd_Argv (Cmd_Argc () - 1), CVAR_USER_CREATED,
0, USER_CVAR);
@ -490,6 +494,8 @@ Cvar_Reset_f (void)
case 2:
name = Cmd_Argv (1);
var = Cvar_FindVar (name);
if (!var)
var = Cvar_FindAlias (name);
if (!var)
Sys_Printf ("Unknown variable \"%s\"\n", name);
else