diff options
author | Martin Kiewitz | 2010-05-23 13:22:58 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-05-23 13:22:58 +0000 |
commit | d27e32aa196afec2f2df20fea943a4b6978650b3 (patch) | |
tree | 18f236c912c8d05d30a3fbc692b4cdc8ecac6d82 | |
parent | aa4ae667a99219ef66bad260e29b468c7f6afa7e (diff) | |
download | scummvm-rg350-d27e32aa196afec2f2df20fea943a4b6978650b3.tar.gz scummvm-rg350-d27e32aa196afec2f2df20fea943a4b6978650b3.tar.bz2 scummvm-rg350-d27e32aa196afec2f2df20fea943a4b6978650b3.zip |
SCI: fix regression of r49156 - if multiple songs are stored for resume-play, use the last one - fixes iceman wrong music played after going through door in room 14 - still not sure about this, added fixme
svn-id: r49157
-rw-r--r-- | engines/sci/sound/soundcmd.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/engines/sci/sound/soundcmd.cpp b/engines/sci/sound/soundcmd.cpp index 925f3b2e1a..272337148c 100644 --- a/engines/sci/sound/soundcmd.cpp +++ b/engines/sci/sound/soundcmd.cpp @@ -1058,8 +1058,11 @@ void SoundCommandParser::updateSci0Cues() { for (MusicList::iterator i = _music->getPlayListStart(); i != end; ++i) { // Is the sound stopped, and the sound object updated too? If yes, skip // this sound, as SCI0 only allows one active song - if (((*i)->isQueued) && (!pWaitingForPlay)) { + if ((*i)->isQueued) { pWaitingForPlay = (*i); + // FIXME (?) - in iceman 2 songs are queued when playing the door sound - if we use the first song for resuming + // then it's the wrong one. Both songs have same priority. Maybe the new sound function in sci0 + // is somehow responsible continue; } if ((*i)->signal == 0 && (*i)->status != kSoundPlaying) |