aboutsummaryrefslogtreecommitdiff
path: root/scumm/saveload.cpp
diff options
context:
space:
mode:
authorJames Brown2004-01-31 16:07:11 +0000
committerJames Brown2004-01-31 16:07:11 +0000
commit9b2e69fe2f9c4bd431ed51da3e45072551e91bab (patch)
tree257bd5593e4cb51f88d17e05dd35c8d696b434f9 /scumm/saveload.cpp
parent21f7b4633aebe80a2bf243448610b0ab66a14533 (diff)
downloadscummvm-rg350-9b2e69fe2f9c4bd431ed51da3e45072551e91bab.tar.gz
scummvm-rg350-9b2e69fe2f9c4bd431ed51da3e45072551e91bab.tar.bz2
scummvm-rg350-9b2e69fe2f9c4bd431ed51da3e45072551e91bab.zip
Patch #886058 - Don't stop music when loading certain temporary states.
svn-id: r12686
Diffstat (limited to 'scumm/saveload.cpp')
-rw-r--r--scumm/saveload.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp
index a3ab239b5b..0d5e272159 100644
--- a/scumm/saveload.cpp
+++ b/scumm/saveload.cpp
@@ -124,7 +124,21 @@ bool ScummEngine::loadState(int slot, bool compat, SaveFileManager *mgr) {
memcpy(_saveLoadName, hdr.name, sizeof(hdr.name));
- _sound->stopAllSounds();
+ // Unless specifically requested with _saveSound, we do not save the iMUSE
+ // state for temporary state saves - such as certain cutscenes in DOTT,
+ // FOA, Sam and Max, etc.
+ //
+ // Thusly, we should probably not stop music when restoring from one of
+ // these saves. This change stops the Mole Man theme from going quiet in
+ // Sam & Max when Doug tells you about the Ball of Twine, as mentioned in
+ // patch #886058.
+ //
+ // If we don't have iMUSE at all we may as well stop the sounds. The previous
+ // default behavior here was to stopAllSounds on all state restores.
+
+ if (!_imuse || _saveSound || !_saveLoadCompatible)
+ _sound->stopAllSounds();
+
_sound->stopCD();
_sound->pauseSounds(true);