From 87e2f43273f53b5956c5b850271baab4dbe2efbc Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Thu, 1 Nov 2007 00:33:12 +0000 Subject: It's now possible to exit the screens with Gorrister's heart in IHNM normally (i.e by walking to the exit, not using it) - like the original svn-id: r29349 --- engines/saga/script.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'engines/saga') diff --git a/engines/saga/script.cpp b/engines/saga/script.cpp index ecd3c8a82f..4e778d4db5 100644 --- a/engines/saga/script.cpp +++ b/engines/saga/script.cpp @@ -721,6 +721,23 @@ void Script::playfieldClick(const Point& mousePoint, bool leftButton) { doVerb(); } } + + // Auto-use hitzone with id 24576 (the exit to the left) in screens 16 - 19 + // (screens with Gorrister's heart) in IHNM. For some reason, this zone does + // not have a corresponding action zone, so we auto-use it here, like the exits + // in Benny's chapter + if (_vm->_scene->currentChapterNumber() == 1 && + _vm->_scene->currentSceneNumber() >= 16 && + _vm->_scene->currentSceneNumber() <= 19 && + _pendingVerb == getVerbType(kVerbWalkTo) && + hitZone != NULL && hitZone->getHitZoneId() == 24576) { + _pendingVerb = getVerbType(kVerbUse); + if (objectTypeId(_pendingObject[0]) == kGameObjectActor) { + _vm->_actor->actorFaceTowardsObject(ID_PROTAG, _pendingObject[0]); + doVerb(); + } + } + } else { if (_pendingVerb == getVerbType(kVerbLookAt)) { if (objectTypeId(_pendingObject[0]) != kGameObjectActor) { -- cgit v1.2.3