From 6434c16446c604df331d0ac3ef1fa874a7ecfb16 Mon Sep 17 00:00:00 2001 From: NepDisk Date: Sat, 10 Jan 2026 15:23:24 -0500 Subject: [PATCH 1/3] Don't account for viewpoint text --- src/h_timers.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/h_timers.cpp b/src/h_timers.cpp index 49d42dd88..9920f1aab 100644 --- a/src/h_timers.cpp +++ b/src/h_timers.cpp @@ -372,7 +372,7 @@ void K_DisplayItemTimers(void) INT32 itemx = 0, itemy = 0; INT32 flags = 0; INT32 stepx = 25; - INT32 viewnum = R_GetViewNumber(); + //INT32 viewnum = R_GetViewNumber(); drawinfo_t info; K_getTimersDrawinfo(&info); @@ -381,8 +381,8 @@ void K_DisplayItemTimers(void) flags = info.flags; // Move it up to account for viewpoint text - if (cv_showviewpointtext.value && !demo.title && !P_IsLocalPlayer(stplyr) && !camera[viewnum].freecam && !r_splitscreen) - itemy -= 12; + //if (cv_showviewpointtext.value && !demo.title && !P_IsLocalPlayer(stplyr) && !camera[viewnum].freecam && !r_splitscreen) + //itemy -= 12; // flags |= V_HUDTRANS; From 4cfc61745e12842682c32d195f67e189900bea33 Mon Sep 17 00:00:00 2001 From: GenericHeroGuy Date: Sat, 10 Jan 2026 23:38:35 +0100 Subject: [PATCH 2/3] Maybe don't do player-specific bounce logic unless both mobjs are players --- src/p_map.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p_map.c b/src/p_map.c index 6fd112e49..1d4974e4e 100644 --- a/src/p_map.c +++ b/src/p_map.c @@ -2231,7 +2231,7 @@ boolean P_CheckPosition(mobj_t *thing, fixed_t x, fixed_t y, TryMoveResult_t *re mobj_t *mo1 = thing, *mo2 = g_tm.hitthing; boolean stomp = false; - if (mo2->player != NULL) + if (mo1->player != NULL && mo2->player != NULL) // bounce when players collide { if (P_IsObjectOnGround(mo2) && mo1->momz < 0) { From 9f9e1df88bd38e30e9673b6fb05b81c6b639d2e6 Mon Sep 17 00:00:00 2001 From: GenericHeroGuy Date: Sat, 10 Jan 2026 23:54:14 +0100 Subject: [PATCH 3/3] Allow bubble shield to punt hazards --- src/k_kart.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/k_kart.c b/src/k_kart.c index 8378e73df..49b5b2d74 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -2219,9 +2219,10 @@ boolean K_TripwirePass(const player_t *player) boolean K_PlayerCanPunt(const player_t *player) { - return player->invincibilitytimer > 0 || player->growshrinktimer > 0 || - (player->flamestore > 0 && K_GetShieldFromPlayer(player) == KSHIELD_FLAME) || - K_AltShrinkArrowBulletCondition(player); + return player->invincibilitytimer > 0 || player->growshrinktimer > 0 + || (player->flamestore > 0 && K_GetShieldFromPlayer(player) == KSHIELD_FLAME) + || (player->bubbleblowup > 0 && K_GetShieldFromPlayer(player) == KSHIELD_BUBBLE) + || K_AltShrinkArrowBulletCondition(player); } boolean K_ItemMobjAllowedtoWaterRun(mobj_t *item)