Half-Life: Fix viewmodel still drawing when dead, player moving
This commit is contained in:
parent
97f90ae72c
commit
2449fa492e
3 changed files with 6 additions and 5 deletions
|
@ -304,7 +304,7 @@ CSQC_UpdateView(float w, float h, float focus)
|
||||||
SkyCamera_Setup(getproperty(VF_ORIGIN));
|
SkyCamera_Setup(getproperty(VF_ORIGIN));
|
||||||
|
|
||||||
/* draw the viewmodel in a second pass if desired */
|
/* draw the viewmodel in a second pass if desired */
|
||||||
if (autocvar_r_viewmodelpass) {
|
if (autocvar_r_viewmodelpass && pl.health > 0) {
|
||||||
renderscene();
|
renderscene();
|
||||||
clearscene();
|
clearscene();
|
||||||
setproperty(VF_MIN, video_mins);
|
setproperty(VF_MIN, video_mins);
|
||||||
|
@ -314,12 +314,11 @@ CSQC_UpdateView(float w, float h, float focus)
|
||||||
setproperty(VF_AFOV, autocvar_r_viewmodelfov);
|
setproperty(VF_AFOV, autocvar_r_viewmodelfov);
|
||||||
setproperty(VF_ORIGIN, pSeat->m_vecPredictedOrigin + pl.view_ofs);
|
setproperty(VF_ORIGIN, pSeat->m_vecPredictedOrigin + pl.view_ofs);
|
||||||
View_DrawViewModel();
|
View_DrawViewModel();
|
||||||
CSQC_RenderScene();
|
} else if (pl.health > 0) {
|
||||||
} else {
|
|
||||||
View_DrawViewModel();
|
View_DrawViewModel();
|
||||||
CSQC_RenderScene();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CSQC_RenderScene();
|
||||||
RenderTarget_Monitor_Update();
|
RenderTarget_Monitor_Update();
|
||||||
|
|
||||||
for (entity b = world; (b = findfloat(b, ::isCSQC, 1));) {
|
for (entity b = world; (b = findfloat(b, ::isCSQC, 1));) {
|
||||||
|
|
|
@ -696,7 +696,7 @@ PMove_Run(void)
|
||||||
input_movevalues *= 0.25;
|
input_movevalues *= 0.25;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pl.flags & FL_FROZEN) {
|
if (pl.flags & FL_FROZEN || pl.movetype == MOVETYPE_NONE) {
|
||||||
input_movevalues = [0,0,0];
|
input_movevalues = [0,0,0];
|
||||||
input_buttons &= ~INPUT_BUTTON2;
|
input_buttons &= ~INPUT_BUTTON2;
|
||||||
}
|
}
|
||||||
|
|
|
@ -88,6 +88,8 @@ HLMultiplayerRules::PlayerDeath(base_player pl)
|
||||||
pl.takedamage = DAMAGE_NO;
|
pl.takedamage = DAMAGE_NO;
|
||||||
pl.gflags &= ~GF_FLASHLIGHT;
|
pl.gflags &= ~GF_FLASHLIGHT;
|
||||||
pl.armor = pl.activeweapon = pl.g_items = 0;
|
pl.armor = pl.activeweapon = pl.g_items = 0;
|
||||||
|
pl.health = 0;
|
||||||
|
|
||||||
Sound_Play(pl, CHAN_AUTO, "player.die");
|
Sound_Play(pl, CHAN_AUTO, "player.die");
|
||||||
|
|
||||||
/* force respawn */
|
/* force respawn */
|
||||||
|
|
Loading…
Reference in a new issue