Jazz2::UI::Menu::CreateLocalGameOptionsSection class

Local splitscreen game options menu section.

Lets the player configure a local splitscreen multiplayer match (number of players, per-player character, difficulty and game mode) before starting it. Built on the scrollable WidgetSection so the variable number of rows always fits. The game mode is chosen through the shared MultiplayerGameModeSelectSection, matching the create server screens.

Base classes

class WidgetSection
Base class of a declarative menu section.

Constructors, destructors, conversion operators

CreateLocalGameOptionsSection(StringView levelName, StringView previousEpisodeName, StringView resumeEpisodeName = {})
Creates a new instance.

Public functions

void OnShow(IMenuContainer* root) override
Called when the section is shown.
void OnUpdate(float timeMult) override
Called when the section should be updated.
void OnDraw(Canvas* canvas) override
Called when the section should be drawn — the bottom background layer.
void OnDrawOverlay(Canvas* canvas) override
Called when the section should be drawn — the top overlay layer.
void OnTouchEvent(const nCine::TouchEvent& event, Vector2i viewSize) override
Called when a touch event is triggered.
auto GetGameMode() const -> Jazz2::Multiplayer::MpGameMode
Returns the selected multiplayer game mode.
void SetGameMode(Jazz2::Multiplayer::MpGameMode value)
Sets the selected multiplayer game mode.

Function documentation

Jazz2::UI::Menu::CreateLocalGameOptionsSection::CreateLocalGameOptionsSection(StringView levelName, StringView previousEpisodeName, StringView resumeEpisodeName = {})

Creates a new instance.

Parameters
levelName Level to start
previousEpisodeName Name of the previous episode (used for the cooperation stat carry-over)
resumeEpisodeName If non-empty, resume this episode from its saved progress (continue) instead of starting levelName fresh; forces the cooperation game mode