diff options
-rw-r--r-- | engines/titanic/carry/carry_parrot.cpp | 4 | ||||
-rw-r--r-- | engines/titanic/core/game_object.cpp | 8 | ||||
-rw-r--r-- | engines/titanic/core/game_object.h | 4 | ||||
-rw-r--r-- | engines/titanic/game/computer_screen.cpp | 4 | ||||
-rw-r--r-- | engines/titanic/true_talk/true_talk_manager.cpp | 6 | ||||
-rw-r--r-- | engines/titanic/true_talk/true_talk_manager.h | 2 |
6 files changed, 14 insertions, 14 deletions
diff --git a/engines/titanic/carry/carry_parrot.cpp b/engines/titanic/carry/carry_parrot.cpp index aa75688fab..d164e2ee46 100644 --- a/engines/titanic/carry/carry_parrot.cpp +++ b/engines/titanic/carry/carry_parrot.cpp @@ -169,7 +169,7 @@ bool CCarryParrot::PassOnDragStartMsg(CPassOnDragStartMsg *msg) { CTrueTalkNPC *npc = static_cast<CTrueTalkNPC *>(getRoot()->findByName(_string6)); if (npc) - startTalking(npc, 0x446BF, 0); + startTalking(npc, 0x446BF); _fieldE0 = 0; playSound("z#475.wav", 100, 0, 0); @@ -200,7 +200,7 @@ bool CCarryParrot::ActMsg(CActMsg *msg) { if (msg->_action == "FreeParrot" && (CParrot::_v4 == 4 || CParrot::_v4 == 1)) { CTrueTalkNPC *npc = static_cast<CTrueTalkNPC *>(getRoot()->findByName(_string6)); if (npc) - startTalking(npc, 0x446BF, 0); + startTalking(npc, 0x446BF); setVisible(false); _fieldE0 = 0; diff --git a/engines/titanic/core/game_object.cpp b/engines/titanic/core/game_object.cpp index ff7e2288f8..7cfcd338f6 100644 --- a/engines/titanic/core/game_object.cpp +++ b/engines/titanic/core/game_object.cpp @@ -707,17 +707,17 @@ void CGameObject::incState38() { getGameManager()->_gameState.inc38(); } -void CGameObject::startTalking(const CString &npcName, int val2, int val3) { +void CGameObject::startTalking(const CString &npcName, uint id, CViewItem *view) { CTrueTalkNPC *npc = static_cast<CTrueTalkNPC *>(getRoot()->findByName(npcName)); - startTalking(npc, val2, val3); + startTalking(npc, id, view); } -void CGameObject::startTalking(CTrueTalkNPC *npc, int val2, int val3) { +void CGameObject::startTalking(CTrueTalkNPC *npc, uint id, CViewItem *view) { CGameManager *gameManager = getGameManager(); if (gameManager) { CTrueTalkManager *talkManager = gameManager->getTalkManager(); if (talkManager) - talkManager->start(npc, val2, val3); + talkManager->start(npc, id, view); } } diff --git a/engines/titanic/core/game_object.h b/engines/titanic/core/game_object.h index 97d3ca45eb..4d2dca6860 100644 --- a/engines/titanic/core/game_object.h +++ b/engines/titanic/core/game_object.h @@ -220,12 +220,12 @@ protected: /** * Start a conversation with the NPC */ - void startTalking(const CString &name, int val2, int val3); + void startTalking(const CString &name, uint id, CViewItem *view = nullptr); /** * Start a conversation with the NPC */ - void startTalking(CTrueTalkNPC *npc, int val2, int val3); + void startTalking(CTrueTalkNPC *npc, uint id, CViewItem *view = nullptr); /** * Load the surface diff --git a/engines/titanic/game/computer_screen.cpp b/engines/titanic/game/computer_screen.cpp index 846858be0e..9d15ea903f 100644 --- a/engines/titanic/game/computer_screen.cpp +++ b/engines/titanic/game/computer_screen.cpp @@ -114,11 +114,11 @@ bool CComputerScreen::TimerMsg(CTimerMsg *msg) { playSound("y#662.wav"); soundFn3(handle, 10, 2); playClip(392, 450); - startTalking("Doorbot", 0x3611A, 0); + startTalking("Doorbot", 0x3611A); sleep(8000); playClip(450, 492); - startTalking("Doorbot", 0x36121, 0); + startTalking("Doorbot", 0x36121); playClip(492, 522); soundFn3(handle, 30, 2); diff --git a/engines/titanic/true_talk/true_talk_manager.cpp b/engines/titanic/true_talk/true_talk_manager.cpp index dc93bf438b..58d92539a5 100644 --- a/engines/titanic/true_talk/true_talk_manager.cpp +++ b/engines/titanic/true_talk/true_talk_manager.cpp @@ -201,7 +201,7 @@ void CTrueTalkManager::update2() { //warning("CTrueTalkManager::update2"); } -void CTrueTalkManager::start(CTrueTalkNPC *npc, int val2, int val3) { +void CTrueTalkManager::start(CTrueTalkNPC *npc, uint id, CViewItem *view) { TTNamedScript *npcScript = getNpcScript(npc); TTRoomScript *roomScript = getRoomScript(); @@ -210,10 +210,10 @@ void CTrueTalkManager::start(CTrueTalkNPC *npc, int val2, int val3) { loadAssets(npc, charId); _currentNPC = npc; - warning("TODO: CTrueTalkManager::start"); + _titleEngine._scriptHandler->setup(npcScript, roomScript, charId); _currentNPC = nullptr; - //TODO: More + setView(npcScript, roomScript, view); } TTNamedScript *CTrueTalkManager::getTalker(const CString &name) const { diff --git a/engines/titanic/true_talk/true_talk_manager.h b/engines/titanic/true_talk/true_talk_manager.h index 3c24ade6cb..c3c25a33e7 100644 --- a/engines/titanic/true_talk/true_talk_manager.h +++ b/engines/titanic/true_talk/true_talk_manager.h @@ -147,7 +147,7 @@ public: /** * Start a TrueTalk conversation */ - void start(CTrueTalkNPC *npc, int val2, int val3); + void start(CTrueTalkNPC *npc, uint id, CViewItem *view); /** * Return a TrueTalk talker/script |