diff options
-rw-r--r-- | engines/titanic/npcs/bellbot.cpp | 3 | ||||
-rw-r--r-- | engines/titanic/npcs/callbot.cpp | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/engines/titanic/npcs/bellbot.cpp b/engines/titanic/npcs/bellbot.cpp index 270e237213..002af21e9b 100644 --- a/engines/titanic/npcs/bellbot.cpp +++ b/engines/titanic/npcs/bellbot.cpp @@ -24,6 +24,7 @@ #include "titanic/carry/carry.h" #include "titanic/core/room_item.h" #include "titanic/pet_control/pet_control.h" +#include "titanic/titanic.h" namespace Titanic { @@ -89,6 +90,7 @@ bool CBellBot::OnSummonBotMsg(COnSummonBotMsg *msg) { _npcFlags &= ~NPCFLAG_MOVE_LOOP; } + getGameManager()->_gameState.setMode(GSMODE_CUTSCENE); playClip("Walk On", MOVIE_NOTIFY_OBJECT | MOVIE_WAIT_FOR_FINISH); movieEvent(); _npcFlags |= NPCFLAG_MOVING; @@ -111,6 +113,7 @@ bool CBellBot::MovieEndMsg(CMovieEndMsg *msg) { if (!(_npcFlags & NPCFLAG_MOVING)) { CTrueTalkNPC::MovieEndMsg(msg); } else if (clipExistsByEnd("Walk On", msg->_endFrame)) { + getGameManager()->_gameState.setMode(GSMODE_INTERACTIVE); setPosition(Point(80, 10)); loadFrame(543); _npcFlags |= NPCFLAG_START_IDLING; diff --git a/engines/titanic/npcs/callbot.cpp b/engines/titanic/npcs/callbot.cpp index 0979fa46f6..a5e8542db0 100644 --- a/engines/titanic/npcs/callbot.cpp +++ b/engines/titanic/npcs/callbot.cpp @@ -22,6 +22,7 @@ #include "titanic/npcs/callbot.h" #include "titanic/core/room_item.h" +#include "titanic/titanic.h" namespace Titanic { @@ -59,10 +60,15 @@ bool CCallBot::EnterViewMsg(CEnterViewMsg *msg) { CRoomItem *room = getRoom(); if (room) { + CGameState &gs = getGameManager()->_gameState; + gs.setMode(GSMODE_CUTSCENE); + CSummonBotQueryMsg queryMsg; queryMsg._npcName = _npcName; if (queryMsg.execute(room)) petOnSummonBot(_npcName, 0); + + gs.setMode(GSMODE_INTERACTIVE); } _enabled = false; |