aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/scumm/script.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/scumm/script.cpp b/engines/scumm/script.cpp
index 642627d649..1dbc87dd79 100644
--- a/engines/scumm/script.cpp
+++ b/engines/scumm/script.cpp
@@ -624,7 +624,12 @@ void ScummEngine::writeVar(uint var, int value) {
}
if (var == VAR_CHARINC) {
- if (ConfMan.hasKey("talkspeed")) {
+ // Did the user override the talkspeed manually? Then use that.
+ // Otherwise, use the value specified by the game script.
+ // Note: To determine whether there was a user override, we only
+ // look at the target specific settings, assuming that any global
+ // value is likely to be bogus. See also bug #2251765.
+ if (ConfMan.hasKey("talkspeed", _targetName)) {
value = getTalkDelay();
} else {
// Save the new talkspeed value to ConfMan