Hexen2: Fix invisibility artifact bugs.
This commit is contained in:
parent
2a38bc1b2d
commit
04f2e112e7
3 changed files with 17 additions and 4 deletions
|
@ -5788,7 +5788,16 @@ void CL_LinkViewModel(void)
|
|||
{
|
||||
lerpents_t *le = &cl.lerpents[plnum+1];
|
||||
if (le->entstate)
|
||||
{
|
||||
playereffects = le->entstate->effects;
|
||||
#ifdef HEXEN2
|
||||
if (!le->entstate->modelindex || (le->entstate->hexen2flags & DRF_TRANSLUCENT))
|
||||
{ //urgh.
|
||||
ent.shaderRGBAf[3] *= .5;
|
||||
ent.flags |= RF_TRANSLUCENT;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (plnum < cl.allocated_client_slots)
|
||||
|
|
|
@ -590,8 +590,10 @@ static int te_515sevilhackworkaround;
|
|||
#define svc_updatecolors 17
|
||||
|
||||
#ifdef HEXEN2
|
||||
#define svch2_clearviewflags 41 //hexen2.
|
||||
#define svch2_setangles_lerp 50
|
||||
#define svch2_setviewflags 40 //hexen2.
|
||||
#define svch2_clearviewflags 41 //hexen2.
|
||||
#define svch2_setviewtint 46 //hexen2.
|
||||
#define svch2_setangles_lerp 50
|
||||
#endif
|
||||
|
||||
//these are present in the darkplaces engine.
|
||||
|
@ -1148,7 +1150,9 @@ void NPP_NQWriteByte(int dest, qbyte data) //replacement write func (nq to qw)
|
|||
nullterms = 1;
|
||||
break;
|
||||
#ifdef HEXEN2
|
||||
case svch2_clearviewflags:
|
||||
case svch2_setviewflags: //sets some viewmodel drawflag
|
||||
case svch2_clearviewflags: //undoes svch2_setviewflags
|
||||
case svch2_setviewtint: //tints the viewmodel (tied to hexen2's weird colormap stuff)
|
||||
if (progstype == PROG_H2)
|
||||
{
|
||||
protocollen = 2;
|
||||
|
|
|
@ -3683,7 +3683,7 @@ void SV_Snapshot_BuildStateQ1(entity_state_t *state, edict_t *ent, client_t *cli
|
|||
//The client still needs to know about it though, as it might have other effects on it.
|
||||
if (progstype == PROG_H2)
|
||||
{
|
||||
if (state->effects == H2EF_NODRAW)
|
||||
if (state->effects & H2EF_NODRAW)
|
||||
{
|
||||
//actually, H2 is pretty lame about this
|
||||
state->effects = 0;
|
||||
|
|
Loading…
Reference in a new issue