aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/sfx/soundcmd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sci/sfx/soundcmd.cpp')
-rw-r--r--engines/sci/sfx/soundcmd.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/engines/sci/sfx/soundcmd.cpp b/engines/sci/sfx/soundcmd.cpp
index 5d610d6821..12c909493b 100644
--- a/engines/sci/sfx/soundcmd.cpp
+++ b/engines/sci/sfx/soundcmd.cpp
@@ -775,6 +775,7 @@ void SoundCommandParser::cmdUpdateCues(reg_t obj, int16 value) {
Audio::Mixer *mixer = g_system->getMixer();
if (musicSlot->pStreamAud) {
+
// TODO: We need to update loop selector here, when sample is looping
if (!mixer->isSoundHandleActive(musicSlot->hCurrentAud)) {
musicSlot->ticker = SIGNAL_OFFSET;
@@ -783,6 +784,8 @@ void SoundCommandParser::cmdUpdateCues(reg_t obj, int16 value) {
} else {
musicSlot->ticker = (uint16)(mixer->getSoundElapsedTime(musicSlot->hCurrentAud) * 0.06);
}
+ if (musicSlot->fadeStep)
+ mixer->setChannelVolume(musicSlot->hCurrentAud, musicSlot->volume);
}
_music->_mutex.lock(); // and lock again