dao::GameModeController

class

The controller that holds the game’s modes and switches between them.

Get it with CClientExoApp::GameModes.

Declared in dao/GameModes.h.

Functions

Camera()

CameraController * Camera() const

Returns the camera controller used in explore and combat mode (dao/Camera.h).

Returns the controller, or null if it is not a CameraControllerExplore

CurrentModeObject()

void * CurrentModeObject() const

Returns the engine’s object for the current mode.

Returns null in the same cases as ModeObject.

Explore()

GameModeExplore * Explore() const

Returns the current mode as explore mode.

Returns explore mode, or null unless the current mode is explore or combat

GameModeController()

GameModeController()=delete

GameModeController()

GameModeController(const GameModeController &)=delete

Mode()

GameMode Mode() const

Returns the current mode.

ModeObject()

void * ModeObject(GameMode mode) const

Returns the engine’s object for a mode.

Send that mode’s messages to it (dao/Messages.h).

Returns the object, or null if there is none or it is not a GameMode class

operator=()

GameModeController & operator=(const GameModeController &)=delete

PreviousMode()

GameMode PreviousMode() const

Returns the mode before the current one.

This meaning is inferred from the value after loading a save.

SetMode()

void SetMode(GameMode mode)

Switches to a mode, the same as a SetGameModeMessage. The new mode can refuse.

~GameModeController()

~GameModeController()=delete

Fields

Field Type  
kCamera std::size_t = 0x60 offset of the camera controller
kMaxModes std::size_t = 13 The number of entries in the array of modes, one per GameMode.
kMode std::size_t = 0x78 offset of the current mode
kModes std::size_t = 0x58 offset of the pointer to the modes’ array
kPreviousMode std::size_t = 0x7C offset of the previous mode