summaryrefslogtreecommitdiff
path: root/src/koopatlas/core.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/koopatlas/core.cpp')
-rw-r--r--src/koopatlas/core.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/koopatlas/core.cpp b/src/koopatlas/core.cpp
index fd6eace..03b8dae 100644
--- a/src/koopatlas/core.cpp
+++ b/src/koopatlas/core.cpp
@@ -193,7 +193,8 @@ bool WMInit_LoadResources2(void *ptr) {
}
if (wm->mapData.load(wm->mapPath)) {
- dKPMusic::play(GetSaveFile()->GetBlock(-1)->currentMapMusic);
+ if (!wm->isFirstPlay)
+ wm->startMusic();
return true;
} else
return false;
@@ -333,6 +334,10 @@ ActivateWipe(WIPE_MARIO);
DoStartLevel(GetGameMgr(), &sl);
}*/
+void dScKoopatlas_c::startMusic() {
+ dKPMusic::play(GetSaveFile()->GetBlock(-1)->currentMapMusic);
+}
+
int dScKoopatlas_c::onCreate() {
OSReport("KP scene settings: %08x\n", settings);
@@ -405,6 +410,8 @@ int dScKoopatlas_c::onCreate() {
SaveBlock *save = GetSaveFile()->GetBlock(-1);
currentMapID = save->current_world;
+ isFirstPlay = (currentMapID == 0) && (settings & 0x80000000);
+
somethingAboutSound(_8042A788);
return true;