aboutsummaryrefslogtreecommitdiff
path: root/engines/xeen/events.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2015-03-01 21:58:58 -0500
committerPaul Gilbert2015-03-01 21:58:58 -0500
commit8e6708e6008b3ac1132f84923ebc766d1b199679 (patch)
tree739cd55b1af98cfa6115a8ed78fa3460a6e14953 /engines/xeen/events.cpp
parentee5b8ed59f1aaa00767ac3805d7ab63dd5a5f5d4 (diff)
downloadscummvm-rg350-8e6708e6008b3ac1132f84923ebc766d1b199679.tar.gz
scummvm-rg350-8e6708e6008b3ac1132f84923ebc766d1b199679.tar.bz2
scummvm-rg350-8e6708e6008b3ac1132f84923ebc766d1b199679.zip
XEEN: Hook up debugger properly and implement spell command
Diffstat (limited to 'engines/xeen/events.cpp')
-rw-r--r--engines/xeen/events.cpp14
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();
}