diff options
author | Eugene Sandulenko | 2016-11-25 10:43:39 +0100 |
---|---|---|
committer | Eugene Sandulenko | 2016-11-25 18:53:16 +0100 |
commit | 4d8cc0db680184d9a38d13d35d89e26dc02beabc (patch) | |
tree | 0e8f7fb9b514206780a6fe26dfc84a190ab67b94 /engines/fullpipe | |
parent | 535929aca081cb7ae74389f0a6144795117026bb (diff) | |
download | scummvm-rg350-4d8cc0db680184d9a38d13d35d89e26dc02beabc.tar.gz scummvm-rg350-4d8cc0db680184d9a38d13d35d89e26dc02beabc.tar.bz2 scummvm-rg350-4d8cc0db680184d9a38d13d35d89e26dc02beabc.zip |
FULLPIPE: Correctly restart scene audio tracks
Diffstat (limited to 'engines/fullpipe')
-rw-r--r-- | engines/fullpipe/sound.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/engines/fullpipe/sound.cpp b/engines/fullpipe/sound.cpp index cd6647177e..4ec8dd05ca 100644 --- a/engines/fullpipe/sound.cpp +++ b/engines/fullpipe/sound.cpp @@ -306,6 +306,13 @@ void FullpipeEngine::setSceneMusicParameters(GameVar *gvar) { } void FullpipeEngine::startSceneTrack() { + if (_sceneTrackIsPlaying) { + if (!_mixer->isSoundHandleActive(*_sceneTrackHandle)) { // Simulate end of sound callback + _sceneTrackIsPlaying = false; + _trackStartDelay = _musicMinDelay + (_musicMaxDelay - _musicMinDelay) * (_updateTicks % 10) / 9; + } + } + if (!_sceneTrackIsPlaying && _numSceneTracks > 0) { if (_trackStartDelay > 0) { _trackStartDelay--; |