From f4d98a14b60c8ee0752b3ecd3e11bc95c85f2562 Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Fri, 17 Feb 2023 00:02:23 -0700 Subject: [PATCH 1/2] Don't let testers shoot themselves in menus --- src/f_finale.c | 4 ++++ src/menus/play-char-select.c | 7 ++++++- src/menus/play-online-1.c | 36 +++++++++++++++++++++++++----------- 3 files changed, 35 insertions(+), 12 deletions(-) diff --git a/src/f_finale.c b/src/f_finale.c index 37a50cb3a..af0ab00dc 100644 --- a/src/f_finale.c +++ b/src/f_finale.c @@ -2179,6 +2179,10 @@ void F_TitleScreenTicker(boolean run) if (!cv_rollingdemos.value) return; + #if defined (TESTERS) + return; + #endif + // Wait for a while (for the music to finish, preferably) // before starting demos if (demoDelayLeft) diff --git a/src/menus/play-char-select.c b/src/menus/play-char-select.c index 0fd67dc45..4dc5781d5 100644 --- a/src/menus/play-char-select.c +++ b/src/menus/play-char-select.c @@ -1460,7 +1460,12 @@ void M_CharacterSelectTick(void) CV_StealthSetValue(&cv_usejoystick[0], setup_player[0].ponedevice); } - M_SetupNextMenu(&PLAY_MainDef, false); + #if defined (TESTERS) + M_SetupNextMenu(&PLAY_MP_OptSelectDef, false); + #else + M_SetupNextMenu(&PLAY_MainDef, false); + #endif + } } else // In a game diff --git a/src/menus/play-online-1.c b/src/menus/play-online-1.c index 177cc3dfc..001f18cab 100644 --- a/src/menus/play-online-1.c +++ b/src/menus/play-online-1.c @@ -3,22 +3,36 @@ #include "../k_menu.h" -menuitem_t PLAY_MP_OptSelect[] = -{ - //{IT_NOTHING | IT_KEYHANDLER, NULL, NULL, NULL, M_MPOptSelect, 0, 0}, - {IT_STRING | IT_CALL, "Host Game", "Start your own online game!", - NULL, {.routine = M_MPHostInit}, 0, 0}, - {IT_STRING | IT_CALL, "Server Browser", "Search for game servers to play in.", - NULL, {.routine = M_MPRoomSelectInit}, 0, 0}, +#if defined (TESTERS) + menuitem_t PLAY_MP_OptSelect[] = + { + {IT_STRING | IT_CALL, "Join by IP", "Join an online game by its IP address.", + NULL, {.routine = M_MPJoinIPInit}, 0, 0}, + }; +#else + menuitem_t PLAY_MP_OptSelect[] = + { + //{IT_NOTHING | IT_KEYHANDLER, NULL, NULL, NULL, M_MPOptSelect, 0, 0}, + {IT_STRING | IT_CALL, "Host Game", "Start your own online game!", + NULL, {.routine = M_MPHostInit}, 0, 0}, + + {IT_STRING | IT_CALL, "Server Browser", "Search for game servers to play in.", + NULL, {.routine = M_MPRoomSelectInit}, 0, 0}, + + {IT_STRING | IT_CALL, "Join by IP", "Join an online game by its IP address.", + NULL, {.routine = M_MPJoinIPInit}, 0, 0}, + }; +#endif - {IT_STRING | IT_CALL, "Join by IP", "Join an online game by its IP address.", - NULL, {.routine = M_MPJoinIPInit}, 0, 0}, -}; menu_t PLAY_MP_OptSelectDef = { sizeof (PLAY_MP_OptSelect) / sizeof (menuitem_t), - &PLAY_MainDef, + #if defined (TESTERS) + &PLAY_CharSelectDef, + #else + &PLAY_MainDef, + #endif 0, PLAY_MP_OptSelect, 0, 0, From 7d015ac7b15a2e2d5634f3b47b1a1abc67388e78 Mon Sep 17 00:00:00 2001 From: toaster Date: Fri, 17 Feb 2023 13:56:29 +0000 Subject: [PATCH 2/2] Fix unwinding Join By IP option - M_CharacterSelectTick: Initialise Online menu when setting up - PLAY_MP_OptSelect: Hide entries 0 and 1 instead of removing them, to keep options aligned --- src/menus/play-char-select.c | 2 +- src/menus/play-online-1.c | 32 +++++++++++++++----------------- 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/src/menus/play-char-select.c b/src/menus/play-char-select.c index 4dc5781d5..1e356013d 100644 --- a/src/menus/play-char-select.c +++ b/src/menus/play-char-select.c @@ -1461,7 +1461,7 @@ void M_CharacterSelectTick(void) } #if defined (TESTERS) - M_SetupNextMenu(&PLAY_MP_OptSelectDef, false); + M_MPOptSelectInit(0); #else M_SetupNextMenu(&PLAY_MainDef, false); #endif diff --git a/src/menus/play-online-1.c b/src/menus/play-online-1.c index 001f18cab..e48154648 100644 --- a/src/menus/play-online-1.c +++ b/src/menus/play-online-1.c @@ -3,27 +3,25 @@ #include "../k_menu.h" - #if defined (TESTERS) - menuitem_t PLAY_MP_OptSelect[] = - { - {IT_STRING | IT_CALL, "Join by IP", "Join an online game by its IP address.", - NULL, {.routine = M_MPJoinIPInit}, 0, 0}, - }; + #define IT_STRING_CALL_NOTESTERS IT_DISABLED #else - menuitem_t PLAY_MP_OptSelect[] = - { - //{IT_NOTHING | IT_KEYHANDLER, NULL, NULL, NULL, M_MPOptSelect, 0, 0}, - {IT_STRING | IT_CALL, "Host Game", "Start your own online game!", - NULL, {.routine = M_MPHostInit}, 0, 0}, + #define IT_STRING_CALL_NOTESTERS (IT_STRING | IT_CALL) +#endif // TESTERS - {IT_STRING | IT_CALL, "Server Browser", "Search for game servers to play in.", - NULL, {.routine = M_MPRoomSelectInit}, 0, 0}, +menuitem_t PLAY_MP_OptSelect[] = +{ + {IT_STRING_CALL_NOTESTERS, "Host Game", "Start your own online game!", + NULL, {.routine = M_MPHostInit}, 0, 0}, - {IT_STRING | IT_CALL, "Join by IP", "Join an online game by its IP address.", - NULL, {.routine = M_MPJoinIPInit}, 0, 0}, - }; -#endif + {IT_STRING_CALL_NOTESTERS, "Server Browser", "Search for game servers to play in.", + NULL, {.routine = M_MPRoomSelectInit}, 0, 0}, + + {IT_STRING | IT_CALL, "Join by IP", "Join an online game by its IP address.", + NULL, {.routine = M_MPJoinIPInit}, 0, 0}, +}; + +#undef IT_STRING_CALL_NOTESTERS menu_t PLAY_MP_OptSelectDef = {