diff options
Diffstat (limited to 'engines/mohawk/console.cpp')
-rw-r--r-- | engines/mohawk/console.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/engines/mohawk/console.cpp b/engines/mohawk/console.cpp index 80ba710a47..7521bcd194 100644 --- a/engines/mohawk/console.cpp +++ b/engines/mohawk/console.cpp @@ -47,6 +47,7 @@ MystConsole::MystConsole(MohawkEngine_Myst *vm) : GUI::Debugger(), _vm(vm) { DCmd_Register("stopSound", WRAP_METHOD(MystConsole, Cmd_StopSound)); DCmd_Register("playMovie", WRAP_METHOD(MystConsole, Cmd_PlayMovie)); DCmd_Register("disableInitOpcodes", WRAP_METHOD(MystConsole, Cmd_DisableInitOpcodes)); + DCmd_Register("cache", WRAP_METHOD(MystConsole, Cmd_Cache)); } MystConsole::~MystConsole() { @@ -270,6 +271,27 @@ bool MystConsole::Cmd_DisableInitOpcodes(int argc, const char **argv) { return true; } +bool MystConsole::Cmd_Cache(int argc, const char **argv) { + if (argc > 2) { + DebugPrintf("Usage: cache on/off - Omit parameter to get current state\n"); + return true; + } + + bool state = false; + + if (argc == 1) { + state = _vm->getCacheState(); + } else { + if (!scumm_stricmp(argv[1], "on")) + state = true; + + _vm->setCacheState(state); + } + + DebugPrintf("Cache: %s\n", state ? "Enabled" : "Disabled"); + return true; +} + RivenConsole::RivenConsole(MohawkEngine_Riven *vm) : GUI::Debugger(), _vm(vm) { DCmd_Register("changeCard", WRAP_METHOD(RivenConsole, Cmd_ChangeCard)); DCmd_Register("curCard", WRAP_METHOD(RivenConsole, Cmd_CurCard)); |