aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPeter Kohaut2019-04-30 19:13:47 +0200
committerPeter Kohaut2019-04-30 19:14:16 +0200
commitfb26f21d0478a29da16bd7daa10110aa97a2b604 (patch)
tree8e5f821f84cbe94764b43e911e3c568313830b1e /engines
parent5b18aee7435bd6659574527cd0f7c15063498ee5 (diff)
downloadscummvm-rg350-fb26f21d0478a29da16bd7daa10110aa97a2b604.tar.gz
scummvm-rg350-fb26f21d0478a29da16bd7daa10110aa97a2b604.tar.bz2
scummvm-rg350-fb26f21d0478a29da16bd7daa10110aa97a2b604.zip
BLADERUNNER: Fixed zbuffer in TB05
This was causing issues with walking in TB05
Diffstat (limited to 'engines')
-rw-r--r--engines/bladerunner/vqa_decoder.h4
-rw-r--r--engines/bladerunner/vqa_player.cpp7
2 files changed, 7 insertions, 4 deletions
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);