From fee937c6ef5a47d3fdb3dd33af16fee1928c2691 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Tue, 29 Mar 2016 23:08:37 -0400 Subject: TITANIC: Debugger command to turn PET on or off --- engines/titanic/debugger.cpp | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) (limited to 'engines/titanic/debugger.cpp') diff --git a/engines/titanic/debugger.cpp b/engines/titanic/debugger.cpp index 3bd2d0f134..84f961e607 100644 --- a/engines/titanic/debugger.cpp +++ b/engines/titanic/debugger.cpp @@ -27,9 +27,10 @@ namespace Titanic { Debugger::Debugger(TitanicEngine *vm) : GUI::Debugger(), _vm(vm) { - registerCmd("continue", WRAP_METHOD(Debugger, cmdExit)); - registerCmd("dump", WRAP_METHOD(Debugger, cmdDump)); - registerCmd("room", WRAP_METHOD(Debugger, cmdRoom)); + registerCmd("continue", WRAP_METHOD(Debugger, cmdExit)); + registerCmd("dump", WRAP_METHOD(Debugger, cmdDump)); + registerCmd("room", WRAP_METHOD(Debugger, cmdRoom)); + registerCmd("pet", WRAP_METHOD(Debugger, cmdPET)); } int Debugger::strToInt(const char *s) { @@ -181,4 +182,29 @@ bool Debugger::cmdRoom(int argc, const char **argv) { return true; } +bool Debugger::cmdPET(int argc, const char **argv) { + CGameManager &gameManager = *g_vm->_window->_gameManager; + CGameState &gameState = gameManager._gameState; + + if (argc == 2) { + CString s(argv[1]); + s.toLowercase(); + + if (s == "on") { + gameState._petActive = true; + gameManager.update(); + debugPrintf("PET is now on\n"); + return true; + } else if (s == "off") { + gameState._petActive = false; + gameManager.update(); + debugPrintf("PET is now off\n"); + return true; + } + } + + debugPrintf("%s [on | off]\n", argv[0]); + return true; +} + } // End of namespace Titanic -- cgit v1.2.3