aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2003-07-08 16:47:15 +0000
committerMax Horn2003-07-08 16:47:15 +0000
commit5428987a04703840c22796820c25ca4c504e6c0a (patch)
treee33e509296fe615f607fe3eef1b4fbffd5604a95
parent501e728d0240cd38e5ae797e756417c0daacea87 (diff)
downloadscummvm-rg350-5428987a04703840c22796820c25ca4c504e6c0a.tar.gz
scummvm-rg350-5428987a04703840c22796820c25ca4c504e6c0a.tar.bz2
scummvm-rg350-5428987a04703840c22796820c25ca4c504e6c0a.zip
_dataOffsets has the correct value now (based on comparisions of repeated offsets in the offsets tables, and matching them up between V1 and V2)
svn-id: r8859
-rw-r--r--scumm/costume.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/scumm/costume.cpp b/scumm/costume.cpp
index bbda675e85..90ed4d90f1 100644
--- a/scumm/costume.cpp
+++ b/scumm/costume.cpp
@@ -539,7 +539,7 @@ void LoadedCostume::loadCostume(int id) {
}
ptr += 8 + _numColors;
_frameOffsets = ptr + 2;
- _dataOffsets = ptr + ((_vm->_version == 1) ? 20 : 34); // FIXME - V1 case might be wrong
+ _dataOffsets = ptr + ((_vm->_version == 1) ? 18 : 34); // FIXME - V1 case might be wrong
_animCmds = _baseptr + READ_LE_UINT16(ptr);
}
@@ -632,12 +632,13 @@ void Scumm::cost_decodeData(Actor *a, int frame, uint usemask) {
// FIXME: Maybe V1 only ready one byte here? At least it seems by comparing the
// V1 and V2 data that there is a 1-byte len difference.
/* if (_version == 1) {
- mask = *r++;
+ mask = *r++ << 8;
} else {
*/
mask = READ_LE_UINT16(r);
r += 2;
// }
+//printf("mask = 0x%x, usemask = 0x%x\n", mask, usemask);
i = 0;
do {
if (mask & 0x8000) {