aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
diff options
context:
space:
mode:
authorsluicebox2019-03-12 13:00:50 -0700
committersluicebox2019-08-12 03:30:31 -0700
commit99a7478cd60ad4f0167dc4a8d0ac6498ca012d8b (patch)
tree2ecc1f1435adb89224c579879a71b94f60c20b3b /engines/sci
parentba2bc60043c8a1bbc651ca237783ef5e6883bda0 (diff)
downloadscummvm-rg350-99a7478cd60ad4f0167dc4a8d0ac6498ca012d8b.tar.gz
scummvm-rg350-99a7478cd60ad4f0167dc4a8d0ac6498ca012d8b.tar.bz2
scummvm-rg350-99a7478cd60ad4f0167dc4a8d0ac6498ca012d8b.zip
SCI: Update Sound:vol in processUpdateCues
Sound:vol is updated when updating cues starting in SCI_VERSION_1_MIDDLE. Fixes bug #10244. SQ4 localized floppy versions depend on this when getting in the orange ship, they fade music and wait for the volume to reach zero. Confirmed against asm that this is not in SQ4 floppy (early) but is in LSL1VGA (middle) and SQ4 localized floppies and SQ4CD (late).
Diffstat (limited to 'engines/sci')
-rw-r--r--engines/sci/sound/soundcmd.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/engines/sci/sound/soundcmd.cpp b/engines/sci/sound/soundcmd.cpp
index 8c15a547dc..5279de8a28 100644
--- a/engines/sci/sound/soundcmd.cpp
+++ b/engines/sci/sound/soundcmd.cpp
@@ -616,6 +616,10 @@ void SoundCommandParser::processUpdateCues(reg_t obj) {
writeSelectorValue(_segMan, obj, SELECTOR(min), musicSlot->ticker / 3600);
writeSelectorValue(_segMan, obj, SELECTOR(sec), musicSlot->ticker % 3600 / 60);
writeSelectorValue(_segMan, obj, SELECTOR(frame), musicSlot->ticker % 60 / 2);
+
+ if (_soundVersion >= SCI_VERSION_1_MIDDLE) {
+ writeSelectorValue(_segMan, obj, SELECTOR(vol), musicSlot->volume);
+ }
}
}