summaryrefslogtreecommitdiff
path: root/src/Main/System/OverlayManager.cpp
diff options
context:
space:
mode:
authorAetias <144526980+AetiasHax@users.noreply.github.com>2025-07-05 00:18:55 +0200
committerGitHub <noreply@github.com>2025-07-05 00:18:55 +0200
commit1e2adf0ebd714f9ed2c1e814276278755278dd12 (patch)
tree6457fa38205d137bf5ef95531ed54088ecc7c2f3 /src/Main/System/OverlayManager.cpp
parentb7c6ae6e7c5dc5b9994d48d7c9dabf7bf3b9fa9c (diff)
parent92128cf891326c30c7417c596fcb3be0d2602924 (diff)
Merge pull request #102 from AetiasHax/game-state
Delink Game, GameMode, GameModePlay, GameModeAdventure
Diffstat (limited to 'src/Main/System/OverlayManager.cpp')
-rw-r--r--src/Main/System/OverlayManager.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/Main/System/OverlayManager.cpp b/src/Main/System/OverlayManager.cpp
index 5295fa2d..934ad078 100644
--- a/src/Main/System/OverlayManager.cpp
+++ b/src/Main/System/OverlayManager.cpp
@@ -9,7 +9,7 @@ struct UnkStruct_020ee698 {
};
extern UnkStruct_020ee698 data_ov000_020ee698;
-struct OverlaySetup {
+struct GameModeData {
/* 00 */ unk8 mUnk_00;
/* 01 */ unk8 mUnk_01;
/* 02 */ unk8 mUnk_02;
@@ -22,7 +22,7 @@ struct OverlaySetup {
/* 18 */ void *mUnk_18;
/* 1c */
};
-extern OverlaySetup gOverlaySetups[];
+extern GameModeData gGameModes[];
extern u32 *data_027e0ce0[];
extern "C" void func_ov007_02102850(u32 **);
@@ -52,23 +52,21 @@ THUMB void OverlayManager::Unload(OverlayIndex index) {
}
}
-//! TODO: solve the .word issue with the overlay IDs
-//! both functions should match otherwise
-THUMB void OverlayManager::LoadOverlaySetup(s32 index) {
+THUMB void OverlayManager::LoadGameMode(s32 mode) {
OverlayId overlayId;
- OverlaySetup *pSetup;
+ GameModeData *pSetup;
- pSetup = &gOverlaySetups[index];
+ pSetup = &gGameModes[mode];
this->LoadIfNotLoaded(OverlayIndex_1, pSetup->slot1Overlay);
this->LoadIfNotLoaded(OverlayIndex_2, pSetup->slot2Overlay);
- if (index == 5) {
+ if (mode == 5) {
func_ov007_02102850(data_027e0ce0);
} else {
overlayId = pSetup->slot12Overlay;
- if (index == 6 && data_ov000_020ee698.mUnk_2c == 2) {
+ if (mode == 6 && data_ov000_020ee698.mUnk_2c == 2) {
overlayId = OverlayId_61;
}
@@ -77,7 +75,7 @@ THUMB void OverlayManager::LoadOverlaySetup(s32 index) {
}
}
-THUMB void OverlayManager::UnloadOverlaySetup() {
+THUMB void OverlayManager::UnloadGameMode() {
this->Unload(OverlayIndex_12);
this->Unload(OverlayIndex_3);