Cvars can be read-only now.
authorblack <black@d7cf8633-e32d-0410-b094-e92efae38249>
Wed, 19 Nov 2003 13:56:38 +0000 (13:56 +0000)
committerblack <black@d7cf8633-e32d-0410-b094-e92efae38249>
Wed, 19 Nov 2003 13:56:38 +0000 (13:56 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@3661 d7cf8633-e32d-0410-b094-e92efae38249

cvar.c
cvar.h
pr_edict.c

diff --git a/cvar.c b/cvar.c
index 678e01a..fb7cb18 100644 (file)
--- a/cvar.c
+++ b/cvar.c
@@ -223,6 +223,11 @@ void Cvar_Set (const char *var_name, const char *value)
                Con_Printf ("Cvar_Set: variable %s not found\n", var_name);
                return;
        }
+       if (var->flags & CVAR_READONLY)
+       {
+               Con_Printf ("Cvar_Set: %s is read-only\n", var_name);
+               return;
+       }
 
        Cvar_SetQuick(var, value);
 }
diff --git a/cvar.h b/cvar.h
index b623566..1c38b01 100644 (file)
--- a/cvar.h
+++ b/cvar.h
@@ -59,6 +59,7 @@ interface from being ambiguous.
 // cvar flags
 #define CVAR_SAVE 1
 #define CVAR_NOTIFY 2
+#define        CVAR_READONLY 4
 
 /*
 // type of a cvar for menu purposes
index efb16b5..89e6f3f 100644 (file)
@@ -42,7 +42,7 @@ int           type_size[8] = {1,sizeof(string_t)/4,1,3,1,1,sizeof(func_t)/4,sizeof(void *
 ddef_t *ED_FieldAtOfs(int ofs);
 qboolean ED_ParseEpair(edict_t *ent, ddef_t *key, const char *s);
 
-cvar_t pr_checkextension = {0, "pr_checkextension", "1"};
+cvar_t pr_checkextension = {CVAR_READONLY, "pr_checkextension", "1"};
 cvar_t nomonsters = {0, "nomonsters", "0"};
 cvar_t gamecfg = {0, "gamecfg", "0"};
 cvar_t scratch1 = {0, "scratch1", "0"};