aboutsummaryrefslogtreecommitdiff
path: root/scumm/object.cpp
diff options
context:
space:
mode:
authorMax Horn2002-12-13 01:33:23 +0000
committerMax Horn2002-12-13 01:33:23 +0000
commit5e0db4cb8c053bd8b0c2069b22ba66c94efca253 (patch)
treef736f9246fed0986173dfe71d5e545b41dc225a4 /scumm/object.cpp
parent85a4c53a1a83a6f97ac74357fa4177195da56de7 (diff)
downloadscummvm-rg350-5e0db4cb8c053bd8b0c2069b22ba66c94efca253.tar.gz
scummvm-rg350-5e0db4cb8c053bd8b0c2069b22ba66c94efca253.tar.bz2
scummvm-rg350-5e0db4cb8c053bd8b0c2069b22ba66c94efca253.zip
Patch #649356, INDY3: Possible intro fix
svn-id: r5924
Diffstat (limited to 'scumm/object.cpp')
-rw-r--r--scumm/object.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/scumm/object.cpp b/scumm/object.cpp
index c645e1db68..621221f1b9 100644
--- a/scumm/object.cpp
+++ b/scumm/object.cpp
@@ -38,9 +38,6 @@ bool Scumm::getClass(int obj, int cls)
if (cls == 32) // CLASS_TOUCHABLE
cls = 24;
-
- if (_gameId == GID_INDY3_256 && cls == 22 && _currentRoom == 76) // Masking fix for Indy3
- cls = 21;
}
return (_classData[obj] & (1 << (cls - 1))) != 0;
}
@@ -59,8 +56,12 @@ void Scumm::putClass(int obj, int cls, bool set)
if (cls == 32) // CLASS_TOUCHABLE
cls = 24;
- if (_gameId == GID_INDY3_256 && cls == 22 && _currentRoom == 76) // Masking fix for Indy3
- cls = 21;
+ // FIXME: It isn't enough for the Indy3 intro to make the
+ // little trains ignore boxes (class 22), they have to always
+ // clip (class 21) as well. Is this yet another walkbox 0
+ // error?
+ if (_gameId == GID_INDY3_256 && cls == 22 && _currentRoom == 76)
+ putClass(obj, 21, set);
}
if (set)