From 58446441fe5db01b5720e9687134229c2b442fe7 Mon Sep 17 00:00:00 2001 From: James R Date: Mon, 6 Dec 2021 16:14:56 -0800 Subject: [PATCH] Don't water-run while in grow Also there was a typo lmao --- src/k_kart.c | 13 +++++++++++++ src/k_kart.h | 1 + src/p_mobj.c | 2 +- 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/k_kart.c b/src/k_kart.c index 73661c018..a66f34d32 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -2700,6 +2700,19 @@ boolean K_TripwirePass(player_t *player) return false; } +boolean K_WaterRun(player_t *player) +{ + if ( + player->invincibilitytimer || + player->sneakertimer || + player->tiregrease || + player->flamedash || + player->speed > 2 * K_GetKartSpeed(player, false) + ) + return true; + return false; +} + static fixed_t K_FlameShieldDashVar(INT32 val) { // 1 second = 75% + 50% top speed diff --git a/src/k_kart.h b/src/k_kart.h index 8b0f755d6..0b60d521a 100644 --- a/src/k_kart.h +++ b/src/k_kart.h @@ -108,6 +108,7 @@ void K_MomentumToFacing(player_t *player); boolean K_ApplyOffroad(player_t *player); boolean K_SlopeResistance(player_t *player); boolean K_TripwirePass(player_t *player); +boolean K_WaterRun(player_t *player); void K_ApplyTripWire(player_t *player, tripwirestate_t state); INT16 K_GetSpindashChargeTime(player_t *player); fixed_t K_GetSpindashChargeSpeed(player_t *player); diff --git a/src/p_mobj.c b/src/p_mobj.c index b52522a75..dba88de15 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -2957,7 +2957,7 @@ boolean P_CanRunOnWater(player_t *player, ffloor_t *rover) span > player->mo->height && player->speed / 3 > abs(player->mo->momz) && player->speed > K_GetKartSpeed(player, false) && - K_TripWirePass(player) && + K_WaterRun(player) && (rover->flags & FF_SWIMMABLE); }