patch from raorn ("Alexey I. Froloff" <sir_raorn@immo.ru>) to fix

interaction between -hipnotic (etc) and -game
This commit is contained in:
Bill Currie 2005-02-14 09:08:32 +00:00
parent b59f366684
commit b7def83d19
5 changed files with 37 additions and 8 deletions

View file

@ -93,7 +93,8 @@ void PR_ExecuteProgram (progs_t *pr, func_t fnum);
to PR_ExecuteProgram().
\param pr pointer to progs_t VM struct
\param fnum number of the function to call
\return true if \c fnum was a progs function, false if fnum was a builtin
\return true if \c fnum was a progs function, false if \c fnum was a
builtin
*/
int PR_CallFunction (progs_t *pr, func_t fnum);

View file

@ -169,6 +169,30 @@ static const char *qfs_default_dirconf =
" Inherit = (Quake);"
" Path = \"$gamedir\";"
" };"
" \"hipnotic\" = {"
" Inherit = (Quake);"
" Path = \"hipnotic\";"
" };"
" \"hipnotic:*\" = {"
" Inherit = (hipnotic);"
" Path = \"$gamedir\";"
" };"
" \"rogue\" = {"
" Inherit = (Quake);"
" Path = \"rogue\";"
" };"
" \"rogue:*\" = {"
" Inherit = (rogue);"
" Path = \"$gamedir\";"
" };"
" \"abyss\" = {"
" Inherit = (Quake);"
" Path = \"abyss\";"
" };"
" \"abyss:*\" = {"
" Inherit = (abyss);"
" Path = \"$gamedir\";"
" };"
"}";

View file

@ -162,6 +162,6 @@ extern qboolean isDedicated;
extern qboolean abyss, rogue, hipnotic, standard_quake;
extern struct cvar_s *registered;
void Game_Init (void);
const char *Game_Init (void);
#endif // __game_h

View file

@ -39,7 +39,7 @@ qboolean standard_quake = false;
qboolean hipnotic, rogue, abyss;
void
const char *
Game_Init (void)
{
int i;
@ -48,15 +48,17 @@ Game_Init (void)
standard_quake = true;
if ((i = COM_CheckParm ("-hipnotic"))) {
QFS_Gamedir ("hipnotic");
standard_quake = false;
hipnotic = true;
return "hipnotic";
} else if ((i = COM_CheckParm ("-rogue"))) {
QFS_Gamedir ("rogue");
standard_quake = false;
rogue = true;
return "rogue";
} else if ((i = COM_CheckParm ("-abyss"))) {
QFS_Gamedir ("abyss");
abyss = true;
return "abyss";
}
return "nq";
}

View file

@ -868,6 +868,8 @@ CL_Init_Memory (void)
void
Host_Init (void)
{
const char *mp;
Con_Printf ("Host_Init\n");
host_cbuf = Cbuf_New (&id_interp);
@ -913,7 +915,8 @@ Host_Init (void)
pr_gametype = "netquake";
QFS_Init ("nq");
mp = Game_Init ();
QFS_Init (mp);
PI_Init ();
Chase_Init_Cvars ();
@ -934,7 +937,6 @@ Host_Init (void)
PR_Init ();
V_Init ();
Game_Init ();
COM_Init ();
if (isDedicated) {