diff options
Diffstat (limited to 'engines/titanic/debugger.cpp')
-rw-r--r-- | engines/titanic/debugger.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/engines/titanic/debugger.cpp b/engines/titanic/debugger.cpp index a8b580b636..dd363f861f 100644 --- a/engines/titanic/debugger.cpp +++ b/engines/titanic/debugger.cpp @@ -168,9 +168,18 @@ bool Debugger::cmdRoom(int argc, const char **argv) { } else if (argc >= 2) { CRoomItem *roomItem = findRoom(argv[1]); - if (!roomItem) - debugPrintf("Could not find room - %s\n", argv[1]); - else if (argc == 2) + if (!roomItem && argc == 2) { + // Presume it's a full view specified + CProjectItem *project = g_vm->_window->_project; + CViewItem *view = project->parseView(argv[1]); + + if (view) { + project->changeView(argv[1]); + return false; + } else { + debugPrintf("Could not find view - %s\n", argv[1]); + } + } else if (argc == 2) listRoom(roomItem); else { CNodeItem *nodeItem = findNode(roomItem, argv[2]); |