diff options
Diffstat (limited to 'src/koopatlas')
-rw-r--r-- | src/koopatlas/hud.cpp | 6 | ||||
-rw-r--r-- | src/koopatlas/mapdata.h | 4 | ||||
-rw-r--r-- | src/koopatlas/pathmanager.cpp | 6 |
3 files changed, 11 insertions, 5 deletions
diff --git a/src/koopatlas/hud.cpp b/src/koopatlas/hud.cpp index 7ed1b5d..117773f 100644 --- a/src/koopatlas/hud.cpp +++ b/src/koopatlas/hud.cpp @@ -475,14 +475,14 @@ void dWMHud_c::loadHeaderInfo() { void dWMHud_c::loadFooterInfo() { SaveBlock *save = GetSaveFile()->GetBlock(-1); - wchar_t convertedWorldName[36]; + wchar_t convertedWorldName[32]; int i; - for (i = 0; i < 36; i++) { + for (i = 0; i < 32; i++) { convertedWorldName[i] = save->newerWorldName[i]; if (convertedWorldName[i] == 0) break; } - convertedWorldName[35] = 0; + convertedWorldName[31] = 0; WorldName->SetString(convertedWorldName); WorldNameS->SetString(convertedWorldName); diff --git a/src/koopatlas/mapdata.h b/src/koopatlas/mapdata.h index 8c133b4..9c1cd50 100644 --- a/src/koopatlas/mapdata.h +++ b/src/koopatlas/mapdata.h @@ -197,7 +197,9 @@ struct dKPWorldDef_s { s8 hudHintS, hudHintL; u8 key, trackID; u8 worldID; - u8 padding; + u8 titleScreenWorld; + u8 titleScreenLevel; + u8 padding[3]; }; struct dKPMapFile_s { diff --git a/src/koopatlas/pathmanager.cpp b/src/koopatlas/pathmanager.cpp index 49ba3cd..acaee42 100644 --- a/src/koopatlas/pathmanager.cpp +++ b/src/koopatlas/pathmanager.cpp @@ -135,7 +135,8 @@ dWMPathManager_c::~dWMPathManager_c() { if (isEnteringLevel) { SaveBlock *save = GetSaveFile()->GetBlock(-1); - if (enteredLevel->displayLevel >= 21 && enteredLevel->displayLevel <= 28 && enteredLevel->displayLevel != 26) { + if ((enteredLevel->displayLevel >= 21 && enteredLevel->displayLevel <= 27 && enteredLevel->displayLevel != 26) + || (enteredLevel->displayLevel >= 29 && enteredLevel->displayLevel <= 42)) { if (!save->CheckLevelCondition(enteredLevel->worldSlot, enteredLevel->levelSlot, COND_NORMAL)) { MaybeFinishingLevel[0] = enteredLevel->worldSlot; MaybeFinishingLevel[1] = enteredLevel->levelSlot; @@ -666,6 +667,9 @@ void dWMPathManager_c::moveThroughPath() { save->hudHintS = world->hudHintS; save->hudHintL = world->hudHintL; + save->titleScreenWorld = world->titleScreenWorld; + save->titleScreenLevel = world->titleScreenLevel; + if (dWMHud_c::instance) dWMHud_c::instance->showFooter(); } |