aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2004-04-11 23:19:19 +0000
committerMax Horn2004-04-11 23:19:19 +0000
commitfd3ff5b58a5c9d85c688b6a3f8c5c7f99cbe5134 (patch)
tree33368b2123d44bb8c32923672a4be9d96d344971
parent8fc35a9a84a5deff09089f355bf6bed7fdf4a9f7 (diff)
downloadscummvm-rg350-fd3ff5b58a5c9d85c688b6a3f8c5c7f99cbe5134.tar.gz
scummvm-rg350-fd3ff5b58a5c9d85c688b6a3f8c5c7f99cbe5134.tar.bz2
scummvm-rg350-fd3ff5b58a5c9d85c688b6a3f8c5c7f99cbe5134.zip
Workaround for bug #847827 (FOA: Wrong sprite z-order at specific place)
svn-id: r13553
-rw-r--r--scumm/boxes.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/scumm/boxes.cpp b/scumm/boxes.cpp
index 683a86bb6e..0e5c0b69b4 100644
--- a/scumm/boxes.cpp
+++ b/scumm/boxes.cpp
@@ -60,8 +60,8 @@ struct Box { /* Internal walkbox file format */
int32 urx, ury;
int32 lrx, lry;
int32 llx, lly;
- uint32 mask; // FIXME - is 'mask' really here?
- uint32 flags; // FIXME - is 'flags' really here?
+ uint32 mask;
+ uint32 flags;
uint32 scaleSlot;
uint32 scale;
uint32 unk2;
@@ -92,6 +92,11 @@ byte ScummEngine::getMaskFromBox(int box) {
if (!ptr)
return 0;
+ // WORKAROUND for bug #847827: This is a bug in the data files, as it also
+ // occurs with the original engine. We work around it here anyway.
+ if (_gameId == GID_INDY4 && _currentRoom == 225 && _roomResource == 94 && box == 8)
+ return 0;
+
if (_version == 8)
return (byte) FROM_LE_32(ptr->v8.mask);
else if (_version <= 2)