diff options
author | Filippos Karapetis | 2011-01-27 14:20:16 +0000 |
---|---|---|
committer | Filippos Karapetis | 2011-01-27 14:20:16 +0000 |
commit | 5b958eb0d17c744c5dda0ad4d7f01023f17f0061 (patch) | |
tree | 7801b418b566780f3cba2043d0782a87f6a5d663 /engines/toon | |
parent | 2126aa588f178f4b7a676120627cfb310565c0db (diff) | |
download | scummvm-rg350-5b958eb0d17c744c5dda0ad4d7f01023f17f0061.tar.gz scummvm-rg350-5b958eb0d17c744c5dda0ad4d7f01023f17f0061.tar.bz2 scummvm-rg350-5b958eb0d17c744c5dda0ad4d7f01023f17f0061.zip |
TOON: Check for the state of modifier keys (control/alt/shift) when handling game hotkeys
Fixes bug #3166522 at engine level (fix 2/2)
svn-id: r55568
Diffstat (limited to 'engines/toon')
-rw-r--r-- | engines/toon/toon.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/engines/toon/toon.cpp b/engines/toon/toon.cpp index 7478ed67f1..93fdc29470 100644 --- a/engines/toon/toon.cpp +++ b/engines/toon/toon.cpp @@ -180,27 +180,27 @@ void ToonEngine::parseInput() { while (_event->pollEvent(event)) { switch (event.type) { case Common::EVENT_KEYUP: - if (event.kbd.ascii == 27 || event.kbd.ascii == 32) { + if ((event.kbd.ascii == 27 || event.kbd.ascii == 32) && !event.kbd.flags) { _audioManager->stopCurrentVoice(); } - if (event.kbd.keycode == Common::KEYCODE_F5) { + if (event.kbd.keycode == Common::KEYCODE_F5 && !event.kbd.flags) { if(canSaveGameStateCurrently()) saveGame(-1, Common::String()); } - if (event.kbd.keycode == Common::KEYCODE_F6) { + if (event.kbd.keycode == Common::KEYCODE_F6 && !event.kbd.flags) { if(canLoadGameStateCurrently()) loadGame(-1); } - if (event.kbd.ascii == 't') { + if (event.kbd.ascii == 't' && !event.kbd.flags) { _showConversationText = !_showConversationText; } - if (event.kbd.ascii == 'm') { + if (event.kbd.ascii == 'm' && !event.kbd.flags) { _audioManager->muteMusic(!_audioManager->isMusicMuted()); } - if (event.kbd.ascii == 'd') { + if (event.kbd.ascii == 'd' && !event.kbd.flags) { _audioManager->muteVoice(!_audioManager->isVoiceMuted()); } - if (event.kbd.ascii == 's') { + if (event.kbd.ascii == 's' && !event.kbd.flags) { _audioManager->muteSfx(!_audioManager->isSfxMuted()); } |