[Scummvm-cvs-logs] SF.net SVN: scummvm: [29180] scummvm/trunk/engines/kyra

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Tue Oct 9 11:15:12 CEST 2007


Revision: 29180
          http://scummvm.svn.sourceforge.net/scummvm/?rev=29180&view=rev
Author:   lordhoto
Date:     2007-10-09 02:15:12 -0700 (Tue, 09 Oct 2007)

Log Message:
-----------
HoF
- Implemented opcodes
  -> o2_switchScene 0x51
  -> o2_getShapeFlag1 0x52

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/kyra_v2.cpp
    scummvm/trunk/engines/kyra/kyra_v2.h
    scummvm/trunk/engines/kyra/script_v2.cpp

Modified: scummvm/trunk/engines/kyra/kyra_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/kyra_v2.cpp	2007-10-09 09:03:57 UTC (rev 29179)
+++ scummvm/trunk/engines/kyra/kyra_v2.cpp	2007-10-09 09:15:12 UTC (rev 29180)
@@ -1460,9 +1460,9 @@
 		Opcode(o2_dummy),
 		// 0x50
 		Opcode(o2_enterNewSceneEx),
+		Opcode(o2_switchScene),
+		Opcode(o2_getShapeFlag1),
 		OpcodeUnImpl(),
-		OpcodeUnImpl(),
-		OpcodeUnImpl(),
 		// 0x54
 		OpcodeUnImpl(),
 		Opcode(o2_setLayerFlag),

Modified: scummvm/trunk/engines/kyra/kyra_v2.h
===================================================================
--- scummvm/trunk/engines/kyra/kyra_v2.h	2007-10-09 09:03:57 UTC (rev 29179)
+++ scummvm/trunk/engines/kyra/kyra_v2.h	2007-10-09 09:15:12 UTC (rev 29180)
@@ -529,6 +529,8 @@
 	int o2_update(ScriptState *script);
 	int o2_fadeScenePal(ScriptState *script);
 	int o2_enterNewSceneEx(ScriptState *script);
+	int o2_switchScene(ScriptState *script);
+	int o2_getShapeFlag1(ScriptState *script);
 	int o2_setLayerFlag(ScriptState *script);
 	int o2_setZanthiaPos(ScriptState *script);
 	int o2_getRand(ScriptState *script);

Modified: scummvm/trunk/engines/kyra/script_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/script_v2.cpp	2007-10-09 09:03:57 UTC (rev 29179)
+++ scummvm/trunk/engines/kyra/script_v2.cpp	2007-10-09 09:15:12 UTC (rev 29180)
@@ -403,6 +403,22 @@
 	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);


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list