diff options
author | Travis Howell | 2006-06-14 12:22:24 +0000 |
---|---|---|
committer | Travis Howell | 2006-06-14 12:22:24 +0000 |
commit | 6fe3d3214d98df513fbe59eb79b7951ee6b0174b (patch) | |
tree | c4b5762c10c20bdd4e768020d636e0ca3a3aec13 /engines | |
parent | 7afb55604b3d1cc34f2eb0cf4103355240e4fb86 (diff) | |
download | scummvm-rg350-6fe3d3214d98df513fbe59eb79b7951ee6b0174b.tar.gz scummvm-rg350-6fe3d3214d98df513fbe59eb79b7951ee6b0174b.tar.bz2 scummvm-rg350-6fe3d3214d98df513fbe59eb79b7951ee6b0174b.zip |
Fix the shadow glitches in HE98 version of puttrace, the shadow mode isn't reset in HE90-98 games.
svn-id: r23104
Diffstat (limited to 'engines')
-rw-r--r-- | engines/scumm/akos.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/scumm/akos.cpp b/engines/scumm/akos.cpp index bce6a872cb..42c1a04fa5 100644 --- a/engines/scumm/akos.cpp +++ b/engines/scumm/akos.cpp @@ -388,6 +388,9 @@ byte AkosRenderer::drawLimb(const Actor *a, int limb) { if (code & 0x80) code = READ_BE_UINT16(p); + if (_vm->_game.heversion >= 90) + _shadow_mode = 0; + if (code == AKC_C021 || code == AKC_C022) { uint16 s = cost.curpos[limb] + 4; uint j = 0; @@ -498,7 +501,10 @@ byte AkosRenderer::drawLimb(const Actor *a, int limb) { continue; if (_vm->_game.heversion >= 90) { - _shadow_mode = ((shadowMask & 0x8000) && xmap) ? 3 : 0; + if (_vm->_game.heversion >= 99) + _shadow_mode = 0; + if (xmap && (shadowMask & 0x8000)) + _shadow_mode = 3; } switch (codec) { |