diff options
author | Max Horn | 2004-04-05 23:56:28 +0000 |
---|---|---|
committer | Max Horn | 2004-04-05 23:56:28 +0000 |
commit | 92301bff74df94d982aba13b80ca9d8541754c09 (patch) | |
tree | 27208fa88813de702157ca5542ea4d379c89fc91 /scumm | |
parent | 17fe0497f5816c4f858ab45cbf5fe6e8f7ec2a74 (diff) | |
download | scummvm-rg350-92301bff74df94d982aba13b80ca9d8541754c09.tar.gz scummvm-rg350-92301bff74df94d982aba13b80ca9d8541754c09.tar.bz2 scummvm-rg350-92301bff74df94d982aba13b80ca9d8541754c09.zip |
Replaced FIXME with proper explanation and code (the previous hack was actually correct, just incomplete)
svn-id: r13477
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/script_v5.cpp | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/scumm/script_v5.cpp b/scumm/script_v5.cpp index 6eeb983eee..3d50febab3 100644 --- a/scumm/script_v5.cpp +++ b/scumm/script_v5.cpp @@ -2701,17 +2701,16 @@ void ScummEngine_v5::decodeParseString() { break; } - // FIXME: Store positions, this is needed for Indy3 (Grail Diary).. - // I don't believe this is the correct fix, may cause other problems - // later in the game. + // In SCUMM V1-V3, there were no 'default' values for the text slot + // values. Hence to achieve correct behaviour, we have to keep the + // 'default' values in sync with the active values. To do that we + // simply call saveDefault() on the StringTab in question. // - // It's also needed for Loom, or the lines Bobbin - // speaks during the intro are put at position 0,0. - // In addition, Loom needs to remember the text colour. - if (_gameId == GID_LOOM || _gameId == GID_INDY3) { - _string[textSlot]._default.xpos = _string[textSlot].xpos; - _string[textSlot]._default.ypos = _string[textSlot].ypos; - _string[textSlot]._default.color = _string[textSlot].color; + // Note: This is needed for Indy3 (Grail Diary). It's also needed + // for Loom, or the lines Bobbin speaks during the intro are put + // at position 0,0. + if (_version <= 3) { + _string[textSlot].saveDefault(); } return; default: |