diff options
author | Eugene Sandulenko | 2005-08-11 22:00:32 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2005-08-11 22:00:32 +0000 |
commit | 31915362f1abcdbde2f13ebe51b6f9401afc17dc (patch) | |
tree | df0c0223faf900ad583768f3389406ea33b2dbdc | |
parent | 828bcebd41170586c485242c3b711896dcfb87a6 (diff) | |
download | scummvm-rg350-31915362f1abcdbde2f13ebe51b6f9401afc17dc.tar.gz scummvm-rg350-31915362f1abcdbde2f13ebe51b6f9401afc17dc.tar.bz2 scummvm-rg350-31915362f1abcdbde2f13ebe51b6f9401afc17dc.zip |
Fix bug #1257033 "ITE: Map music briefly plays when loading game at sanctuary"
svn-id: r18668
-rw-r--r-- | saga/music.h | 3 | ||||
-rw-r--r-- | saga/saveload.cpp | 16 |
2 files changed, 14 insertions, 5 deletions
diff --git a/saga/music.h b/saga/music.h index 98f6de7aa4..bb7d1f6d7e 100644 --- a/saga/music.h +++ b/saga/music.h @@ -111,7 +111,8 @@ public: void resume(void); void stop(void); - void setVolume(int volume, int time); + void setVolume(int volume, int time = 1); + int getVolume() { return _currentVolume; } private: SagaEngine *_vm; diff --git a/saga/saveload.cpp b/saga/saveload.cpp index 62e4172e24..4086e07c26 100644 --- a/saga/saveload.cpp +++ b/saga/saveload.cpp @@ -30,13 +30,14 @@ #include "saga/saga.h" #include "saga/actor.h" +#include "saga/events.h" +#include "saga/interface.h" #include "saga/isomap.h" +#include "saga/music.h" +#include "saga/render.h" #include "saga/resnames.h" -#include "saga/script.h" -#include "saga/interface.h" #include "saga/scene.h" -#include "saga/render.h" -#include "saga/events.h" +#include "saga/script.h" #define CURRENT_SAGA_VER 3 @@ -225,10 +226,15 @@ void SagaEngine::load(const char *fileName) { delete in; + // Mute volume to prevent outScene music play + int volume = _music->getVolume(); + _music->setVolume(0); + _isoMap->setMapPosition(mapx, mapy); _scene->clearSceneQueue(); _scene->changeScene(sceneNumber, ACTOR_NO_ENTRANCE, kTransitionNoFade); + _events->handleEvents(0); //dissolve back grounds if (insetSceneNumber != sceneNumber) { @@ -238,6 +244,8 @@ void SagaEngine::load(const char *fileName) { _scene->changeScene(insetSceneNumber, ACTOR_NO_ENTRANCE, kTransitionNoFade); } + _music->setVolume(volume); + _interface->draw(); } |