aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/debugger.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/titanic/debugger.cpp')
-rw-r--r--engines/titanic/debugger.cpp15
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]);