diff options
author | Johannes Schickel | 2008-05-08 22:10:34 +0000 |
---|---|---|
committer | Johannes Schickel | 2008-05-08 22:10:34 +0000 |
commit | bdadf34f16cc0f271151e6e7f0438bf5ed48df8d (patch) | |
tree | 397ff022ec61d7783904b645e0095bbae4cf1844 /engines | |
parent | b53fe83695318a4e5545185a4fe7e7daa77f2bed (diff) | |
download | scummvm-rg350-bdadf34f16cc0f271151e6e7f0438bf5ed48df8d.tar.gz scummvm-rg350-bdadf34f16cc0f271151e6e7f0438bf5ed48df8d.tar.bz2 scummvm-rg350-bdadf34f16cc0f271151e6e7f0438bf5ed48df8d.zip |
Implemented opcode 66: o3_removeItemSlot.
svn-id: r31957
Diffstat (limited to 'engines')
-rw-r--r-- | engines/kyra/kyra_mr.h | 1 | ||||
-rw-r--r-- | engines/kyra/script_mr.cpp | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/engines/kyra/kyra_mr.h b/engines/kyra/kyra_mr.h index 3dba3ec8d9..588154ca3b 100644 --- a/engines/kyra/kyra_mr.h +++ b/engines/kyra/kyra_mr.h @@ -548,6 +548,7 @@ private: int o3_drawSceneShapeOnPage(EMCState *script); int o3_checkInRect(EMCState *script); int o3_updateConversations(EMCState *script); + int o3_removeItemSlot(EMCState *script); int o3_setSceneDim(EMCState *script); int o3_setSceneAnimPosAndFrame(EMCState *script); int o3_removeItemInstances(EMCState *script); diff --git a/engines/kyra/script_mr.cpp b/engines/kyra/script_mr.cpp index 68f9a7812f..6cbe58c0c1 100644 --- a/engines/kyra/script_mr.cpp +++ b/engines/kyra/script_mr.cpp @@ -588,6 +588,13 @@ int KyraEngine_MR::o3_updateConversations(EMCState *script) { return 1; } +int KyraEngine_MR::o3_removeItemSlot(EMCState *script) { + debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_removeItemSlot(%p) (%d)", (const void *)script, stackPos(0)); + deleteItemAnimEntry(stackPos(0)); + _itemList[stackPos(0)].id = 0xFFFF; + return 1; +} + int KyraEngine_MR::o3_setSceneDim(EMCState *script) { debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_setSceneDim(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1)); _sceneMinX = stackPos(0); @@ -1220,7 +1227,7 @@ void KyraEngine_MR::setupOpcodeTable() { // 0x40 Opcode(o3_checkInRect); Opcode(o3_updateConversations); - OpcodeUnImpl(); + Opcode(o3_removeItemSlot); Opcode(o3_dummy); // 0x44 Opcode(o3_dummy); |