From 4d9b0a93f28edf3a854cec6b214915c6af385330 Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 17 Mar 2024 04:53:38 -0700 Subject: [PATCH 1/5] Draw non-green res. border on replay intermission - This bug was replay specific --- src/k_menudraw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/k_menudraw.c b/src/k_menudraw.c index 2836658b5..fed66d371 100644 --- a/src/k_menudraw.c +++ b/src/k_menudraw.c @@ -474,7 +474,7 @@ void M_DrawMenuForeground(void) } // draw non-green resolution border - if (currentMenu != &PAUSE_PlaybackMenuDef && // this obscures replay menu and I want to put in minimal effort to fix that + if ((!menuactive || currentMenu != &PAUSE_PlaybackMenuDef) && // this obscures replay menu and I want to put in minimal effort to fix that ((vid.width % BASEVIDWIDTH != 0) || (vid.height % BASEVIDHEIGHT != 0))) { V_DrawFixedPatch(0, 0, FRACUNIT, 0, W_CachePatchName("WEIRDRES", PU_CACHE), NULL); From d68e7072a2028969cbc0ab646f1c63882a4429d0 Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 17 Mar 2024 04:51:07 -0700 Subject: [PATCH 2/5] Lock user out of menu when replay goes to intermission - Access to the replay menu in intermission leads to various problems - Broken options - HOM effect - You can press A on the intermission screen to end it --- src/k_menufunc.c | 9 +++++++++ src/y_inter.cpp | 7 +++++++ 2 files changed, 16 insertions(+) diff --git a/src/k_menufunc.c b/src/k_menufunc.c index 44abd8615..4713d74ab 100644 --- a/src/k_menufunc.c +++ b/src/k_menufunc.c @@ -668,6 +668,15 @@ menu_t *M_SpecificMenuRestore(menu_t *torestore) // void M_StartControlPanel(void) { + if (demo.playback && gamestate == GS_INTERMISSION) + { + // At this point the replay has ended. + // The only menu option that works is "Stop Playback". + // And intermission can be finished by pressing the + // A button, so having a menu at all is useless. + return; + } + INT32 i; G_ResetAllDeviceGameKeyDown(); diff --git a/src/y_inter.cpp b/src/y_inter.cpp index 97926dc07..fc244698c 100644 --- a/src/y_inter.cpp +++ b/src/y_inter.cpp @@ -2271,6 +2271,13 @@ void Y_StartIntermission(void) G_SetGamestate(GS_INTERMISSION); + if (demo.playback) + { + // Replay menu is inacessible here. + // Press A to continue! + M_ClearMenus(true); + } + if (musiccountdown == 0) { Y_PlayIntermissionMusic(); From abb3a748d9d3a81d83852fb8e909d40961f8731f Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 17 Mar 2024 04:55:24 -0700 Subject: [PATCH 3/5] Menus/Replay: fix director button disappearing after watching a Time Attack replay then going to Egg TV --- src/menus/transient/pause-replay.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/menus/transient/pause-replay.c b/src/menus/transient/pause-replay.c index cc95e6d83..04d3ba545 100644 --- a/src/menus/transient/pause-replay.c +++ b/src/menus/transient/pause-replay.c @@ -180,6 +180,7 @@ static void M_PlaybackTick(void) else { PAUSE_PlaybackMenu[playback_viewcount].status = IT_ARROWS|IT_STRING; + PAUSE_PlaybackMenu[playback_director].status = IT_ARROWS|IT_STRING; PAUSE_PlaybackMenu[playback_freecam].status = IT_CALL|IT_STRING; for (i = 0; i <= r_splitscreen; i++) From 2945f41f13c5d73554692e06ac74fe34b748758f Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 17 Mar 2024 04:56:21 -0700 Subject: [PATCH 4/5] Don't let Tab key hide player name in Time Attack replays --- src/st_stuff.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/st_stuff.c b/src/st_stuff.c index 71a7b5bbe..acdd7d31e 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -1271,10 +1271,7 @@ static void ST_overlayDrawer(void) { LUA_HookHUD(luahuddrawlist_game, HUD_HOOK(game)); } - } - if (!hu_showscores) // hide the following if TAB is held - { if (cv_showviewpointtext.value) { if (!demo.attract && !P_IsPartyPlayer(stplyr) && !camera[viewnum].freecam) From abfa7705c1e2224de991a3390f51e7acb448fd4f Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 17 Mar 2024 04:57:18 -0700 Subject: [PATCH 5/5] Fix HUD not disappearing for splitscreen players when 'HERE COMES A NEW CHALLENGER' --- src/k_hud.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/k_hud.cpp b/src/k_hud.cpp index 30b3dd7a9..f31ba1512 100644 --- a/src/k_hud.cpp +++ b/src/k_hud.cpp @@ -5966,15 +5966,17 @@ void K_drawKartHUD(void) if (!camera[viewnum].chase && !freecam) K_drawKartFirstPerson(); + if (mapreset) + { + // HERE COMES A NEW CHALLENGER + if (R_GetViewNumber() == 0) + K_drawChallengerScreen(); + return; + } + // Draw full screen stuff that turns off the rest of the HUD if (R_GetViewNumber() == 0) { - if (mapreset) - { - K_drawChallengerScreen(); - return; - } - if (g_emeraldWin) K_drawEmeraldWin(false); }