aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/xeen/dialogs/dialogs_input.cpp1
-rw-r--r--engines/xeen/scripts.cpp4
2 files changed, 3 insertions, 2 deletions
diff --git a/engines/xeen/dialogs/dialogs_input.cpp b/engines/xeen/dialogs/dialogs_input.cpp
index c2dac524c0..0ac8f3612b 100644
--- a/engines/xeen/dialogs/dialogs_input.cpp
+++ b/engines/xeen/dialogs/dialogs_input.cpp
@@ -69,7 +69,6 @@ int Input::getString(Common::String &line, uint maxLen, int maxWidth, bool isNum
}
}
- _vm->_interface->clearEvents();
_vm->_noDirectionSense = false;
return line.size();
}
diff --git a/engines/xeen/scripts.cpp b/engines/xeen/scripts.cpp
index 2ffdcd1f72..d135a4ae11 100644
--- a/engines/xeen/scripts.cpp
+++ b/engines/xeen/scripts.cpp
@@ -238,6 +238,8 @@ int Scripts::checkEvents() {
_vm->_mode = oldMode;
windows.closeAll();
+ if (_scriptExecuted)
+ intf.clearEvents();
if (_scriptExecuted || !intf._objNumber || _dirFlag) {
if (_dirFlag && !_scriptExecuted && intf._objNumber && !map._currentIsEvent) {
sound.playFX(21);
@@ -522,7 +524,7 @@ bool Scripts::cmdTeleport(ParamsIterator &params) {
if (restartFlag) {
// Draw the new location and start any script at that location
- intf.draw3d(true);
+ events.ipause(2);
_lineNum = SCRIPT_RESET;
return false;
} else {