From 3f8b557d5ef46a92795044bc5a459a6c7f981ca5 Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Sat, 21 Oct 2023 18:05:49 -0700 Subject: [PATCH 1/2] Whip fixups #69 --- src/k_collide.cpp | 2 +- src/k_kart.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/k_collide.cpp b/src/k_collide.cpp index 503481bb3..87a4a6862 100644 --- a/src/k_collide.cpp +++ b/src/k_collide.cpp @@ -869,7 +869,7 @@ boolean K_InstaWhipCollide(mobj_t *shield, mobj_t *victim) attacker->renderflags &= ~RF_DONTDRAW; attackerPlayer->spindashboost = 0; attackerPlayer->sneakertimer = 0; - attackerPlayer->instaWhipCharge = GUARDBREAK_COOLDOWN; + attackerPlayer->instaWhipCharge = 0; attackerPlayer->guardCooldown = GUARDBREAK_COOLDOWN; attackerPlayer->flashing = 0; diff --git a/src/k_kart.c b/src/k_kart.c index 182e0a7cb..4c9fdc1c9 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -8327,7 +8327,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd) // If the button stays held, delay charge a bit. if (player->instaWhipChargeLockout) player->instaWhipChargeLockout--; - if (player->rings > 0 || player->itemamount || player->ringdelay) + if (player->rings > 0 || player->itemamount || player->ringdelay || player->rocketsneakertimer) player->instaWhipChargeLockout = INSTAWHIP_HOLD_DELAY; if (!(player->cmd.buttons & BT_ATTACK)) // Deliberate Item button release, no need to protect you from lockout player->instaWhipChargeLockout = 0; @@ -11088,7 +11088,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground) player->instaWhipCooldown = 0; } - if (leveltime < starttime || player->spindash || player->pflags & (PF_ITEMOUT|PF_EGGMANOUT) || player->rocketsneakertimer || player->instaWhipCooldown) + if (leveltime < starttime || player->pflags & (PF_ITEMOUT|PF_EGGMANOUT) || player->rocketsneakertimer || player->instaWhipCooldown) { chargingwhip = false; player->instaWhipCharge = 0; From 395675e5b06f8b5c04d20d0127900b89bef57d1a Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Sat, 21 Oct 2023 22:01:08 -0700 Subject: [PATCH 2/2] Fix whip input lockout on instant use items --- src/k_kart.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/k_kart.c b/src/k_kart.c index 4c9fdc1c9..c27ad60de 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -8329,7 +8329,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd) player->instaWhipChargeLockout--; if (player->rings > 0 || player->itemamount || player->ringdelay || player->rocketsneakertimer) player->instaWhipChargeLockout = INSTAWHIP_HOLD_DELAY; - if (!(player->cmd.buttons & BT_ATTACK)) // Deliberate Item button release, no need to protect you from lockout + else if (!(player->cmd.buttons & BT_ATTACK)) // Deliberate Item button release, no need to protect you from lockout player->instaWhipChargeLockout = 0; if (player->instaWhipCharge && player->instaWhipCharge < INSTAWHIP_CHARGETIME)