diff options
author | Eugene Sandulenko | 2016-10-26 10:46:59 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2016-10-26 10:48:37 +0200 |
commit | f6dda6b7fbbba28d8aa1d396f9812471ed0e059d (patch) | |
tree | 4dcb5d3d4bd81adeeb1953d745ba3b1c2359569a /engines/director/score.cpp | |
parent | 814db5fd38ae87a23674f07461ca35358bd77eb5 (diff) | |
download | scummvm-rg350-f6dda6b7fbbba28d8aa1d396f9812471ed0e059d.tar.gz scummvm-rg350-f6dda6b7fbbba28d8aa1d396f9812471ed0e059d.tar.bz2 scummvm-rg350-f6dda6b7fbbba28d8aa1d396f9812471ed0e059d.zip |
DIRECTOR: Skip header in VWLB resource for D4+
For some reason the pointer in D4 movies points to the header
instead of data. Perhaps there is a flag which indicates that.
In the meanwhile, adding a hack to skip it so we could proceed
with development.
Diffstat (limited to 'engines/director/score.cpp')
-rw-r--r-- | engines/director/score.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/engines/director/score.cpp b/engines/director/score.cpp index 7b03ca1a7d..1345f4b912 100644 --- a/engines/director/score.cpp +++ b/engines/director/score.cpp @@ -365,6 +365,11 @@ void Score::loadCastData(Common::SeekableSubReadStreamEndian &stream) { } void Score::loadLabels(Common::SeekableSubReadStreamEndian &stream) { + if (_vm->getVersion() >= 4) { // HACK: Skip the header. Why it is there? + stream.readUint32LE(); + stream.readUint32LE(); + } + _labels = new Common::SortedArray<Label *>(compareLabels); uint16 count = stream.readUint16() + 1; uint16 offset = count * 4 + 2; |