From 5f76fc0486ec0ad2246cf53b8ab4899ec7d6e8b0 Mon Sep 17 00:00:00 2001 From: Bart Roossien Date: Wed, 20 Aug 2025 16:07:39 +0200 Subject: [PATCH 1/4] fix(menu): Always show mouse and menu when shellmap is disabled By default, the cursor and menu are hidden to display the shell map. When using the `--quickstart` option, the shell map is replaced with a static background, but the player still had to move the mouse before the cursor and menu appeared. This change explicitly checks if the shell map is enabled, ensuring the mouse and menu are shown immediately when it is not. --- .../Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp | 4 +++- .../Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp b/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp index a0cd4949a0a..de7ddd01500 100644 --- a/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp +++ b/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp @@ -950,7 +950,9 @@ WindowMsgHandledType MainMenuInput( GameWindow *window, UnsignedInt msg, ICoord2D mouse; mouse.x = mData1 & 0xFFFF; mouse.y = mData1 >> 16; - if( mouse.x == 0 && mouse.y == 0) + + // TheSuperHackers @tweak 20/08/2025 show mouse and menu immediately when shellmap is disabled + if (TheGlobalData->m_shellMapOn && mouse.x == 0 && mouse.y == 0) break; static Int mousePosX = mouse.x; diff --git a/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp b/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp index d8fed5b4288..39036a7b8bc 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp @@ -987,7 +987,9 @@ WindowMsgHandledType MainMenuInput( GameWindow *window, UnsignedInt msg, ICoord2D mouse; mouse.x = mData1 & 0xFFFF; mouse.y = mData1 >> 16; - if( mouse.x == 0 && mouse.y == 0) + + // TheSuperHackers @tweak 20/08/2025 show mouse and menu immediately when shellmap is disabled + if(TheGlobalData->m_shellMapOn && mouse.x == 0 && mouse.y == 0) break; static Int mousePosX = mouse.x; From 29cd920e49bb164941438bfe6f047a80f8fc02e4 Mon Sep 17 00:00:00 2001 From: Bart Roossien | SkyAero Date: Thu, 21 Aug 2025 08:39:07 +0200 Subject: [PATCH 2/4] Update GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp Co-authored-by: Stubbjax --- .../Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp b/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp index 39036a7b8bc..42e2499299a 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp @@ -989,7 +989,7 @@ WindowMsgHandledType MainMenuInput( GameWindow *window, UnsignedInt msg, mouse.y = mData1 >> 16; // TheSuperHackers @tweak 20/08/2025 show mouse and menu immediately when shellmap is disabled - if(TheGlobalData->m_shellMapOn && mouse.x == 0 && mouse.y == 0) + if (TheGlobalData->m_shellMapOn && mouse.x == 0 && mouse.y == 0) break; static Int mousePosX = mouse.x; From 33c5f83c14468a374ccaf493edc5e84d66286169 Mon Sep 17 00:00:00 2001 From: Bart Roossien | SkyAero Date: Thu, 21 Aug 2025 08:39:15 +0200 Subject: [PATCH 3/4] Update Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp Co-authored-by: Stubbjax --- .../Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp b/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp index de7ddd01500..83a42e24272 100644 --- a/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp +++ b/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp @@ -951,7 +951,7 @@ WindowMsgHandledType MainMenuInput( GameWindow *window, UnsignedInt msg, mouse.x = mData1 & 0xFFFF; mouse.y = mData1 >> 16; - // TheSuperHackers @tweak 20/08/2025 show mouse and menu immediately when shellmap is disabled + // TheSuperHackers @tweak 20/08/2025 Show mouse and menu immediately when shellmap is disabled. if (TheGlobalData->m_shellMapOn && mouse.x == 0 && mouse.y == 0) break; From 2a51b012eb67d5cac54bbaf4457fe1d8d0851530 Mon Sep 17 00:00:00 2001 From: Bart Roossien | SkyAero Date: Thu, 21 Aug 2025 08:39:22 +0200 Subject: [PATCH 4/4] Update GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp Co-authored-by: Stubbjax --- .../Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp b/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp index 42e2499299a..a42675511e1 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/MainMenu.cpp @@ -988,7 +988,7 @@ WindowMsgHandledType MainMenuInput( GameWindow *window, UnsignedInt msg, mouse.x = mData1 & 0xFFFF; mouse.y = mData1 >> 16; - // TheSuperHackers @tweak 20/08/2025 show mouse and menu immediately when shellmap is disabled + // TheSuperHackers @tweak 20/08/2025 Show mouse and menu immediately when shellmap is disabled. if (TheGlobalData->m_shellMapOn && mouse.x == 0 && mouse.y == 0) break;