aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/script_v2.cpp
diff options
context:
space:
mode:
authorJohannes Schickel2007-10-09 09:15:12 +0000
committerJohannes Schickel2007-10-09 09:15:12 +0000
commitca0161b76ad3f90e0fd340ecdfbeb75bee7db467 (patch)
tree4db7aeb3fcaa82e376c6c1c3647d4539518bdb62 /engines/kyra/script_v2.cpp
parent99efa084fe26a52fbcf1b9105eef0b39afe21924 (diff)
downloadscummvm-rg350-ca0161b76ad3f90e0fd340ecdfbeb75bee7db467.tar.gz
scummvm-rg350-ca0161b76ad3f90e0fd340ecdfbeb75bee7db467.tar.bz2
scummvm-rg350-ca0161b76ad3f90e0fd340ecdfbeb75bee7db467.zip
HoF
- Implemented opcodes -> o2_switchScene 0x51 -> o2_getShapeFlag1 0x52 svn-id: r29180
Diffstat (limited to 'engines/kyra/script_v2.cpp')
-rw-r--r--engines/kyra/script_v2.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/engines/kyra/script_v2.cpp b/engines/kyra/script_v2.cpp
index 9794844cc8..13b7b6ae6d 100644
--- a/engines/kyra/script_v2.cpp
+++ b/engines/kyra/script_v2.cpp
@@ -403,6 +403,22 @@ int KyraEngine_v2::o2_enterNewSceneEx(ScriptState *script) {
return 0;
}
+int KyraEngine_v2::o2_switchScene(ScriptState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "o2_switchScene(%p) (%d)", (const void *)script, stackPos(0));
+ setGameFlag(0x1EF);
+ _mainCharX = _mainCharacter.x1;
+ _mainCharY = _mainCharacter.y1;
+ _noScriptEnter = 0;
+ enterNewScene(stackPos(0), _mainCharacter.facing, 0, 0, 0);
+ _noScriptEnter = 1;
+ return 0;
+}
+
+int KyraEngine_v2::o2_getShapeFlag1(ScriptState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "o2_getShapeFlag1(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
+ return _screen->getShapeFlag1(stackPos(0), stackPos(1));
+}
+
int KyraEngine_v2::o2_setLayerFlag(ScriptState *script) {
debugC(3, kDebugLevelScriptFuncs, "o2_setLayerFlag(%p) (%d)", (const void *)script, stackPos(0));
int layer = stackPos(0);