[Scummvm-cvs-logs] SF.net SVN: scummvm: [31859] scummvm/trunk/engines/kyra
lordhoto at users.sourceforge.net
lordhoto at users.sourceforge.net
Sun May 4 15:07:13 CEST 2008
Revision: 31859
http://scummvm.svn.sourceforge.net/scummvm/?rev=31859&view=rev
Author: lordhoto
Date: 2008-05-04 06:07:13 -0700 (Sun, 04 May 2008)
Log Message:
-----------
Moved more opcodes to KyraEngine_v2.
Modified Paths:
--------------
scummvm/trunk/engines/kyra/animator_mr.cpp
scummvm/trunk/engines/kyra/kyra_hof.cpp
scummvm/trunk/engines/kyra/kyra_hof.h
scummvm/trunk/engines/kyra/kyra_mr.h
scummvm/trunk/engines/kyra/kyra_v2.h
scummvm/trunk/engines/kyra/saveload_hof.cpp
scummvm/trunk/engines/kyra/saveload_mr.cpp
scummvm/trunk/engines/kyra/script_hof.cpp
scummvm/trunk/engines/kyra/script_mr.cpp
scummvm/trunk/engines/kyra/script_v2.cpp
scummvm/trunk/engines/kyra/text_hof.cpp
scummvm/trunk/engines/kyra/text_mr.cpp
Modified: scummvm/trunk/engines/kyra/animator_mr.cpp
===================================================================
--- scummvm/trunk/engines/kyra/animator_mr.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/animator_mr.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -415,7 +415,7 @@
return;
if (!_nextIdleType && !talkObjectsInCurScene()) {
- malcolmRandomChat();
+ randomSceneChat();
} else {
static const char *facingTable[] = {
"A", "R", "R", "FR", "FX", "FL", "L", "L"
Modified: scummvm/trunk/engines/kyra/kyra_hof.cpp
===================================================================
--- scummvm/trunk/engines/kyra/kyra_hof.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/kyra_hof.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -129,7 +129,7 @@
_conversationState[i] = new int8[14];
_npcTalkChpIndex = _npcTalkDlgIndex = -1;
_mainCharacter.dlgIndex = 0;
- setNewDlgIndex(-1);
+ setDlgIndex(-1);
_bookMaxPage = 6;
_bookCurPage = 0;
@@ -1470,7 +1470,7 @@
static bool scriptAnimation = false;
if (!scriptAnimation && _flags.isTalkie) {
scriptAnimation = true;
- zanthRandomIdleChat();
+ randomSceneChat();
} else {
scriptAnimation = false;
if (_characterShapeFile > 8)
Modified: scummvm/trunk/engines/kyra/kyra_hof.h
===================================================================
--- scummvm/trunk/engines/kyra/kyra_hof.h 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/kyra_hof.h 2008-05-04 13:07:13 UTC (rev 31859)
@@ -605,12 +605,12 @@
void startDialogue(int dlgIndex);
void zanthSceneStartupChat();
- void zanthRandomIdleChat();
+ void randomSceneChat();
void updateDlgBuffer();
void loadDlgHeader(int &csEntry, int &vocH, int &scIndex1, int &scIndex2);
void processDialogue(int dlgOffset, int vocH = 0, int csEntry = 0);
void npcChatSequence(const char *str, int objectId, int vocHigh = -1, int vocLow = -1);
- void setNewDlgIndex(int dlgIndex);
+ void setDlgIndex(int dlgIndex);
int _npcTalkChpIndex;
int _npcTalkDlgIndex;
@@ -731,7 +731,6 @@
int o2_checkForItem(EMCState *script);
int o2_loadSoundFile(EMCState *script);
int o2_removeItemSlotFromInventory(EMCState *script);
- int o2_defineItem(EMCState *script);
int o2_removeItemFromInventory(EMCState *script);
int o2_countItemInInventory(EMCState *script);
int o2_countItemsInScene(EMCState *script);
@@ -758,15 +757,13 @@
int o2_restoreInventoryGfx(EMCState *script);
int o2_setSceneAnimPos2(EMCState *script);
int o2_fadeScenePal(EMCState *script);
- int o2_enterNewSceneEx(EMCState *script);
+ int o2_enterNewScene(EMCState *script);
int o2_switchScene(EMCState *script);
- int o2_getShapeFlag1(EMCState *script);
int o2_setPathfinderFlag(EMCState *script);
int o2_getSceneExitToFacing(EMCState *script);
int o2_setLayerFlag(EMCState *script);
int o2_setZanthiaPos(EMCState *script);
int o2_loadMusicTrack(EMCState *script);
- int o2_playWanderScoreViaMap(EMCState *script);
int o2_playSoundEffect(EMCState *script);
int o2_setSceneAnimPos(EMCState *script);
int o2_blockInRegion(EMCState *script);
@@ -784,9 +781,6 @@
int o2_addToSceneAnimPosAndUpdate(EMCState *script);
int o2_useItemOnMainChar(EMCState *script);
int o2_startDialogue(EMCState *script);
- int o2_zanthRandomChat(EMCState *script);
- int o2_setupDialogue(EMCState *script);
- int o2_getDlgIndex(EMCState *script);
int o2_addCauldronStateTableEntry(EMCState *script);
int o2_setCountDown(EMCState *script);
int o2_getCountDown(EMCState *script);
Modified: scummvm/trunk/engines/kyra/kyra_mr.h
===================================================================
--- scummvm/trunk/engines/kyra/kyra_mr.h 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/kyra_mr.h 2008-05-04 13:07:13 UTC (rev 31859)
@@ -405,7 +405,7 @@
byte _newSceneDlgState[40];
int8 _conversationState[30][30];
bool _chatAltFlag;
- void setDlgIndex(uint16 index);
+ void setDlgIndex(int index);
void updateDlgIndex();
Common::SeekableReadStream *_cnvFile;
@@ -434,7 +434,7 @@
int o3d_updateAnim(EMCState *script);
int o3d_delay(EMCState *script);
- void malcolmRandomChat();
+ void randomSceneChat();
void runDialog(int dlgIndex, int funcNum);
// conscience
@@ -521,7 +521,6 @@
int o3_objectChat(EMCState *script);
int o3_checkForItem(EMCState *script);
int o3_resetInventory(EMCState *script);
- int o3_defineItem(EMCState *script);
int o3_removeInventoryItemInstances(EMCState *script);
int o3_countInventoryItemInstances(EMCState *script);
int o3_npcChatSequence(EMCState *script);
@@ -544,10 +543,8 @@
int o3_enableInventory(EMCState *script);
int o3_enterNewScene(EMCState *script);
int o3_switchScene(EMCState *script);
- int o3_getShapeFlag1(EMCState *script);
int o3_setMalcolmPos(EMCState *script);
int o3_stopMusic(EMCState *script);
- int o3_playWanderScoreViaMap(EMCState *script);
int o3_playSoundEffect(EMCState *script);
int o3_getScore(EMCState *script);
int o3_blockOutRegion(EMCState *script);
@@ -559,9 +556,6 @@
int o3_updateSceneAnim(EMCState *script);
int o3_runActorScript(EMCState *script);
int o3_runDialog(EMCState *script);
- int o3_malcolmRandomChat(EMCState *script);
- int o3_setDlgIndex(EMCState *script);
- int o3_getDlgIndex(EMCState *script);
int o3_setConversationState(EMCState *script);
int o3_getConversationState(EMCState *script);
int o3_changeChapter(EMCState *script);
Modified: scummvm/trunk/engines/kyra/kyra_v2.h
===================================================================
--- scummvm/trunk/engines/kyra/kyra_v2.h 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/kyra_v2.h 2008-05-04 13:07:13 UTC (rev 31859)
@@ -310,7 +310,7 @@
// character
struct Character {
uint16 sceneId;
- uint16 dlgIndex;
+ int16 dlgIndex;
uint8 height;
uint8 facing;
uint16 animFrame;
@@ -347,6 +347,10 @@
EMCData _chatScriptData;
EMCState _chatScriptState;
+ virtual void setDlgIndex(int dlgIndex) = 0;
+
+ virtual void randomSceneChat() = 0;
+
// unknown
int _unk3, _unk4, _unk5;
bool _unkSceneScreenFlag1;
@@ -359,6 +363,7 @@
int o2_getCharacterScene(EMCState *script);
int o2_trySceneChange(EMCState *script);
int o2_moveCharacter(EMCState *script);
+ int o2_defineItem(EMCState *script);
int o2_queryGameFlag(EMCState *script);
int o2_resetGameFlag(EMCState *script);
int o2_setGameFlag(EMCState *script);
@@ -371,9 +376,14 @@
int o2_showMouse(EMCState *script);
int o2_delay(EMCState *script);
int o2_update(EMCState *script);
+ int o2_getShapeFlag1(EMCState *script);
+ int o2_playWanderScoreViaMap(EMCState *script);
int o2_getRand(EMCState *script);
int o2_setDeathHandler(EMCState *script);
int o2_waitForConfirmationClick(EMCState *script);
+ int o2_randomSceneChat(EMCState *script);
+ int o2_setDlgIndex(EMCState *script);
+ int o2_getDlgIndex(EMCState *script);
int o2_defineRoomEntrance(EMCState *script);
int o2_runAnimationScript(EMCState *script);
int o2_setSpecialSceneScriptRunTime(EMCState *script);
Modified: scummvm/trunk/engines/kyra/saveload_hof.cpp
===================================================================
--- scummvm/trunk/engines/kyra/saveload_hof.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/saveload_hof.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -73,7 +73,7 @@
out->writeSint16BE(_cauldronUseCount);
out->writeUint16BE(_mainCharacter.sceneId);
- out->writeUint16BE(_mainCharacter.dlgIndex);
+ out->writeSint16BE(_mainCharacter.dlgIndex);
out->writeByte(_mainCharacter.height);
out->writeByte(_mainCharacter.facing);
out->writeUint16BE(_mainCharacter.animFrame);
@@ -205,7 +205,7 @@
in.seek(6, SEEK_CUR);
_mainCharacter.sceneId = in.readUint16();
- _mainCharacter.dlgIndex = in.readUint16();
+ _mainCharacter.dlgIndex = in.readSint16();
_mainCharacter.height = in.readByte();
_mainCharacter.facing = in.readByte();
_mainCharacter.animFrame = in.readUint16();
Modified: scummvm/trunk/engines/kyra/saveload_mr.cpp
===================================================================
--- scummvm/trunk/engines/kyra/saveload_mr.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/saveload_mr.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -60,7 +60,7 @@
out->write(_scoreFlagTable, sizeof(_scoreFlagTable));
out->writeUint16BE(_mainCharacter.sceneId);
- out->writeUint16BE(_mainCharacter.dlgIndex);
+ out->writeSint16BE(_mainCharacter.dlgIndex);
out->writeByte(_mainCharacter.height);
out->writeByte(_mainCharacter.facing);
out->writeUint16BE(_mainCharacter.animFrame);
@@ -169,7 +169,7 @@
in.read(_scoreFlagTable, sizeof(_scoreFlagTable));
_mainCharacter.sceneId = in.readUint16();
- _mainCharacter.dlgIndex = in.readUint16();
+ _mainCharacter.dlgIndex = in.readSint16();
_mainCharacter.height = in.readByte();
_mainCharacter.facing = in.readByte();
_mainCharacter.animFrame = in.readUint16();
Modified: scummvm/trunk/engines/kyra/script_hof.cpp
===================================================================
--- scummvm/trunk/engines/kyra/script_hof.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/script_hof.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -426,21 +426,6 @@
return 0;
}
-int KyraEngine_HoF::o2_defineItem(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_defineItem(%p) (%d, %d, %d, %d)", (const void *)script,
- stackPos(0), stackPos(1), stackPos(2), stackPos(3));
- int freeItem = findFreeItem();
-
- if (freeItem >= 0) {
- _itemList[freeItem].id = stackPos(0);
- _itemList[freeItem].x = stackPos(1);
- _itemList[freeItem].y = stackPos(2);
- _itemList[freeItem].sceneId = stackPos(3);
- }
-
- return freeItem;
-}
-
int KyraEngine_HoF::o2_removeItemFromInventory(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_removeItemFromInventory(%p) (%d)", (const void *)script, stackPos(0));
uint16 item = stackPos(0);
@@ -670,8 +655,8 @@
return 0;
}
-int KyraEngine_HoF::o2_enterNewSceneEx(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_enterNewSceneEx(%p) (%d, %d, %d, %d, %d)", (const void *)script, stackPos(0),
+int KyraEngine_HoF::o2_enterNewScene(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_enterNewScene(%p) (%d, %d, %d, %d, %d)", (const void *)script, stackPos(0),
stackPos(1), stackPos(2), stackPos(3), stackPos(4));
int skipNpcScript = stackPos(3);
@@ -701,11 +686,6 @@
return 0;
}
-int KyraEngine_HoF::o2_getShapeFlag1(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_getShapeFlag1(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
- return _screen->getShapeFlag1(stackPos(0), stackPos(1));
-}
-
int KyraEngine_HoF::o2_setPathfinderFlag(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_setPathfinderFlag(%p) (%d)", (const void *)script, stackPos(0));
_pathfinderFlag = stackPos(0);
@@ -755,12 +735,6 @@
return 0;
}
-int KyraEngine_HoF::o2_playWanderScoreViaMap(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_playWanderScoreViaMap(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
- snd_playWanderScoreViaMap(stackPos(0), stackPos(1));
- return 0;
-}
-
int KyraEngine_HoF::o2_playSoundEffect(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_playSoundEffect(%p) (%d)", (const void *)script, stackPos(0));
snd_playSoundEffect(stackPos(0));
@@ -1000,23 +974,6 @@
return 0;
}
-int KyraEngine_HoF::o2_zanthRandomChat(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_zanthRandomChat(%p)", (const void *)script);
- zanthRandomIdleChat();
- return 0;
-}
-
-int KyraEngine_HoF::o2_setupDialogue(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_setupDialogue(%p) (%d)", (const void *)script, stackPos(0));
- setNewDlgIndex(stackPos(0));
- return 0;
-}
-
-int KyraEngine_HoF::o2_getDlgIndex(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_setNewDlgIndex(%p) (%d)", (const void *)script, stackPos(0));
- return _mainCharacter.dlgIndex;
-}
-
int KyraEngine_HoF::o2_addCauldronStateTableEntry(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_HoF::o2_addCauldronStateTableEntry(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
return addToCauldronStateTable(stackPos(0), stackPos(1)) ? 1 : 0;
@@ -1656,7 +1613,7 @@
Opcode(o2_dummy);
Opcode(o2_dummy);
// 0x50
- Opcode(o2_enterNewSceneEx);
+ Opcode(o2_enterNewScene);
Opcode(o2_switchScene);
Opcode(o2_getShapeFlag1);
Opcode(o2_setPathfinderFlag);
@@ -1703,8 +1660,8 @@
// 0x74
Opcode(o2_useItemOnMainChar);
Opcode(o2_startDialogue);
- Opcode(o2_zanthRandomChat);
- Opcode(o2_setupDialogue);
+ Opcode(o2_randomSceneChat);
+ Opcode(o2_setDlgIndex);
// 0x78
Opcode(o2_getDlgIndex);
Opcode(o2_defineScene);
Modified: scummvm/trunk/engines/kyra/script_mr.cpp
===================================================================
--- scummvm/trunk/engines/kyra/script_mr.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/script_mr.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -217,18 +217,6 @@
return 0;
}
-int KyraEngine_MR::o3_defineItem(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_defineItem(%p) (%d, %d, %d, %d)", (const void *)script, stackPos(0), stackPos(1), stackPos(2), stackPos(3));
- int freeItem = findFreeItem();
- if (freeItem != -1) {
- _itemList[freeItem].id = stackPos(0);
- _itemList[freeItem].x = stackPos(1);
- _itemList[freeItem].y = stackPos(2);
- _itemList[freeItem].sceneId = stackPos(3);
- }
- return freeItem;
-}
-
int KyraEngine_MR::o3_removeInventoryItemInstances(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_removeInventoryItemInstances(%p) (%d)", (const void *)script, stackPos(0));
const int item = stackPos(0);
@@ -717,11 +705,6 @@
return 0;
}
-int KyraEngine_MR::o3_getShapeFlag1(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_getShapeFlag1(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
- return _screen->getShapeFlag1(stackPos(0), stackPos(1));
-}
-
int KyraEngine_MR::o3_setMalcolmPos(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_setMalcolmPos(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
_mainCharX = stackPos(0);
@@ -741,12 +724,6 @@
return 0;
}
-int KyraEngine_MR::o3_playWanderScoreViaMap(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_playWanderScoreViaMap(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
- snd_playWanderScoreViaMap(stackPos(0), stackPos(1));
- return 0;
-}
-
int KyraEngine_MR::o3_playSoundEffect(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_playSoundEffect(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
snd_playSoundEffect(stackPos(0), stackPos(1));
@@ -902,23 +879,6 @@
return 0;
}
-int KyraEngine_MR::o3_malcolmRandomChat(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_malcolmRandomChat(%p) ()", (const void *)script);
- malcolmRandomChat();
- return 0;
-}
-
-int KyraEngine_MR::o3_setDlgIndex(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_setDlgIndex(%p) (%d)", (const void *)script, stackPos(0));
- setDlgIndex(stackPos(0));
- return 0;
-}
-
-int KyraEngine_MR::o3_getDlgIndex(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_getDlgIndex(%p) ()", (const void *)script);
- return _mainCharacter.dlgIndex;
-}
-
int KyraEngine_MR::o3_setConversationState(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_MR::o3_setConversationState(%p) (%d, %d, %d)", (const void *)script, stackPos(0), stackPos(1), stackPos(2));
int id = stackPos(0);
@@ -1167,7 +1127,7 @@
Opcode(o3_checkForItem);
Opcode(o3_dummy);
Opcode(o3_resetInventory);
- Opcode(o3_defineItem);
+ Opcode(o2_defineItem);
// 0x24
Opcode(o3_removeInventoryItemInstances);
Opcode(o3_countInventoryItemInstances);
@@ -1226,7 +1186,7 @@
// 0x50
Opcode(o3_enterNewScene);
Opcode(o3_switchScene);
- Opcode(o3_getShapeFlag1);
+ Opcode(o2_getShapeFlag1);
Opcode(o3_dummy);
// 0x54
Opcode(o3_dummy);
@@ -1234,7 +1194,7 @@
Opcode(o3_setMalcolmPos);
Opcode(o3_stopMusic);
// 0x58
- Opcode(o3_playWanderScoreViaMap);
+ Opcode(o2_playWanderScoreViaMap);
Opcode(o3_playSoundEffect);
Opcode(o3_getScore);
OpcodeUnImpl();
@@ -1271,10 +1231,10 @@
// 0x74
Opcode(o3_runActorScript);
Opcode(o3_runDialog);
- Opcode(o3_malcolmRandomChat);
- Opcode(o3_setDlgIndex);
+ Opcode(o2_randomSceneChat);
+ Opcode(o2_setDlgIndex);
// 0x78
- Opcode(o3_getDlgIndex);
+ Opcode(o2_getDlgIndex);
Opcode(o2_defineScene);
Opcode(o3_setConversationState);
OpcodeUnImpl();
Modified: scummvm/trunk/engines/kyra/script_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/script_v2.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/script_v2.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -76,6 +76,21 @@
return 0;
}
+int KyraEngine_v2::o2_defineItem(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_defineItem(%p) (%d, %d, %d, %d)", (const void *)script,
+ stackPos(0), stackPos(1), stackPos(2), stackPos(3));
+ int freeItem = findFreeItem();
+
+ if (freeItem >= 0) {
+ _itemList[freeItem].id = stackPos(0);
+ _itemList[freeItem].x = stackPos(1);
+ _itemList[freeItem].y = stackPos(2);
+ _itemList[freeItem].sceneId = stackPos(3);
+ }
+
+ return freeItem;
+}
+
int KyraEngine_v2::o2_queryGameFlag(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_queryGameFlag(%p) (%d)", (const void *)script, stackPos(0));
return queryGameFlag(stackPos(0));
@@ -174,6 +189,17 @@
return 0;
}
+int KyraEngine_v2::o2_getShapeFlag1(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_getShapeFlag1(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
+ return screen()->getShapeFlag1(stackPos(0), stackPos(1));
+}
+
+int KyraEngine_v2::o2_playWanderScoreViaMap(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_playWanderScoreViaMap(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
+ snd_playWanderScoreViaMap(stackPos(0), stackPos(1));
+ return 0;
+}
+
int KyraEngine_v2::o2_getRand(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_getRand(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
assert(stackPos(0) < stackPos(1));
@@ -210,6 +236,24 @@
return 1;
}
+int KyraEngine_v2::o2_randomSceneChat(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_randomSceneChat(%p)", (const void *)script);
+ randomSceneChat();
+ return 0;
+}
+
+int KyraEngine_v2::o2_setDlgIndex(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_setDlgIndex(%p) (%d)", (const void *)script, stackPos(0));
+ setDlgIndex(stackPos(0));
+ return 0;
+}
+
+int KyraEngine_v2::o2_getDlgIndex(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_getDlgIndex(%p) ()", (const void *)script);
+ return _mainCharacter.dlgIndex;
+}
+
+
int KyraEngine_v2::o2_defineRoomEntrance(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v2::o2_defineRoomEntrance(%p) (%d, %d, %d)", (const void *)script, stackPos(0), stackPos(1), stackPos(2));
switch (stackPos(0)) {
Modified: scummvm/trunk/engines/kyra/text_hof.cpp
===================================================================
--- scummvm/trunk/engines/kyra/text_hof.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/text_hof.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -412,7 +412,7 @@
_newSceneDlgState[tableIndex] = 1;
}
-void KyraEngine_HoF::zanthRandomIdleChat() {
+void KyraEngine_HoF::randomSceneChat() {
int lowest = _flags.isTalkie ? 6 : 5;
int tableIndex = (_mainCharacter.sceneId - READ_LE_UINT16(&_ingameTalkObjIndex[lowest + _newChapterFile])) << 2;
if (queryGameFlag(0x164))
@@ -512,7 +512,7 @@
} else if (cmd == 4) {
csEntry = READ_LE_UINT16(_dlgBuffer + offs);
- setNewDlgIndex(csEntry);
+ setDlgIndex(csEntry);
offs += 2;
} else {
@@ -677,7 +677,7 @@
setNextIdleAnimTimer();
}
-void KyraEngine_HoF::setNewDlgIndex(int dlgIndex) {
+void KyraEngine_HoF::setDlgIndex(int dlgIndex) {
if (dlgIndex == _mainCharacter.dlgIndex)
return;
memset(_newSceneDlgState, 0, 32);
Modified: scummvm/trunk/engines/kyra/text_mr.cpp
===================================================================
--- scummvm/trunk/engines/kyra/text_mr.cpp 2008-05-04 10:15:47 UTC (rev 31858)
+++ scummvm/trunk/engines/kyra/text_mr.cpp 2008-05-04 13:07:13 UTC (rev 31859)
@@ -556,10 +556,10 @@
index2 = _cnvFile->readSint16LE();
}
-void KyraEngine_MR::setDlgIndex(uint16 index) {
+void KyraEngine_MR::setDlgIndex(int index) {
debugC(9, kDebugLevelMain, "KyraEngine_MR::setDlgIndex(%d)", index);
if (_mainCharacter.dlgIndex != index) {
- Common::set_to(_newSceneDlgState, _newSceneDlgState+ARRAYSIZE(_newSceneDlgState), 0);
+ memset(_newSceneDlgState, 0, sizeof(_newSceneDlgState));
memset(_conversationState, -1, sizeof(_conversationState));
_chatAltFlag = false;
_mainCharacter.dlgIndex = index;
@@ -746,8 +746,8 @@
_chatObject= - 1;
}
-void KyraEngine_MR::malcolmRandomChat() {
- debugC(9, kDebugLevelMain, "KyraEngine_MR::malcolmRandomChat()");
+void KyraEngine_MR::randomSceneChat() {
+ debugC(9, kDebugLevelMain, "KyraEngine_MR::randomSceneChat()");
updateDlgBuffer();
int index = (_mainCharacter.sceneId - _chapterLowestScene[_currentChapter]) * 2;
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