aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippos Karapetis2007-11-12 19:49:42 +0000
committerFilippos Karapetis2007-11-12 19:49:42 +0000
commit71d54d1d3648c081629a6a13e2b3bc44919e09f0 (patch)
tree44926913f6fddc114a3b25c4b57eeee2fd3fa292
parent2e46b741a350716eb674a3ea18938ef23329f43f (diff)
downloadscummvm-rg350-71d54d1d3648c081629a6a13e2b3bc44919e09f0.tar.gz
scummvm-rg350-71d54d1d3648c081629a6a13e2b3bc44919e09f0.tar.bz2
scummvm-rg350-71d54d1d3648c081629a6a13e2b3bc44919e09f0.zip
Added a workaround for a problematic object in Gorrister's chapter (Edna's key)
svn-id: r29486
-rw-r--r--engines/saga/script.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/engines/saga/script.cpp b/engines/saga/script.cpp
index 51e40defd1..95ed639a1b 100644
--- a/engines/saga/script.cpp
+++ b/engines/saga/script.cpp
@@ -861,6 +861,19 @@ void Script::whichObject(const Point& mousePoint) {
objectFlags = 0;
newRightButtonVerb = hitZone->getRightButtonVerb() & 0x7f;
+ // WORKAROUND for a problematic object in IHNM
+ // In the freezer room, the key that drops is made of a hitzone which
+ // contains the key object itself. We change the object ID that the
+ // hitzone contains (object ID 24578 - "The key") to the ID of the key
+ // object itself (object ID 16402 - "Edna's key"), as the user can keep
+ // hovering the cursor to both items, but can only pick up one
+ if (_vm->getGameType() == GType_IHNM) {
+ if (_vm->_scene->currentChapterNumber() == 1 && _vm->_scene->currentSceneNumber() == 24) {
+ if (objectId == 24578)
+ objectId = 16402;
+ }
+ }
+
if (_vm->getGameType() == GType_ITE) {
if (newRightButtonVerb == getVerbType(kVerbWalkOnly)) {