From c0b18d035684f69f70b536fdeccc050c7c8fa3f4 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 25 Jan 2020 15:27:46 +0100 Subject: [PATCH] - fixed weapon projection being broken after saving in Blood. A classic case of having a function which performs too many different tasks. --- source/blood/src/view.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/blood/src/view.cpp b/source/blood/src/view.cpp index 000c9a0b1..92fd31c06 100644 --- a/source/blood/src/view.cpp +++ b/source/blood/src/view.cpp @@ -3408,9 +3408,8 @@ void viewDrawScreen(bool sceneonly) renderDrawMasks(); gView->pSprite->cstat = bakCstat; screen->FinishScene(); - if (sceneonly) return; - if (v78 || bDelirium) + if ((v78 || bDelirium) && !sceneonly) { if (videoGetRenderMode() == REND_CLASSIC) { @@ -3461,6 +3460,7 @@ void viewDrawScreen(bool sceneonly) int nClipDist = gView->pSprite->clipdist << 2; int ve8, vec, vf0, vf4; GetZRange(gView->pSprite, &vf4, &vf0, &vec, &ve8, nClipDist, 0); + if (sceneonly) return; #if 0 int tmpSect = nSectnum; if ((vf0 & 0xc000) == 0x4000) @@ -3481,7 +3481,7 @@ void viewDrawScreen(bool sceneonly) } } #endif - //PspTwoDSetter set; + if (gViewPos == 0) { if (cl_crosshair)