From d843cc5b5cf849a0e4e9b8277a7a8b3c46e88289 Mon Sep 17 00:00:00 2001 From: SinnamonLat Date: Tue, 3 May 2022 02:16:22 +0200 Subject: [PATCH] Spindash iframe ring drain based off of speed/weight --- src/k_kart.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/k_kart.c b/src/k_kart.c index 2b153be26..b6f4c3f1d 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -8713,6 +8713,7 @@ static void K_KartSpindash(player_t *player) { if ((cmd->buttons & (BT_DRIFT|BT_BRAKE)) == (BT_DRIFT|BT_BRAKE)) { + UINT8 ringdropframes = 2 + (player->kartspeed + player->kartweight); INT16 chargetime = MAXCHARGETIME - ++player->spindash; boolean spawnOldEffect = true; @@ -8727,7 +8728,7 @@ static void K_KartSpindash(player_t *player) K_KartSpindashWind(player->mo); } - if (player->flashing > 0 && (leveltime & 1) && player->hyudorotimer == 0) + if (player->flashing > 0 && (player->spindash % ringdropframes == 0) && player->hyudorotimer == 0) { // Every frame that you're invisible from flashing, spill a ring. // Intentionally a lop-sided trade-off, so the game doesn't become