diff options
Diffstat (limited to 'engines/xeen/events.cpp')
-rw-r--r-- | engines/xeen/events.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/engines/xeen/events.cpp b/engines/xeen/events.cpp index 9f13861dd2..92dc8b487f 100644 --- a/engines/xeen/events.cpp +++ b/engines/xeen/events.cpp @@ -94,7 +94,14 @@ void EventsManager::pollEvents() { case Common::EVENT_RTL: return; case Common::EVENT_KEYDOWN: - _keyCode = event.kbd.keycode; + // Check for debugger + if (event.kbd.keycode == Common::KEYCODE_d && (event.kbd.flags & Common::KBD_CTRL)) { + // Attach to the debugger + _vm->_debugger->attach(); + _vm->_debugger->onFrame(); + } else { + _keyCode = event.kbd.keycode; + } break; case Common::EVENT_MOUSEMOVE: _mousePos = event.mouse; @@ -181,6 +188,11 @@ void EventsManager::ipause(uint amount) { */ void EventsManager::nextFrame() { ++_frameCounter; + + // Allow debugger to update + _vm->_debugger->update(); + + // Update the screen _vm->_screen->update(); } |