diff options
Diffstat (limited to 'engines/groovie/vdx.cpp')
-rw-r--r-- | engines/groovie/vdx.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/groovie/vdx.cpp b/engines/groovie/vdx.cpp index 1b4a2b7800..5569ae92ca 100644 --- a/engines/groovie/vdx.cpp +++ b/engines/groovie/vdx.cpp @@ -86,6 +86,11 @@ uint16 VDXPlayer::loadInternal() { _flagEight = ((_flags & (1 << 8)) != 0); _flagNine = ((_flags & (1 << 9)) != 0); + // Enable highspeed if we're not obeying fps, and not marked as special + // This will be disabled in chunk audio if we're actually an audio vdx + if ( _vm->_modeSpeed == kGroovieSpeediOS || (_vm->_modeSpeed == kGroovieSpeedTweaked && ((_flags & (1 << 15)) == 0))) + setOverrideSpeed(true); + if (_flagOnePrev && !_flagOne && !_flagEight) { _flagSeven = true; } @@ -522,6 +527,11 @@ void VDXPlayer::decodeBlockDelta(uint32 offset, byte *colours, uint16 imageWidth } void VDXPlayer::chunkSound(Common::ReadStream *in) { + if (getOverrideSpeed()) + { + setOverrideSpeed(false); + } + if (!_audioStream) { _audioStream = Audio::makeQueuingAudioStream(22050, false); Audio::SoundHandle sound_handle; |