From 7696bb37cc543fc72bfcc0b987c6cbed4c2e2959 Mon Sep 17 00:00:00 2001 From: minenice55 Date: Wed, 28 Jan 2026 18:49:06 -0500 Subject: [PATCH] fix friction related issues --- src/d_netcmd.c | 4 ++-- src/k_kart.c | 9 ++++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 92b8d9bb8..f13b53579 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -559,8 +559,8 @@ consvar_t cv_kartstacking_recspin_accelboost_lo = CVAR_INIT ("vanillaboost_recsp consvar_t cv_kartstacking_recspin_handleboost_lo = CVAR_INIT ("vanillaboost_recspin_handleboost_lo", "0.25", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); consvar_t cv_kartstacking_recspin_speedboost_hi = CVAR_INIT ("vanillaboost_recspin_speedboost_hi", "0.0001", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); -consvar_t cv_kartstacking_recspin_accelboost_hi = CVAR_INIT ("vanillaboost_recspin_accelboost_hi", "6.0", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); -consvar_t cv_kartstacking_recspin_handleboost_hi = CVAR_INIT ("vanillaboost_recspin_handleboost_hi", "0.3", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); +consvar_t cv_kartstacking_recspin_accelboost_hi = CVAR_INIT ("vanillaboost_recspin_accelboost_hi", "8.0", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); +consvar_t cv_kartstacking_recspin_handleboost_hi = CVAR_INIT ("vanillaboost_recspin_handleboost_hi", "0.5", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); consvar_t cv_kartstacking_slope_decay = CVAR_INIT ("vanillaboost_slope_decay", "0.004", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); consvar_t cv_kartstacking_slope_brakemod = CVAR_INIT ("vanillaboost_slope_brakemod", "0.01", CV_NETVAR|CV_CHEAT|CV_FLOAT|CV_GUARD, CV_Unsigned, NULL); diff --git a/src/k_kart.c b/src/k_kart.c index 1c76c336c..5ace447d3 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -9665,7 +9665,10 @@ static boolean K_PlayerCanStartRecoverySpin(player_t *player) static boolean K_PlayerCanRecoverySpin(player_t *player) { return (K_RecoveryDashActive() && leveltime > starttime && (player->carry == CR_NONE) && - !(player->sneakertimer || K_IsPlayerDamaged(player) || player->squishedtimer || player->exiting || (player->pflags & PF_STASIS))); + !(player->sneakertimer || K_IsPlayerDamaged(player) || player->squishedtimer || + player->exiting || (player->pflags & PF_STASIS) || player->dashpadcooldown || + player->walltransferboost || player->loop.radius + )); } static void K_RecoveryDash(player_t *player) @@ -10765,10 +10768,10 @@ static void K_AdjustPlayerFriction(player_t *player) player->mo->friction = prevfriction; - if (player->pflags & PF_RECOVERYSPIN) + if ((player->pflags & PF_RECOVERYSPIN) && player->speed < K_GetKartSpeedFromStat(player->kartspeed, false)) { if (player->cmd.turning) - player->mo->friction += 2048; + player->mo->friction += 1800; else player->mo->friction += 1228; K_RecalculateMovefactor(player->mo);