From bc05c33c201de01c4bfa29a092e6eb5e33352fb9 Mon Sep 17 00:00:00 2001 From: Marisa Kirisame Date: Mon, 2 Nov 2020 13:46:03 +0100 Subject: [PATCH] Copy over frozen/totallyfrozen player property behavior from DT: - Fixes end cutscene in Spooktober, and other cases where the player would be frozen but made to autowalk. - Also fixes preserving dash while frozen (this was definitely not intended). --- language.version | 2 +- zscript/swwm_player.zsc | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/language.version b/language.version index 4b1067fb8..b70c2641e 100644 --- a/language.version +++ b/language.version @@ -1,2 +1,2 @@ [default] -SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r593 \cu(Mon 2 Nov 13:31:12 CET 2020)"; +SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r594 \cu(Mon 2 Nov 13:46:03 CET 2020)"; diff --git a/zscript/swwm_player.zsc b/zscript/swwm_player.zsc index 2a9ea9d47..d540e292e 100644 --- a/zscript/swwm_player.zsc +++ b/zscript/swwm_player.zsc @@ -1071,6 +1071,14 @@ Class Demolitionist : PlayerPawn } override void MovePlayer() { + if ( !player || (player.mo != self) || (player.cheats&(CF_FROZEN|CF_TOTALLYFROZEN)) ) + { + dashboost = 0.; + if ( dashsnd ) A_StartSound("demolitionist/jetstop",CHAN_JETPACK); + dashsnd = false; + Super.MovePlayer(); + return; + } bool isdashing = InStateSequence(CurState,FindState("Dash")); if ( isdashing ) player.cmd.forwardmove = player.cmd.sidemove = 0; if ( (waterlevel < 2) && bFly && !bFlyCheat && !(player.cheats&CF_NOCLIP2) )