From bdbf38807283502411b5a39c137f7d3748cd9e04 Mon Sep 17 00:00:00 2001 From: minenice55 Date: Wed, 4 Feb 2026 01:06:51 -0500 Subject: [PATCH] disable bouncy fastfall via directive should check light fast fall again --- src/d_netcmd.c | 2 ++ src/k_kart.c | 12 +++++++++++- src/k_kart.h | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 86329f65c..13f2cb7d4 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -615,7 +615,9 @@ consvar_t cv_kartdrafting_basedistance = CVAR_INIT ("kartdrafting_basedistance", static CV_PossibleValue_t airdrop_cons_t[] = {{AIRDROP_NONE, "Off"}, {AIRDROP_LIGHT, "Light"}, +#if 0 {AIRDROP_BOUNCY, "Bouncy"}, +#endif {AIRDROP_HEAVY, "Heavy"}, {0, NULL}}; consvar_t cv_kartairdrop = CVAR_INIT ("kartairdrop", "Off", CV_NETVAR|CV_CALL|CV_NOINIT|CV_GUARD, airdrop_cons_t, KartAirDrop_OnChange); diff --git a/src/k_kart.c b/src/k_kart.c index c972594dc..8445d22f5 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -6991,6 +6991,7 @@ static void K_AirDrop(player_t *player, ticcmd_t *cmd) { if ((player->pflags & PF_AIRDROP)) { +#if 0 if (airdropactive == AIRDROP_BOUNCY) { const fixed_t maxBounce = mapobjectscale * 10; @@ -7038,12 +7039,17 @@ static void K_AirDrop(player_t *player, ticcmd_t *cmd) S_StartSound(player->mo, sfx_vclgna); } else if (airdropactive == AIRDROP_HEAVY) +#endif + if (airdropactive == AIRDROP_HEAVY) { if (player->rings > 0) { P_PlayerRingBurst(player, min(2, player->rings)); } player->startboost = TICRATE/2; + + // POOMP! + S_StartSound(player->mo, sfx_vclgna); } } player->airdroptime = 0; @@ -7067,7 +7073,7 @@ static void K_AirDrop(player_t *player, ticcmd_t *cmd) } else { - if (airdropactive == AIRDROP_LIGHT) + if (airdropactive == AIRDROP_LIGHT && !(cmd->buttons & BT_BRAKE)) player->pflags &= ~PF_AIRDROP; } @@ -7076,6 +7082,7 @@ static void K_AirDrop(player_t *player, ticcmd_t *cmd) K_SpawnFallLines(player, false); +#if 0 if (airdropactive == AIRDROP_BOUNCY) { player->airdroptime = player->mo->momz; @@ -7085,6 +7092,7 @@ static void K_AirDrop(player_t *player, ticcmd_t *cmd) } } else +#endif { if (player->airdroptime < UINT8_MAX) player->airdroptime++; @@ -7095,11 +7103,13 @@ static void K_AirDrop(player_t *player, ticcmd_t *cmd) player->mo->momz -= FixedMul(4*gravity, mapobjectscale)*P_MobjFlip(player->mo); K_SpawnAirdropTrail(player); } +#if 0 else if (airdropactive == AIRDROP_LIGHT) { player->mo->momz -= FixedMul(gravity, mapobjectscale)*P_MobjFlip(player->mo); K_SpawnAirdropTrail(player); } +#endif else { player->mo->momz -= FixedMul(2*gravity, mapobjectscale)*P_MobjFlip(player->mo); diff --git a/src/k_kart.h b/src/k_kart.h index 0d071ae16..43d041258 100644 --- a/src/k_kart.h +++ b/src/k_kart.h @@ -424,7 +424,7 @@ typedef enum AIRDROP_NONE = 0, AIRDROP_LIGHT, AIRDROP_HEAVY, - AIRDROP_BOUNCY, + // AIRDROP_BOUNCY, } airdroptype_t; #ifdef __cplusplus