diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/sci/sound/soundcmd.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/engines/sci/sound/soundcmd.cpp b/engines/sci/sound/soundcmd.cpp index 45a3e09453..0017fe0c0b 100644 --- a/engines/sci/sound/soundcmd.cpp +++ b/engines/sci/sound/soundcmd.cpp @@ -445,9 +445,13 @@ void SoundCommandParser::processUpdateCues(reg_t obj) { if (musicSlot->fadeCompleted) { musicSlot->fadeCompleted = false; - // We need signal for sci0 at least in iceman as well (room 14, fireworks) - writeSelectorValue(_segMan, obj, SELECTOR(signal), SIGNAL_OFFSET); if (_soundVersion <= SCI_VERSION_0_LATE) { + // We need signal for sci0 at least in iceman as well (room 14, fireworks) + // Note: We should not set the signal here when fading is done in later + // games. This fixes the dialog boxes disappearing too quickly in the + // intro of Longbow (bug #3044844). It also fixes the music not fading out + // when the bandits leave the temple in KQ5 (bug #3037594). + writeSelectorValue(_segMan, obj, SELECTOR(signal), SIGNAL_OFFSET); processStopSound(obj, false); } else { if (musicSlot->stopAfterFading) |