diff options
author | Eugene Sandulenko | 2005-05-31 22:09:35 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2005-05-31 22:09:35 +0000 |
commit | 6d0082d29da1a3adb05743d70f11904a282e0938 (patch) | |
tree | 0a772ecfcc5988bc7968fd0678593dc9e6d3beeb /scumm/costume.cpp | |
parent | d1ffc9df2d3a907e2de871a9b9b4c81d4af3e55c (diff) | |
download | scummvm-rg350-6d0082d29da1a3adb05743d70f11904a282e0938.tar.gz scummvm-rg350-6d0082d29da1a3adb05743d70f11904a282e0938.tar.bz2 scummvm-rg350-6d0082d29da1a3adb05743d70f11904a282e0938.zip |
Some stubs for C64 MM costume code
svn-id: r18304
Diffstat (limited to 'scumm/costume.cpp')
-rw-r--r-- | scumm/costume.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/scumm/costume.cpp b/scumm/costume.cpp index e939fc4d93..29e701bd34 100644 --- a/scumm/costume.cpp +++ b/scumm/costume.cpp @@ -1009,9 +1009,25 @@ void C64CostumeRenderer::setCostume(int costume) { _loaded.loadCostume(costume); } +static const byte actorColorsMMC64[] = { + 0, 7, 2, 6, 9, 1, 3, 7, 7, 1, 1, 9, 1, 4, 5, 5, + 4, 1, 0, 5, 4, 2, 2, 7, 7, 0, 6, 6, 6, 6, 6, 6 +}; + void C64CostumeLoader::loadCostume(int id) { + const byte *ptr = _vm->getResourceAddress(rtCostume, id); _id = id; - _baseptr = _vm->getResourceAddress(rtCostume, id); + _baseptr = ptr + 9; + + _format = 0x57; + _numColors = 0; + _numAnim = 0; + _mirror = 0; + _palette = &actorColorsMMC64[id]; + + _frameOffsets = _baseptr + READ_LE_UINT16(ptr + 5); + _dataOffsets = ptr; + _animCmds = _baseptr + READ_LE_UINT16(ptr + 7); } void C64CostumeLoader::costumeDecodeData(Actor *a, int frame, uint usemask) { |