diff options
| author | Aetias <144526980+AetiasHax@users.noreply.github.com> | 2025-07-06 14:53:40 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-06 14:53:40 +0200 |
| commit | e3ba2b386d1ef7530d8be93f1c5a0550c30dac79 (patch) | |
| tree | 67ea17fe8b99f0cfcbad9894cb03f9493e618dd8 /include/Game/Game.hpp | |
| parent | 70e6bb21469372c6ed0a80264bffec7c160ca310 (diff) | |
| parent | 8806b998c287d63c93f32835236b3092b5ad50fc (diff) | |
Merge pull request #113 from AetiasHax/game
`src/Main/Game/Game.cpp` 26%
Diffstat (limited to 'include/Game/Game.hpp')
| -rw-r--r-- | include/Game/Game.hpp | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/include/Game/Game.hpp b/include/Game/Game.hpp index 8bb41b95..4c60c0ab 100644 --- a/include/Game/Game.hpp +++ b/include/Game/Game.hpp @@ -5,11 +5,29 @@ #include "Game/GameMode.hpp" #include "Render/FadeControl.hpp" +#include "System/OverlayManager.hpp" + +typedef GameMode *(*GameModeCreateFunc)(GameModeId modeId); + +struct GameModeData { + /* 00 */ u8 mUnk_00; + /* 01 */ u8 mUnk_01; + /* 02 */ u8 mUnk_02; + /* 03 */ u8 mUnk_03; + /* 04 */ OverlayId slot1Overlay; + /* 08 */ OverlayId slot2Overlay; + /* 0c */ OverlayId slot3Overlay; + /* 10 */ OverlayId slot12Overlay; + /* 14 */ GameModeCreateFunc mModeCreateFunc; + /* 18 */ void *mUnk_18; + /* 1c */ +}; +extern const GameModeData gGameModes[]; class Game { public: - /* 000 */ s32 mModeId; - /* 004 */ s32 mPrevModeId; + /* 000 */ GameModeId mModeId; + /* 004 */ GameModeId mPrevModeId; /* 008 */ GameMode *mMode; /* 00c */ unk8 mUnk_00c[0xc0]; /* 0cc */ FadeControl mFadeControl; @@ -17,8 +35,8 @@ public: /* 0f2 */ u16 mUnk_0f2; /* 0f4 */ s32 mUnk_0f4; /* 0f8 */ s32 mUnk_0f8; - /* 0fc */ unk16 mUnk_0fc; - /* 0fe */ unk16 mUnk_0fe; + /* 0fc */ u16 mUnk_0fc; + /* 0fe */ u16 mUnk_0fe; /* 100 */ unk8 mUnk_100; /* 101 */ s8 mUnk_101; /* 102 */ bool mUnk_102; @@ -29,7 +47,7 @@ public: ~Game(); void EndGameMode(); - void StartGameMode(); + bool StartGameMode(); void func_0202c974(); void func_0202c97c(); void Run(); |
