aboutsummaryrefslogtreecommitdiff
path: root/engines/queen
diff options
context:
space:
mode:
authorFilippos Karapetis2014-10-27 03:18:03 +0200
committerFilippos Karapetis2014-10-27 03:18:41 +0200
commit0db09d334ca1be244aa6b5865ff92919456c669f (patch)
tree888a08d8aac91bccc4e37a80cde852d4b3aa6feb /engines/queen
parent17d7f3bf284bc7fb94bf049120f0cf07e2ff5fee (diff)
downloadscummvm-rg350-0db09d334ca1be244aa6b5865ff92919456c669f.tar.gz
scummvm-rg350-0db09d334ca1be244aa6b5865ff92919456c669f.tar.bz2
scummvm-rg350-0db09d334ca1be244aa6b5865ff92919456c669f.zip
QUEEN: Fix bug #6700 - "FOTAQ: Weird Response Glitches"
Pending mouse clicks and keypresses are now cleared before and after the game options screen or dialog options are shown
Diffstat (limited to 'engines/queen')
-rw-r--r--engines/queen/logic.cpp6
-rw-r--r--engines/queen/talk.cpp4
2 files changed, 10 insertions, 0 deletions
diff --git a/engines/queen/logic.cpp b/engines/queen/logic.cpp
index d48bb8a498..664a9a15f9 100644
--- a/engines/queen/logic.cpp
+++ b/engines/queen/logic.cpp
@@ -2115,9 +2115,15 @@ void LogicInterview::setupSpecialMoveTable() {
}
void LogicGame::useJournal() {
+ _vm->input()->clearKeyVerb();
+ _vm->input()->clearMouseButton();
+
_vm->command()->clear(false);
_journal->use();
_vm->walk()->stopJoe();
+
+ _vm->input()->clearKeyVerb();
+ _vm->input()->clearMouseButton();
}
bool LogicGame::changeToSpecialRoom() {
diff --git a/engines/queen/talk.cpp b/engines/queen/talk.cpp
index 1b9d72babc..d00e64b777 100644
--- a/engines/queen/talk.cpp
+++ b/engines/queen/talk.cpp
@@ -1250,6 +1250,7 @@ int16 Talk::selectSentence() {
}
_vm->input()->clearKeyVerb();
+ _vm->input()->clearMouseButton();
if (sentenceCount > 0) {
int oldZone = 0;
@@ -1328,6 +1329,9 @@ int16 Talk::selectSentence() {
}
}
+ _vm->input()->clearKeyVerb();
+ _vm->input()->clearMouseButton();
+
debug(6, "Selected sentence %i", selectedSentence);
arrowBobUp->active = false;