diff options
-rw-r--r-- | engines/saga/saga.cpp | 10 | ||||
-rw-r--r-- | engines/saga/saga.h | 1 |
2 files changed, 9 insertions, 2 deletions
diff --git a/engines/saga/saga.cpp b/engines/saga/saga.cpp index f20672d46b..e12bdbdd5d 100644 --- a/engines/saga/saga.cpp +++ b/engines/saga/saga.cpp @@ -147,6 +147,7 @@ Common::Error SagaEngine::init() { _copyProtection = ConfMan.getBool("copy_protection"); _gf_wyrmkeep = false; _gf_compressed_sounds = false; + _musicWasPlaying = false; if (_readingSpeed > 3) _readingSpeed = 0; @@ -539,12 +540,17 @@ void SagaEngine::pauseEngineIntern(bool pause) { if (pause) { _render->setFlag(RF_RENDERPAUSE); - if (!_music->hasDigitalMusic()) + if (_music->isPlaying()) { _music->pause(); + _musicWasPlaying = true; + } else { + _musicWasPlaying = false; + } } else { _render->clearFlag(RF_RENDERPAUSE); - if (!_music->hasDigitalMusic()) + if (_musicWasPlaying) { _music->resume(); + } } _mixer->pauseAll(pause); diff --git a/engines/saga/saga.h b/engines/saga/saga.h index 6f861dad79..7276d93c94 100644 --- a/engines/saga/saga.h +++ b/engines/saga/saga.h @@ -535,6 +535,7 @@ public: bool _copyProtection; bool _gf_wyrmkeep; bool _gf_compressed_sounds; + bool _musicWasPlaying; SndRes *_sndRes; Sound *_sound; |