Add SeukomodOptionsMenu

- Added ModMenuModule::SeukomodOptionsMenu
- Moved ModMenuModule::VersionDetailsMenu and MenuControlsMenu to SeukomodOptionsMenu
This commit is contained in:
izawartka 2026-08-16 18:39:22 +02:00
parent e61d2eb09c
commit 7c83760e1b
6 changed files with 73 additions and 10 deletions

View File

@ -446,6 +446,7 @@
<ClInclude Include="src\modules\modmenu\menus\player-stats-menu.h" />
<ClInclude Include="src\modules\modmenu\menus\saved-vehicle-options-menu.h" />
<ClInclude Include="src\modules\modmenu\menus\select-camera-modes-menu.h" />
<ClInclude Include="src\modules\modmenu\menus\seukomod-options-menu.h" />
<ClInclude Include="src\modules\modmenu\menus\spawn-object-menu.h" />
<ClInclude Include="src\modules\modmenu\menus\spawn-ped-menu.h" />
<ClInclude Include="src\modules\modmenu\menus\spawn-vehicle-menu.h" />
@ -741,6 +742,7 @@
<ClCompile Include="src\modules\modmenu\menus\player-stats-menu.cpp" />
<ClCompile Include="src\modules\modmenu\menus\saved-vehicle-options-menu.cpp" />
<ClCompile Include="src\modules\modmenu\menus\select-camera-modes-menu.cpp" />
<ClCompile Include="src\modules\modmenu\menus\seukomod-options-menu.cpp" />
<ClCompile Include="src\modules\modmenu\menus\spawn-object-menu.cpp" />
<ClCompile Include="src\modules\modmenu\menus\spawn-ped-menu.cpp" />
<ClCompile Include="src\modules\modmenu\menus\spawn-vehicle-menu.cpp" />

View File

@ -228,6 +228,7 @@
<ClCompile Include="src\modules\keyboard\root.cpp" />
<ClCompile Include="src\modules\modmenu\segments\spawn-ped-action-segment.cpp" />
<ClCompile Include="src\modules\modmenu\quick-actions\spawn-character.cpp" />
<ClCompile Include="src\modules\modmenu\menus\seukomod-options-menu.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\converters\ammo.h" />
@ -590,6 +591,7 @@
<ClInclude Include="src\modules\keyboard\root.h" />
<ClInclude Include="src\modules\modmenu\segments\spawn-ped-action-segment.h" />
<ClInclude Include="src\modules\modmenu\quick-actions\spawn-character.h" />
<ClInclude Include="src\modules\modmenu\menus\seukomod-options-menu.h" />
</ItemGroup>
<ItemGroup>
<None Include="GTA2.props" />

View File

@ -32,6 +32,7 @@
#include "quick-actions-menu.h"
#include "add-quick-action-menu.h"
#include "quick-action-options-menu.h"
#include "seukomod-options-menu.h"
#include "menu-controls-menu.h"
#include "version-menu.h"
#include "mouse-debug-menu.h"

View File

@ -1,8 +1,7 @@
#include "misc-menu.h"
#include "../root.h"
#include "menu-controls-menu.h"
#include "quick-actions-menu.h"
#include "version-menu.h"
#include "seukomod-options-menu.h"
#include "../utils/save-game.h"
#include "../utils/unlock-all-levels.h"
#include "../toast-manager.h"
@ -25,9 +24,8 @@ bool ModMenuModule::MiscMenu::Attach()
const auto& options = ModMenuModule::RootModule::GetInstance()->GetOptions();
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Go back", options.textSize);
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Menu controls", options.textSize);
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Quick actions", options.textSize);
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Version details", options.textSize);
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Seuko mod options", options.textSize);
// quick save button
auto quickSaveText = m_menuController->CreateItem<UiModule::Text>(vertCont, L"Quick save", options.textSize);
@ -50,14 +48,11 @@ void ModMenuModule::MiscMenu::OnMenuAction(UiModule::Selectable* item, UiModule:
case 0: // Go back
ModMenuModule::MenuManager::GetInstance()->RemoveLastMenu();
break;
case 1: // Menu controls
ModMenuModule::MenuManager::GetInstance()->AddMenu<ModMenuModule::MenuControlsMenu>();
break;
case 2: // Quick actions
case 1: // Quick actions
ModMenuModule::MenuManager::GetInstance()->AddMenu<ModMenuModule::QuickActionsMenu>();
break;
case 3: // Version info
ModMenuModule::MenuManager::GetInstance()->AddMenu<ModMenuModule::VersionMenu>();
case 2: // Seuko mod options
ModMenuModule::MenuManager::GetInstance()->AddMenu<ModMenuModule::SeukomodOptionsMenu>();
break;
default:
break;

View File

@ -0,0 +1,47 @@
#include "seukomod-options-menu.h"
#include "../root.h"
#include "menu-controls-menu.h"
#include "version-menu.h"
ModMenuModule::SeukomodOptionsMenu::SeukomodOptionsMenu()
{
}
ModMenuModule::SeukomodOptionsMenu::~SeukomodOptionsMenu()
{
}
bool ModMenuModule::SeukomodOptionsMenu::Attach()
{
UiModule::Component* vertCont;
CreateMenu(L"#Seuko mod options#", vertCont);
UiModule::RootModule* uiRoot = UiModule::RootModule::GetInstance();
const auto& options = ModMenuModule::RootModule::GetInstance()->GetOptions();
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Go back", options.textSize);
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Menu controls", options.textSize);
m_menuController->CreateItem<UiModule::Text>(vertCont, L"Version details", options.textSize);
SetPreviousSelectedIndex();
return true;
}
void ModMenuModule::SeukomodOptionsMenu::OnMenuAction(UiModule::Selectable* item, UiModule::MenuItemId id)
{
switch (id) {
case 0: // Go back
ModMenuModule::MenuManager::GetInstance()->RemoveLastMenu();
break;
case 1: // Menu controls
ModMenuModule::MenuManager::GetInstance()->AddMenu<ModMenuModule::MenuControlsMenu>();
break;
case 2: // Version info
ModMenuModule::MenuManager::GetInstance()->AddMenu<ModMenuModule::VersionMenu>();
break;
default:
break;
}
}

View File

@ -0,0 +1,16 @@
#pragma once
#include "../common.h"
#include "../menu-base.h"
namespace ModMenuModule {
class SeukomodOptionsMenu : public MenuBase {
public:
SeukomodOptionsMenu();
virtual ~SeukomodOptionsMenu();
private:
virtual bool Attach() override;
void OnMenuAction(UiModule::Selectable* item, UiModule::MenuItemId id) override;
};
}