TITANIC: Don't allow loading games when Bellbot is summoned

This commit is contained in:
Paul Gilbert 2017-08-04 22:57:36 -04:00
parent c393c1faa0
commit a851c3b185
2 changed files with 9 additions and 0 deletions

View file

@ -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;

View file

@ -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;