aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorFilippos Karapetis2007-06-03 15:50:25 +0000
committerFilippos Karapetis2007-06-03 15:50:25 +0000
commit89b80a3f8bc1586c25629b109203a7a98619ae92 (patch)
treeec82363b25c5c4d5de33772415bdd687662c3d95 /engines
parentb159645be4bfe53f8f050be768325e3c777e8ed9 (diff)
downloadscummvm-rg350-89b80a3f8bc1586c25629b109203a7a98619ae92.tar.gz
scummvm-rg350-89b80a3f8bc1586c25629b109203a7a98619ae92.tar.bz2
scummvm-rg350-89b80a3f8bc1586c25629b109203a7a98619ae92.zip
Opcode 11 is sfLockUser. Also updated Scene::getHeight() for this change. Now, the interface is locked when the scripts lock it. This prevents erroneous actor movement when skipping speech by left clicking, and other incorrect behavior. Special thanks to h00ligan for all his help
svn-id: r27064
Diffstat (limited to 'engines')
-rw-r--r--engines/saga/scene.h2
-rw-r--r--engines/saga/sfuncs.cpp2
2 files changed, 3 insertions, 1 deletions
diff --git a/engines/saga/scene.h b/engines/saga/scene.h
index 5b19e5d654..5b2d78ff37 100644
--- a/engines/saga/scene.h
+++ b/engines/saga/scene.h
@@ -326,6 +326,8 @@ class Scene {
int getHeight() const {
if (_vm->_interface->getMode() == kPanelChapterSelection)
return _vm->getDisplayInfo().logicalHeight;
+ else if (_vm->getGameType() == GType_IHNM && _vm->_scene->currentChapterNumber() == 8)
+ return _vm->getDisplayInfo().logicalHeight;
else
return _vm->getDisplayInfo().sceneHeight;
}
diff --git a/engines/saga/sfuncs.cpp b/engines/saga/sfuncs.cpp
index 06ea9da77b..28dfb4f6f7 100644
--- a/engines/saga/sfuncs.cpp
+++ b/engines/saga/sfuncs.cpp
@@ -148,7 +148,7 @@ static const ScriptFunctionDescription IHNMscriptFunctionsList[IHNM_SCRIPT_FUNCT
OPCODE(sfSetActorFacing),
OPCODE(sfStartBgdAnim),
OPCODE(sfStopBgdAnim),
- OPCODE(sfNull),
+ OPCODE(sfLockUser),
OPCODE(sfPreDialog),
OPCODE(sfKillActorThreads),
OPCODE(sfFaceTowards),