diff --git a/src/k_kart.c b/src/k_kart.c index ec5faf73b..b9ad1cce2 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -8245,7 +8245,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd) player->incontrol = min(player->incontrol, 5*TICRATE); player->incontrol = max(player->incontrol, -5*TICRATE); - if (P_PlayerInPain(player)) + if (P_PlayerInPain(player) || player->respawn.state != RESPAWNST_NONE) player->lastpickuptype = -1; // got your ass beat, go grab anything if (player->tumbleBounces > 0) diff --git a/src/p_inter.c b/src/p_inter.c index a822bd2f0..15c8d2f86 100644 --- a/src/p_inter.c +++ b/src/p_inter.c @@ -439,7 +439,10 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck) break; } - P_UpdateLastPickup(player, 3); + // Ring Capsules shouldn't affect pickup cheese, they're just used as condensed ground-ring placements. + if (special->threshold != KITEM_SUPERRING) + P_UpdateLastPickup(player, 3); + S_StartSound(toucher, special->info->deathsound); P_KillMobj(special, toucher, toucher, DMG_NORMAL); return;