If we're going to intercept attempts to set VAR(VAR_CHARINC) in writeVar(), we

should probably set it the same way as updateSoundSettings() does it, i.e. to
9 - getTalkspeed(), not getTalkspeed().

I was testing the scene in Sam & Max where you give candy to Doug. I had set
the talk speed to max. The script tried to set CHARINC to 3, but instead it was
changed from 0 to 9...

svn-id: r22748
This commit is contained in:
Torbjörn Andersson 2006-05-29 17:27:22 +00:00
parent 1d72b954c7
commit fa77904074
2 changed files with 4 additions and 6 deletions

View file

@ -420,9 +420,8 @@ void ScummEngine_v8::writeVar(uint var, int value) {
checkRange(_numVariables - 1, 0, var, "Variable %d out of range(w)");
if (var == VAR_CHARINC && ConfMan.hasKey("talkspeed")) {
uint talkspeed = getTalkspeed();
if (talkspeed <= 9)
VAR(VAR_CHARINC) = talkspeed;
_defaultTalkDelay = 9 - getTalkspeed();
VAR(VAR_CHARINC) = _defaultTalkDelay;
} else
_scummVars[var] = value;