aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/tucker/tucker.cpp11
-rw-r--r--engines/tucker/tucker.h3
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 {