diff options
author | Willem Jan Palenstijn | 2013-09-21 09:30:42 +0200 |
---|---|---|
committer | Willem Jan Palenstijn | 2013-09-21 09:31:08 +0200 |
commit | 3792af8e955bea5a07359c808361a16b15481327 (patch) | |
tree | 5a50228ce36d0fbd576473345e5982b0e602ed3b /engines/sci/sound/midiparser_sci.cpp | |
parent | 11d425b76c7d6cdae8b72a1c3c438cc74e9c37a0 (diff) | |
download | scummvm-rg350-3792af8e955bea5a07359c808361a16b15481327.tar.gz scummvm-rg350-3792af8e955bea5a07359c808361a16b15481327.tar.bz2 scummvm-rg350-3792af8e955bea5a07359c808361a16b15481327.zip |
AUDIO: Simplify SCI inFastForward flag by moving it to MidiParser
Diffstat (limited to 'engines/sci/sound/midiparser_sci.cpp')
-rw-r--r-- | engines/sci/sound/midiparser_sci.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/engines/sci/sound/midiparser_sci.cpp b/engines/sci/sound/midiparser_sci.cpp index 0af8e7aedd..40ae91d83d 100644 --- a/engines/sci/sound/midiparser_sci.cpp +++ b/engines/sci/sound/midiparser_sci.cpp @@ -543,7 +543,7 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) { // That is probably why this signal isn't triggered // immediately there. if (_soundVersion <= SCI_VERSION_0_LATE || _position._playTick) { - if (!_pSnd->inFastForward) { + if (!_jumpingToTick) { _pSnd->setSignal(info.basic.param1); debugC(4, kDebugLevelSound, "signal %04x", info.basic.param1); } @@ -586,15 +586,13 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) { // marker set for that song by cmdSetSoundHold. // If it is, loop back, but don't stop notes when jumping. if (info.basic.param2 == _pSnd->hold) { - _pSnd->inFastForward = true; jumpToTick(_loopTick, false, false); - _pSnd->inFastForward = false; // Done with this event. return; } return; case kUpdateCue: - if (!_pSnd->inFastForward) { + if (!_jumpingToTick) { int inc; switch (_soundVersion) { case SCI_VERSION_0_EARLY: @@ -658,9 +656,7 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) { // (e.g. song 110, during the intro). The original interpreter // treats this case as an infinite loop (bug #3311911). if (_pSnd->loop || _pSnd->hold > 0) { - _pSnd->inFastForward = true; jumpToTick(_loopTick); - _pSnd->inFastForward = false; // Done with this event. return; |