From fb26f21d0478a29da16bd7daa10110aa97a2b604 Mon Sep 17 00:00:00 2001 From: Peter Kohaut Date: Tue, 30 Apr 2019 19:13:47 +0200 Subject: BLADERUNNER: Fixed zbuffer in TB05 This was causing issues with walking in TB05 --- engines/bladerunner/vqa_decoder.h | 4 ---- engines/bladerunner/vqa_player.cpp | 7 +++++++ 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'engines/bladerunner') diff --git a/engines/bladerunner/vqa_decoder.h b/engines/bladerunner/vqa_decoder.h index 68e691cdbe..ca08db52be 100644 --- a/engines/bladerunner/vqa_decoder.h +++ b/engines/bladerunner/vqa_decoder.h @@ -81,9 +81,6 @@ public: bool getLoopBeginAndEndFrame(int loop, int *begin, int *end); -protected: - -private: struct Header { uint16 version; // 0x00 uint16 flags; // 0x02 @@ -141,7 +138,6 @@ private: class VQAAudioTrack; Common::SeekableReadStream *_s; - // Graphics::Surface *_surface; Header _header; int _readingFrame; diff --git a/engines/bladerunner/vqa_player.cpp b/engines/bladerunner/vqa_player.cpp index 65fab5f1cd..05ce15d72b 100644 --- a/engines/bladerunner/vqa_player.cpp +++ b/engines/bladerunner/vqa_player.cpp @@ -43,6 +43,13 @@ bool VQAPlayer::open() { return false; } +#if !BLADERUNNER_ORIGINAL_BUGS + // TB05 has wrong end of a loop and this will load empty zbuffer from next loop, which will lead to broken pathfinding + if (_name.equals("TB05_2.VQA")) { + _decoder._loopInfo.loops[1].end = 60; + } +#endif + _hasAudio = _decoder.hasAudio(); if (_hasAudio) { _audioStream = Audio::makeQueuingAudioStream(_decoder.frequency(), false); -- cgit v1.2.3