Ticket #8201: loom-text.diff

File loom-text.diff, 1.6 KB (added by eriktorbjorn, 21 years ago)

Patch against an April 25 CVS snapshot

  • scummvm/scumm/script_v5.cpp

    diff -ur ScummVM-cvs20030425/scummvm/scumm/script_v5.cpp ScummVM-cvs20030425+hack/scummvm/scumm/script_v5.cpp
    old new  
    24242424                        _string[textSlot].overhead = false;
    24252425                        break;
    24262426                case 6:                                                                         /* left */
    2427                         _string[textSlot].center = false;
     2427                        if (_gameId == GID_LOOM)
     2428                                _string[textSlot].center = true;
     2429                        else
     2430                                _string[textSlot].center = false;
    24282431                        _string[textSlot].overhead = false;
    24292432                        break;
    24302433                case 7:                                                                         /* overhead */
     
    24562459                                }
    24572460                        }
    24582461                        break;
     2462                case 10:
     2463                        // FIXME: What should this do? It's used by EGA Loom
     2464                        // both for the copy protection screen and during the
     2465                        // intro.
     2466                        getVarOrDirectWord(0x80);
     2467                        break;
    24592468                case 15:
    24602469                        _messagePtr = _scriptPointer;
    24612470                        switch (textSlot) {
  • scummvm/scumm/string.cpp

    diff -ur ScummVM-cvs20030425/scummvm/scumm/string.cpp ScummVM-cvs20030425+hack/scummvm/scumm/string.cpp
    old new  
    229229                if (c == 13) {
    230230                newLine:;
    231231                        if (_features & GF_AFTER_V3) {
    232                                 _charset->_nextTop = 8;
    233                                 _charset->_nextLeft = 0;
     232                                _charset->_nextTop += 8;
     233                                _charset->_nextLeft = _string[0].xpos;
     234                                if (_charset->_center) {
     235                                        _charset->_nextLeft -= _charset->getStringWidth(0, buffer) >> 1;
     236                                }
    234237                                continue;
    235238                        } else {
    236239                                _charset->_nextLeft = _string[0].xpos;