aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/saga/sfuncs.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/engines/saga/sfuncs.cpp b/engines/saga/sfuncs.cpp
index 5190537db8..bebacc39d3 100644
--- a/engines/saga/sfuncs.cpp
+++ b/engines/saga/sfuncs.cpp
@@ -731,6 +731,15 @@ void Script::sfEnableZone(SCRIPTFUNC_PARAMS) {
if (objectTypeId(objectId) == kGameObjectHitZone) {
hitZone = _vm->_scene->_objectMap->getHitZone(objectIdToIndex(objectId));
+ } else if (_vm->getGameType() == GType_IHNM && _vm->_scene->currentChapterNumber() == 1 &&
+ _vm->_scene->currentSceneNumber() == 14) {
+ // HACK: Don't disable the requested hitzone in room 14 in chapter 1 (Gorrister) of IHNM
+ // Apparently, this is used in that room to disable the tear at the very end of the
+ // corridor. This fixes the staircase in scenes 4 and 14
+ // FIXME: Remove this hack
+ warning("HACK: Prevent crash at staircase with Gorrister");
+ // Do nothing
+ return;
} else {
hitZone = _vm->_scene->_actionMap->getHitZone(objectIdToIndex(objectId));
}