aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra
diff options
context:
space:
mode:
authorJohannes Schickel2007-10-09 09:03:57 +0000
committerJohannes Schickel2007-10-09 09:03:57 +0000
commit99efa084fe26a52fbcf1b9105eef0b39afe21924 (patch)
treee0aa674c205d637e90a4c7c1192aceaf106d376b /engines/kyra
parentdd1b43a5a91da0051a32938807d7a7fa157caa2a (diff)
downloadscummvm-rg350-99efa084fe26a52fbcf1b9105eef0b39afe21924.tar.gz
scummvm-rg350-99efa084fe26a52fbcf1b9105eef0b39afe21924.tar.bz2
scummvm-rg350-99efa084fe26a52fbcf1b9105eef0b39afe21924.zip
HoF
- fixed o2_runTemporaryScript - fixed trySceneChange, now stopping movement should work correctly svn-id: r29179
Diffstat (limited to 'engines/kyra')
-rw-r--r--engines/kyra/scene_v2.cpp12
-rw-r--r--engines/kyra/script_v2.cpp2
2 files changed, 7 insertions, 7 deletions
diff --git a/engines/kyra/scene_v2.cpp b/engines/kyra/scene_v2.cpp
index b3b4e6e3b3..da0828057c 100644
--- a/engines/kyra/scene_v2.cpp
+++ b/engines/kyra/scene_v2.cpp
@@ -258,7 +258,12 @@ int KyraEngine_v2::trySceneChange(int *moveTable, int unk1, int updateChar) {
}
if (unk1) {
- //XXX
+ // TODO: check this again
+ int inputFlag = checkInput(0/*dword_324C5*/);
+ if (inputFlag == 198 || inputFlag == 199) {
+ running = false;
+ _unk4 = 1;
+ }
}
if (!unkFlag || !running)
@@ -273,11 +278,6 @@ int KyraEngine_v2::trySceneChange(int *moveTable, int unk1, int updateChar) {
if (ret)
++moveTable;
- // TODO: check this again
- int inputFlag = checkInput(0/*dword_324C5*/);
- if (inputFlag == 198 || inputFlag == 199)
- break;
-
++updateType;
if (!updateType) {
update();
diff --git a/engines/kyra/script_v2.cpp b/engines/kyra/script_v2.cpp
index 1e17aed3c5..9794844cc8 100644
--- a/engines/kyra/script_v2.cpp
+++ b/engines/kyra/script_v2.cpp
@@ -470,7 +470,7 @@ int KyraEngine_v2::o2_runTemporaryScript(ScriptState *script) {
debugC(3, kDebugLevelScriptFuncs, "o2_runTemporaryScript(%p) ('%s', %d, %d, %d)", (const void *)script, stackPosString(0), stackPos(1),
stackPos(2), stackPos(3));
- runTemporaryScript(stackPosString(0), stackPos(2) ? 1 : 0, stackPos(1), stackPos(2), stackPos(3));
+ runTemporaryScript(stackPosString(0), stackPos(3), stackPos(2) ? 1 : 0, stackPos(1), stackPos(2));
return 0;
}