diff --git a/wadsrc/static/zscript/actors/player/player.zs b/wadsrc/static/zscript/actors/player/player.zs index 18b2efa8f..ed96c663d 100644 --- a/wadsrc/static/zscript/actors/player/player.zs +++ b/wadsrc/static/zscript/actors/player/player.zs @@ -49,6 +49,7 @@ class PlayerPawn : Actor double ViewBob; // [SP] ViewBob Multiplier double FullHeight; double curBob; + float prevBob; meta Name HealingRadiusType; meta Name InvulMode; @@ -1586,6 +1587,7 @@ class PlayerPawn : Actor virtual void PlayerThink() { let player = self.player; + prevBob = player.bob; UserCmd cmd = player.cmd; CheckFOV(); @@ -2365,9 +2367,14 @@ class PlayerPawn : Actor if (curbob != 0) { + double bobVal = player.bob; + if (i == 0) + { + bobVal = prevBob; + } //[SP] Added in decorate player.viewbob checks - double bobx = (player.bob * BobIntensity * Rangex * ViewBob); - double boby = (player.bob * BobIntensity * Rangey * ViewBob); + double bobx = (bobVal * BobIntensity * Rangex * ViewBob); + double boby = (bobVal * BobIntensity * Rangey * ViewBob); switch (bobstyle) { case Bob_Normal: