mirror of
https://github.com/nzp-team/fteqw.git
synced 2025-02-07 07:41:09 +00:00
Fix CSQC_UpdateViewLoading.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6185 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
f08b39318a
commit
75f11ba33b
1 changed files with 15 additions and 2 deletions
|
@ -226,6 +226,11 @@ static void CSQC_FindGlobals(qboolean nofuncs)
|
||||||
#define ensurevector(name) if (!csqcg.name) csqcg.name = junk._vector;
|
#define ensurevector(name) if (!csqcg.name) csqcg.name = junk._vector;
|
||||||
#define ensureentity(name) if (!csqcg.name) csqcg.name = &junk.edict;
|
#define ensureentity(name) if (!csqcg.name) csqcg.name = &junk.edict;
|
||||||
|
|
||||||
|
#define ensureprivfloat(name) if (!csqcg.name) {static pvec_t f; csqcg.name = &f;}
|
||||||
|
#define ensureprivint(name) if (!csqcg.name) {static pint_t i; csqcg.name = &i;}
|
||||||
|
#define ensureprivvector(name) if (!csqcg.name) {static pvec3_t v; csqcg.name = v;}
|
||||||
|
#define ensurepriventity(name) if (!csqcg.name) {static pint_t e; csqcg.name = &e;}
|
||||||
|
|
||||||
if (csqc_nogameaccess)
|
if (csqc_nogameaccess)
|
||||||
{
|
{
|
||||||
csqcg.CSQC_UpdateView = 0; //would fail
|
csqcg.CSQC_UpdateView = 0; //would fail
|
||||||
|
@ -305,6 +310,12 @@ static void CSQC_FindGlobals(qboolean nofuncs)
|
||||||
ensurefloat(trace_networkentity);
|
ensurefloat(trace_networkentity);
|
||||||
ensureentity(trace_ent);
|
ensureentity(trace_ent);
|
||||||
|
|
||||||
|
ensureprivfloat(clientcommandframe);
|
||||||
|
ensureprivfloat(input_timelength);
|
||||||
|
ensureprivvector(input_angles);
|
||||||
|
ensureprivvector(input_movevalues);
|
||||||
|
ensureprivfloat(input_buttons);
|
||||||
|
// ensureprivfloat(input_impulse);
|
||||||
|
|
||||||
if (csqcg.time)
|
if (csqcg.time)
|
||||||
*csqcg.time = cl.servertime;
|
*csqcg.time = cl.servertime;
|
||||||
|
@ -8846,7 +8857,7 @@ qboolean CSQC_DrawView(void)
|
||||||
if (!csqcg.CSQC_UpdateView || !csqcprogs)
|
if (!csqcg.CSQC_UpdateView || !csqcprogs)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (cls.state < ca_active && !CSQC_UnconnectedOkay(false))
|
if (cls.state < ca_active && !CSQC_UnconnectedOkay(false) && !CSQC_UseGamecodeLoadingScreen())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
r_secondaryview = 0;
|
r_secondaryview = 0;
|
||||||
|
@ -8971,6 +8982,8 @@ qboolean CSQC_DrawView(void)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
{
|
{
|
||||||
|
extern qboolean scr_drawloading;
|
||||||
|
extern int loading_stage;
|
||||||
void *pr_globals = PR_globals(csqcprogs, PR_CURRENT);
|
void *pr_globals = PR_globals(csqcprogs, PR_CURRENT);
|
||||||
if (csqc_isdarkplaces)
|
if (csqc_isdarkplaces)
|
||||||
{ //fucked for compatibility.
|
{ //fucked for compatibility.
|
||||||
|
@ -8984,7 +8997,7 @@ qboolean CSQC_DrawView(void)
|
||||||
}
|
}
|
||||||
G_FLOAT(OFS_PARM2) = !Key_Dest_Has(kdm_menu|kdm_cwindows) && !r_refdef.eyeoffset[0] && !r_refdef.eyeoffset[1];
|
G_FLOAT(OFS_PARM2) = !Key_Dest_Has(kdm_menu|kdm_cwindows) && !r_refdef.eyeoffset[0] && !r_refdef.eyeoffset[1];
|
||||||
|
|
||||||
if (csqcg.CSQC_UpdateViewLoading && cls.state && cls.state < ca_active)
|
if (csqcg.CSQC_UpdateViewLoading && ((cls.state && cls.state < ca_active) || scr_drawloading || loading_stage))
|
||||||
PR_ExecuteProgram(csqcprogs, csqcg.CSQC_UpdateViewLoading);
|
PR_ExecuteProgram(csqcprogs, csqcg.CSQC_UpdateViewLoading);
|
||||||
else
|
else
|
||||||
PR_ExecuteProgram(csqcprogs, csqcg.CSQC_UpdateView);
|
PR_ExecuteProgram(csqcprogs, csqcg.CSQC_UpdateView);
|
||||||
|
|
Loading…
Reference in a new issue