diff options
Diffstat (limited to 'engines/scumm')
-rw-r--r-- | engines/scumm/costume.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/engines/scumm/costume.cpp b/engines/scumm/costume.cpp index 7a5c447eec..41bceb8e5d 100644 --- a/engines/scumm/costume.cpp +++ b/engines/scumm/costume.cpp @@ -1201,17 +1201,13 @@ byte C64CostumeRenderer::drawLimb(const Actor *a, int limb) { palette[3] = 11; } - int width = *data++; - int height = *data++; - int offsetX = *data++; - int offsetY = *data++; - // these two fields seems to be most times zero - // byte6 was one time 255 in one costume I tried -// int byte5 = *data++; // 0x1F80 // This value is never used -// int byte6 = *data++; // 0x1F86 // This value is subtracted from ?actor drawy? at 0x2383 -// debug(3, "byte5: %d", byte5); -// debug(3, "byte6: %d", byte6); - data += 2; + int width = data[0]; + int height = data[1]; + int offsetX = _xmove + data[2]; + int offsetY = _ymove + data[3]; + _xmove += (int8)data[4]; + _ymove += (int8)data[5]; + data += 6; if (!width || !height) return 0; |