diff options
author | Max Horn | 2003-09-10 00:28:26 +0000 |
---|---|---|
committer | Max Horn | 2003-09-10 00:28:26 +0000 |
commit | 94c4cf0e55a2286cba82c5d1317ab85503f5124d (patch) | |
tree | c8b874422375b2380368e8b8055e45931d056df8 | |
parent | deb4f6b78679527735225808161cc223d13dfa78 (diff) | |
download | scummvm-rg350-94c4cf0e55a2286cba82c5d1317ab85503f5124d.tar.gz scummvm-rg350-94c4cf0e55a2286cba82c5d1317ab85503f5124d.tar.bz2 scummvm-rg350-94c4cf0e55a2286cba82c5d1317ab85503f5124d.zip |
fix for bug #770042 (LOOM: Some bits of dialogue are repeated)
svn-id: r10145
-rw-r--r-- | scumm/scummvm.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp index 3acdf3ab40..76bcf2a607 100644 --- a/scumm/scummvm.cpp +++ b/scumm/scummvm.cpp @@ -1248,6 +1248,13 @@ int Scumm::scummLoop(int delta) { if (VAR_EGO != 0xFF) oldEgo = VAR(VAR_EGO); + // In V1-V3 games, CHARSET_1 is called much earlier than in newer games. + // See also bug #770042 for a case were this makes a difference. + // FIXME: Actually I am only sure that this is correct for V1-V2 and Loom. + // We should also check Indy3 & Zak256. + if (_version <= 3) + CHARSET_1(); + processKbd(); if (_features & GF_NEW_CAMERA) { @@ -1385,13 +1392,15 @@ load_game: } if (_currentRoom == 0) { - CHARSET_1(); + if (_version > 3) + CHARSET_1(); drawDirtyScreenParts(); } else { walkActors(); moveCamera(); fixObjectFlags(); - CHARSET_1(); + if (_version > 3) + CHARSET_1(); if (camera._cur.x != camera._last.x || _BgNeedsRedraw || _fullRedraw || ((_features & GF_NEW_CAMERA) && camera._cur.y != camera._last.y)) { |