diff options
author | Paul Gilbert | 2016-10-24 20:30:18 -0400 |
---|---|---|
committer | Paul Gilbert | 2016-10-24 20:30:18 -0400 |
commit | 1c370c96449f93c7f99308b643a891aa02c2ca0e (patch) | |
tree | 10a357a15affd194fb6a48dbeef7591228431029 | |
parent | 0a03c986a21ed8fe271d33cbb37f0e2a16e52224 (diff) | |
download | scummvm-rg350-1c370c96449f93c7f99308b643a891aa02c2ca0e.tar.gz scummvm-rg350-1c370c96449f93c7f99308b643a891aa02c2ca0e.tar.bz2 scummvm-rg350-1c370c96449f93c7f99308b643a891aa02c2ca0e.zip |
TITANIC: Add conversation text to the PET
-rw-r--r-- | engines/titanic/npcs/doorbot.cpp | 19 | ||||
-rw-r--r-- | engines/titanic/npcs/true_talk_npc.h | 2 | ||||
-rw-r--r-- | engines/titanic/true_talk/tt_talker.cpp | 1 |
3 files changed, 12 insertions, 10 deletions
diff --git a/engines/titanic/npcs/doorbot.cpp b/engines/titanic/npcs/doorbot.cpp index e5f18f6a0d..d26f4bb828 100644 --- a/engines/titanic/npcs/doorbot.cpp +++ b/engines/titanic/npcs/doorbot.cpp @@ -81,7 +81,7 @@ void CDoorbot::load(SimpleFile *file) { } bool CDoorbot::MovieEndMsg(CMovieEndMsg *msg) { - if (_npcFlags & NPCFLAG_8000000) { + if (_npcFlags & NPCFLAG_DOORBOT_INTRO) { switch (_field108) { case 3: startTalking(this, 221482); @@ -121,7 +121,7 @@ bool CDoorbot::MovieEndMsg(CMovieEndMsg *msg) { _npcFlags = (_npcFlags & ~NPCFLAG_8) | NPCFLAG_4; endTalking(this, false); startTalking(this, 221474); - _npcFlags |= NPCFLAG_8000000; + _npcFlags |= NPCFLAG_DOORBOT_INTRO; _field108 = 0; } else if (clipExistsByEnd("Cloak On", msg->_endFrame)) { petShow(); @@ -226,7 +226,7 @@ bool CDoorbot::DoorbotNeededInElevatorMsg(CDoorbotNeededInElevatorMsg *msg) { moveToView("ServiceElevator.Node 1.N"); setPosition(Point(100, 42)); - if (_npcFlags & NPCFLAG_8000000) { + if (_npcFlags & NPCFLAG_DOORBOT_INTRO) { _field108 = 7; _npcFlags |= NPCFLAG_200000; loadFrame(797); @@ -240,7 +240,7 @@ bool CDoorbot::DoorbotNeededInElevatorMsg(CDoorbotNeededInElevatorMsg *msg) { } bool CDoorbot::LeaveViewMsg(CLeaveViewMsg *msg) { - if (!(_npcFlags & NPCFLAG_8000000) && (_npcFlags & NPCFLAG_400000)) { + if (!(_npcFlags & NPCFLAG_DOORBOT_INTRO) && (_npcFlags & NPCFLAG_400000)) { performAction(true); _npcFlags &= ~NPCFLAG_4; } @@ -251,7 +251,7 @@ bool CDoorbot::LeaveViewMsg(CLeaveViewMsg *msg) { bool CDoorbot::TimerMsg(CTimerMsg *msg) { if (msg->_action == "NPCIdleAnim") { return CTrueTalkNPC::TimerMsg(msg); - } else if (_npcFlags & NPCFLAG_8000000) { + } else if (_npcFlags & NPCFLAG_DOORBOT_INTRO) { switch (msg->_actionVal) { case 0: startTalking(this, 221475); @@ -362,7 +362,7 @@ bool CDoorbot::NPCPlayIdleAnimationMsg(CNPCPlayIdleAnimationMsg *msg) { bool CDoorbot::PutBotBackInHisBoxMsg(CPutBotBackInHisBoxMsg *msg) { petMoveToHiddenRoom(); - _npcFlags &= ~(NPCFLAG_4 | NPCFLAG_100000 | NPCFLAG_200000 | NPCFLAG_8000000); + _npcFlags &= ~(NPCFLAG_4 | NPCFLAG_100000 | NPCFLAG_200000 | NPCFLAG_DOORBOT_INTRO); if (msg->_value) performAction(true); @@ -404,7 +404,8 @@ bool CDoorbot::MovieFrameMsg(CMovieFrameMsg *msg) { bool CDoorbot::TrueTalkNotifySpeechEndedMsg(CTrueTalkNotifySpeechEndedMsg *msg) { CTrueTalkNPC::TrueTalkNotifySpeechEndedMsg(msg); - if (_npcFlags & NPCFLAG_8000000) { + if (_npcFlags & NPCFLAG_DOORBOT_INTRO) { + // Initial speech by Doorbot in switch (msg->_dialogueId) { case 10552: playClip("SE Try Buttons", MOVIE_NOTIFY_OBJECT); @@ -508,7 +509,7 @@ bool CDoorbot::TrueTalkNotifySpeechEndedMsg(CTrueTalkNotifySpeechEndedMsg *msg) } bool CDoorbot::TextInputMsg(CTextInputMsg *msg) { - if (!(_npcFlags & NPCFLAG_8000000)) + if (!(_npcFlags & NPCFLAG_DOORBOT_INTRO)) return CTrueTalkNPC::TextInputMsg(msg); if (_field108 == 1) { @@ -531,7 +532,7 @@ bool CDoorbot::TextInputMsg(CTextInputMsg *msg) { } bool CDoorbot::EnterViewMsg(CEnterViewMsg *msg) { - if ((_npcFlags & NPCFLAG_8000000) && _field108 == 7) + if ((_npcFlags & NPCFLAG_DOORBOT_INTRO) && _field108 == 7) playClip("SE Move And Turn", MOVIE_NOTIFY_OBJECT); return true; diff --git a/engines/titanic/npcs/true_talk_npc.h b/engines/titanic/npcs/true_talk_npc.h index 1e06e9c690..3adf055449 100644 --- a/engines/titanic/npcs/true_talk_npc.h +++ b/engines/titanic/npcs/true_talk_npc.h @@ -36,7 +36,7 @@ enum NpcFlag { NPCFLAG_100000 = 0x100000, NPCFLAG_200000 = 0x200000, NPCFLAG_400000 = 0x400000, NPCFLAG_800000 = 0x800000, NPCFLAG_1000000 = 0x1000000, NPCFLAG_2000000 = 0x2000000, - NPCFLAG_4000000 = 0x4000000, NPCFLAG_8000000 = 0x8000000 + NPCFLAG_4000000 = 0x4000000, NPCFLAG_DOORBOT_INTRO = 0x8000000 }; class CViewItem; diff --git a/engines/titanic/true_talk/tt_talker.cpp b/engines/titanic/true_talk/tt_talker.cpp index da7628f483..7e71bfcb77 100644 --- a/engines/titanic/true_talk/tt_talker.cpp +++ b/engines/titanic/true_talk/tt_talker.cpp @@ -27,6 +27,7 @@ namespace Titanic { void TTtalker::speechStarted(const CString &dialogueStr, uint dialogueId, uint speechHandle) { + _line = dialogueStr; _dialogueId = dialogueId; CTrueTalkNotifySpeechStartedMsg msg(speechHandle, dialogueId, 0); |