diff options
author | Bastien Bouclet | 2016-12-10 17:32:05 +0100 |
---|---|---|
committer | Bastien Bouclet | 2016-12-10 17:34:24 +0100 |
commit | fd794bd4a307478be8f6014d742d4e841121c404 (patch) | |
tree | 2e967aee897d9fbef02ee6e4528fd4e5438c6149 /engines/mohawk/myst.cpp | |
parent | 5f26c445c9661fa723ddbec23892d07beea0c89c (diff) | |
download | scummvm-rg350-fd794bd4a307478be8f6014d742d4e841121c404.tar.gz scummvm-rg350-fd794bd4a307478be8f6014d742d4e841121c404.tar.bz2 scummvm-rg350-fd794bd4a307478be8f6014d742d4e841121c404.zip |
MOHAWK: Poll the events while drawing Myst transitions
Fixes #9594, the mouse cursor was hanging while transitions were drawn.
Diffstat (limited to 'engines/mohawk/myst.cpp')
-rw-r--r-- | engines/mohawk/myst.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/engines/mohawk/myst.cpp b/engines/mohawk/myst.cpp index 6b91e74bb2..e887436e98 100644 --- a/engines/mohawk/myst.cpp +++ b/engines/mohawk/myst.cpp @@ -401,6 +401,25 @@ bool MohawkEngine_Myst::skippableWait(uint32 duration) { return skipped; } +void MohawkEngine_Myst::pollAndDiscardEvents() { + // Poll the events to update the mouse cursor position + Common::Event event; + while (_system->getEventManager()->pollEvent(event)) { + switch (event.type) { + case Common::EVENT_KEYDOWN: + switch (event.kbd.keycode) { + case Common::KEYCODE_SPACE: + pauseGame(); + break; + default: + break; + } + default: + break; + } + } +} + void MohawkEngine_Myst::changeToStack(uint16 stack, uint16 card, uint16 linkSrcSound, uint16 linkDstSound) { debug(2, "changeToStack(%d)", stack); |