diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tucker/tucker.cpp | 11 | ||||
-rw-r--r-- | engines/tucker/tucker.h | 3 |
2 files changed, 13 insertions, 1 deletions
diff --git a/engines/tucker/tucker.cpp b/engines/tucker/tucker.cpp index d4640a8927..8e11e2279b 100644 --- a/engines/tucker/tucker.cpp +++ b/engines/tucker/tucker.cpp @@ -653,6 +653,10 @@ void TuckerEngine::parseEvents() { break; case Common::KEYCODE_ESCAPE: _inputKeys[kInputKeyEscape] = true; + _inputKeys[kInputKeySkipSpeech] = true; + break; + case Common::KEYCODE_PERIOD: + _inputKeys[kInputKeySkipSpeech] = true; break; case Common::KEYCODE_d: if (ev.kbd.hasFlags(Common::KBD_CTRL)) { @@ -678,6 +682,7 @@ void TuckerEngine::parseEvents() { case Common::EVENT_RBUTTONDOWN: updateCursorPos(ev.mouse.x, ev.mouse.y); _mouseButtonsMask |= 2; + _inputKeys[kInputKeySkipSpeech] = true; break; case Common::EVENT_RBUTTONUP: updateCursorPos(ev.mouse.x, ev.mouse.y); @@ -692,6 +697,12 @@ void TuckerEngine::parseEvents() { break; } } + if (_inputKeys[kInputKeySkipSpeech]) { + if (isSpeechSoundPlaying()) { + stopSpeechSound(); + } + _inputKeys[kInputKeySkipSpeech] = false; + } _quitGame = shouldQuit(); } diff --git a/engines/tucker/tucker.h b/engines/tucker/tucker.h index fd508c1abe..d458d80835 100644 --- a/engines/tucker/tucker.h +++ b/engines/tucker/tucker.h @@ -212,7 +212,8 @@ enum InputKey { kInputKeyToggleInventory, kInputKeyToggleTextSpeech, kInputKeyHelp, - kInputKeyCount + kInputKeyCount, + kInputKeySkipSpeech }; enum GameFlag { |