aboutsummaryrefslogtreecommitdiff
path: root/sky
diff options
context:
space:
mode:
authorRobert Göffringmann2003-08-18 20:36:55 +0000
committerRobert Göffringmann2003-08-18 20:36:55 +0000
commitcc7700f01d98c1f2e56e9f3ad410743dbe2c8f91 (patch)
treeed90d0a0552584e2b7b4f6a536891c2d17cb011c /sky
parent91ab462ce5630f229b8501346e60a1a8a03d079f (diff)
downloadscummvm-rg350-cc7700f01d98c1f2e56e9f3ad410743dbe2c8f91.tar.gz
scummvm-rg350-cc7700f01d98c1f2e56e9f3ad410743dbe2c8f91.tar.bz2
scummvm-rg350-cc7700f01d98c1f2e56e9f3ad410743dbe2c8f91.zip
fix sfx restart after restoring a savegame
svn-id: r9770
Diffstat (limited to 'sky')
-rw-r--r--sky/sound.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/sky/sound.cpp b/sky/sound.cpp
index 3739b69bf8..acad413f9a 100644
--- a/sky/sound.cpp
+++ b/sky/sound.cpp
@@ -1083,8 +1083,10 @@ void SkySound::loadSection(uint8 pSection) {
_sampleRates = _soundData + sRateTabOfs;
_sfxInfo = _soundData + _sfxBaseOfs;
- for (uint8 cnt = 0; cnt < 4; cnt++)
- _sfxQueue[cnt].count = 0;
+ // if we just restored a savegame, the sfxqueue holds the sound we need to restart
+ if (!(SkyState::_systemVars.systemFlags & SF_GAME_RESTORED))
+ for (uint8 cnt = 0; cnt < 4; cnt++)
+ _sfxQueue[cnt].count = 0;
}
void SkySound::playSound(uint16 sound, uint16 volume, uint8 channel) {