aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Kurushin2005-04-22 16:41:44 +0000
committerAndrew Kurushin2005-04-22 16:41:44 +0000
commitca33ec4563e05b0940e44de78e0f52bbbf6bfe41 (patch)
tree6f1f70bad8d092e157afcdca3fb24bda83b399b8
parentf3049a41f409942acc39b81a3ad2bee924711d86 (diff)
downloadscummvm-rg350-ca33ec4563e05b0940e44de78e0f52bbbf6bfe41.tar.gz
scummvm-rg350-ca33ec4563e05b0940e44de78e0f52bbbf6bfe41.tar.bz2
scummvm-rg350-ca33ec4563e05b0940e44de78e0f52bbbf6bfe41.zip
fixes sfEnableZone ( 'house' problem )
svn-id: r17751
-rw-r--r--saga/sfuncs.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/saga/sfuncs.cpp b/saga/sfuncs.cpp
index c3e3d0bff7..9a6d6616ab 100644
--- a/saga/sfuncs.cpp
+++ b/saga/sfuncs.cpp
@@ -665,12 +665,16 @@ void Script::sfScriptWalkToAsync(SCRIPTFUNC_PARAMS) {
// Script function #28 (0x1C)
void Script::sfEnableZone(SCRIPTFUNC_PARAMS) {
- int16 hitZoneIndex = objectIdToIndex(thread->pop());
+ uint16 objectId = thread->pop();
int16 flag = thread->pop();
HitZone *hitZone;
- debug(0, "sfEnableZone(%d, %d)", hitZoneIndex, flag);
- hitZone = _vm->_scene->_objectMap->getHitZone(hitZoneIndex);
+ debug(0, "sfEnableZone(%d, %d)", objectId, flag);
+ if (objectTypeId(objectId) == kGameObjectHitZone) {
+ hitZone = _vm->_scene->_objectMap->getHitZone(objectIdToIndex(objectId));
+ } else {
+ hitZone = _vm->_scene->_actionMap->getHitZone(objectIdToIndex(objectId));
+ }
if (flag) {
hitZone->setFlag(kHitZoneEnabled);