From 38a92467ee0f4e8d7caa30bbcbc65e4b85dd3b5c Mon Sep 17 00:00:00 2001 From: Antonio Martinez Date: Sat, 17 May 2025 20:59:28 -0400 Subject: [PATCH] Less free rings (resolves #1517) --- src/k_kart.c | 5 ++++- src/k_roulette.c | 2 +- src/p_mobj.c | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/k_kart.c b/src/k_kart.c index 90024cd0f..3a8e220e3 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -9436,7 +9436,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd) // UINT16 oldringboost = player->ringboost; - if (player->superring == 0) + if (player->superring == 0 || player->stunned) player->ringboost -= max((player->ringboost / roller), 1); else player->ringboost -= min(K_GetFullKartRingPower(player, false) - 1, max(player->ringboost / 2 / roller, 1)); @@ -9723,6 +9723,9 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd) UINT8 ringrate = 3 - min(2, (player->superring + existing) / fastringscaler); // Used to consume fat stacks of cash faster. + if (player->stunned) + ringrate = 6; + if (player->nextringaward >= ringrate) { if (player->instaWhipCharge) diff --git a/src/k_roulette.c b/src/k_roulette.c index a20ad1f2c..4056f67d6 100644 --- a/src/k_roulette.c +++ b/src/k_roulette.c @@ -927,7 +927,7 @@ static void K_AddItemToReel(const player_t *player, itemroulette_t *const roulet // If we're in ring debt, pad out the reel with // a BUNCH of Super Rings. if (K_ItemEnabled(KITEM_SUPERRING) == true - && player->rings <= 0 + && player->rings <= -10 && player->position == 1 && (gametyperules & GTR_SPHERES) == 0) { diff --git a/src/p_mobj.c b/src/p_mobj.c index f1f84c444..4aa9ce95a 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -12727,6 +12727,7 @@ static boolean P_AllowMobjSpawn(mapthing_t* mthing, mobjtype_t i) switch (i) { case MT_RING: + case MT_RANDOMITEM: if (modeattacking & ATTACKING_SPB) return false; break;