SCUMM: (DIG) - fix bug no. 15025

(Sentence line font has wrong colors)

I am not sure if that is all the ticket is about, but that's at least how I
understand it.
This commit is contained in:
athrxx 2024-05-07 21:02:55 +02:00
parent 3afaca351a
commit 5c71c1c87b
2 changed files with 7 additions and 2 deletions

View File

@ -1232,7 +1232,7 @@ void ScummEngine::drawString(int a, const byte *msg) {
bool shadowModeFlag = (vs && vs->number == kMainVirtScreen);
if (_game.version >= 5)
memcpy(_charsetColorMap, _charsetData[_charset->getCurID()], 4);
memcpy(_charsetColorMap, _charsetData[_charset->getCurID()], _game.id == GID_DIG ? sizeof(_charsetColorMap) : 4);
fontHeight = _charset->getFontHeight();

View File

@ -466,6 +466,9 @@ void ScummEngine_v7::drawBlastTexts() {
_charset->setCurID(_blastTextQueue[i].charset);
if (_game.version == 7)
memcpy(_charsetColorMap, _charsetData[_charset->getCurID()], _game.id == GID_DIG ? sizeof(_charsetColorMap) : 4);
if (bt.flags & kStyleWordWrap) {
bt.rect = _wrappedTextClipRect;
@ -648,9 +651,11 @@ void ScummEngine_v7::displayDialog() {
_charset->_startLeft = _charset->_left = _string[0].xpos;
_charset->_right = _string[0].right;
_charset->_center = _string[0].center;
memcpy(_charsetColorMap, _charsetData[_charset->getCurID()], 4);
}
if (_game.version == 7)
memcpy(_charsetColorMap, _charsetData[_charset->getCurID()], _game.id == GID_DIG ? sizeof(_charsetColorMap) : 4);
if (usingOldSystem && a && a->_charset) {
_charset->setCurID(a->_charset);
} else {