aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scumm/akos.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/scumm/akos.cpp b/scumm/akos.cpp
index 7f6550bbc6..f1e3d24016 100644
--- a/scumm/akos.cpp
+++ b/scumm/akos.cpp
@@ -490,8 +490,8 @@ byte AkosRenderer::drawLimb(const Actor *a, int limb) {
if (decflag == 0)
continue;
- if ((shadowMask & 0x8000) && _shadow_table) {
- _shadow_mode = (shadowMask) ? 3: 0;
+ if (_vm->_heversion >= 95) {
+ _shadow_mode = ((shadowMask & 0x8000) && _shadow_table) ? 3 : 0;
}
switch (codec) {
@@ -1279,7 +1279,11 @@ byte AkosRenderer::codec32(int xmoveCur, int ymoveCur) {
}
byte *dstPtr = (byte *)_out.pixels + dst.left + dst.top * _out.pitch;
- Wiz::decompressWizImage(dstPtr, _out.pitch, dst, _srcptr, src, palPtr);
+ if (_shadow_mode == 3) {
+ Wiz::decompressWizImage(dstPtr, _out.pitch, dst, _srcptr, src, palPtr, _shadow_table);
+ } else {
+ Wiz::decompressWizImage(dstPtr, _out.pitch, dst, _srcptr, src, palPtr);
+ }
#endif
return 0;
}