]> de.git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
Hopefully this fixes a bug introduced with the latest cleanup by LH.
authorblack <black@d7cf8633-e32d-0410-b094-e92efae38249>
Sat, 17 Feb 2007 11:27:09 +0000 (11:27 +0000)
committerblack <black@d7cf8633-e32d-0410-b094-e92efae38249>
Sat, 17 Feb 2007 11:27:09 +0000 (11:27 +0000)
Changed the menu code to always show the old quake menu if forceqmenu is set
(even if it lacks the gfx files).

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@6848 d7cf8633-e32d-0410-b094-e92efae38249

clvm_cmds.c
menu.c
progsvm.h
prvm_cmds.c

index 5148c56978047a6ad086210983ad56785a3a5d37..d6b17ff8905dd622bb7000feb800d85deafae7ea 100644 (file)
@@ -2029,7 +2029,7 @@ void VM_CL_select_cube (void)
                        continue;
                if (maxs1[0] < mins2[0] || maxs1[1] < mins2[1] || maxs1[2] < mins2[2])
                        continue;
-               PRVM_E_INT(ent,prog->fieldoffsets.chain) = PRVM_NUM_FOR_EDICT(chain);
+               PRVM_GETEDICTFIELDVALUE(ent,prog->fieldoffsets.chain)->edict = PRVM_NUM_FOR_EDICT(chain);
                chain = ent;
        }
 
@@ -2067,7 +2067,7 @@ void VM_CL_select_super (void)
                        continue;
                if (maxs1[0] < mins2[0] || maxs1[1] < mins2[1] || maxs1[2] < mins2[2])
                        continue;
-               PRVM_E_INT(ent,prog->fieldoffsets.chain) = PRVM_NUM_FOR_EDICT(chain);
+               PRVM_GETEDICTFIELDVALUE(ent,prog->fieldoffsets.chain)->edict = PRVM_NUM_FOR_EDICT(chain);
                chain = ent;
        }
 
diff --git a/menu.c b/menu.c
index e9597350fafabec523c47ea31fc3fb1a8e17a9a0..405a72b86f2055dfe861629b1de56fb9a988d975 100644 (file)
--- a/menu.c
+++ b/menu.c
@@ -28,6 +28,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #define TYPE_GAME 2
 #define TYPE_BOTH 3
 
+static cvar_t forceqmenu = { 0, "forceqmenu", "0", "enables the quake menu instead of the quakec menu.dat (if present)" };
+
 static int NehGameType;
 
 enum m_state_e m_state;
@@ -408,7 +410,7 @@ void M_Menu_Main_f (void)
                MAIN_ITEMS = 5;
 
        // check if the game data is missing and use a different main menu if so
-       m_missingdata = Draw_CachePic (s, true)->tex == r_texture_notexture;
+       m_missingdata = !forceqmenu.integer && Draw_CachePic (s, true)->tex == r_texture_notexture;
        if (m_missingdata)
                MAIN_ITEMS = 2;
 
@@ -4976,8 +4978,6 @@ void MP_Restart(void)
 //============================================================================
 // Menu router
 
-static cvar_t forceqmenu = { 0, "forceqmenu", "0", "enables the quake menu instead of the quakec menu.dat (if present)" };
-
 void (*MR_KeyEvent) (int key, char ascii, qboolean downevent);
 void (*MR_Draw) (void);
 void (*MR_ToggleMenu_f) (void);
index eb5160657655967ef0706f8e9381dabbd1eeef03..a059b0c5ac21612796ac75b668fe82bda0e2b675 100644 (file)
--- a/progsvm.h
+++ b/progsvm.h
@@ -379,7 +379,7 @@ typedef struct prvm_prog_s
 
 //     prvm_builtin_mem_t  *mem_list;
 
-// now passes as parameter of PRVM_LoadProgs
+// now passed as parameter of PRVM_LoadProgs
 //     char                            **required_func;
 //     int                                     numrequiredfunc;
 
index 8f15a2d57123b9d451c352673756c07c135454de..8ba51a3b2dcda1c109583f0a16a3adbb0b0b5ff8 100644 (file)
@@ -889,7 +889,7 @@ void VM_findchain (void)
                if (strcmp(t,s))
                        continue;
 
-               PRVM_E_INT(ent,prog->fieldoffsets.chain) = PRVM_NUM_FOR_EDICT(chain);
+               PRVM_GETEDICTFIELDVALUE(ent,prog->fieldoffsets.chain)->edict = PRVM_NUM_FOR_EDICT(chain);
                chain = ent;
        }
 
@@ -932,7 +932,7 @@ void VM_findchainfloat (void)
                if (PRVM_E_FLOAT(ent,f) != s)
                        continue;
 
-               PRVM_E_INT(ent,prog->fieldoffsets.chain) = PRVM_EDICT_TO_PROG(chain);
+               PRVM_GETEDICTFIELDVALUE(ent,prog->fieldoffsets.chain)->edict = PRVM_EDICT_TO_PROG(chain);
                chain = ent;
        }
 
@@ -1015,7 +1015,7 @@ void VM_findchainflags (void)
                if (!((int)PRVM_E_FLOAT(ent,f) & s))
                        continue;
 
-               PRVM_E_INT(ent,prog->fieldoffsets.chain) = PRVM_EDICT_TO_PROG(chain);
+               PRVM_GETEDICTFIELDVALUE(ent,prog->fieldoffsets.chain)->edict = PRVM_EDICT_TO_PROG(chain);
                chain = ent;
        }