From b8e02a03c1d0f1a8224a091b910c8210e6486c53 Mon Sep 17 00:00:00 2001 From: Florian Kagerer Date: Sun, 4 Oct 2009 01:05:27 +0000 Subject: LOL: fixed minor bugs in text displayer svn-id: r44582 --- engines/kyra/gui_lol.cpp | 4 ++++ engines/kyra/screen_lol.cpp | 2 +- engines/kyra/text_lol.cpp | 11 +++++------ 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/engines/kyra/gui_lol.cpp b/engines/kyra/gui_lol.cpp index 499877af11..d0b05bca66 100644 --- a/engines/kyra/gui_lol.cpp +++ b/engines/kyra/gui_lol.cpp @@ -1211,6 +1211,10 @@ int LoLEngine::clickedPortraitLeft(Button *button) { _selectedCharacter = button->arg; _weaponsDisabled = true; + + if (_flags.use16ColorMode) + _screen->fillRect(112, 0, 288, 120, 0, 2); + gui_displayCharInventory(_selectedCharacter); gui_enableCharInventoryButtons(_selectedCharacter); diff --git a/engines/kyra/screen_lol.cpp b/engines/kyra/screen_lol.cpp index 9c6a1e0b7f..4d8e4fb78c 100644 --- a/engines/kyra/screen_lol.cpp +++ b/engines/kyra/screen_lol.cpp @@ -351,7 +351,7 @@ void Screen_LoL::fadeClearSceneWindow(int delay) { if (_use16ColorMode) { fadeToBlack(delay); - fillRect(112, 0, 288, 120, 68); + fillRect(112, 0, 288, 120, 0x44); } else { Palette tpal(getPalette(0).getNumColors()); tpal.copy(getPalette(0), 128); diff --git a/engines/kyra/text_lol.cpp b/engines/kyra/text_lol.cpp index 0dd6a1b2f2..918bad5e25 100644 --- a/engines/kyra/text_lol.cpp +++ b/engines/kyra/text_lol.cpp @@ -459,7 +459,7 @@ void TextDisplayer_LoL::displayText(char *str, ...) { break; default: - _lineWidth += (pc98PrintFlag ? 4 : _screen->getCharWidth(c)); + _lineWidth += (pc98PrintFlag ? 4 : _screen->getCharWidth((uint8)c)); _currentLine[_numCharsLeft++] = c; _currentLine[_numCharsLeft] = 0; @@ -586,7 +586,7 @@ void TextDisplayer_LoL::printLine(char *str) { //cut off line after last space c = str[n1]; - lw -= _screen->getCharWidth(c); + lw -= _screen->getCharWidth((uint8)c); if (!n2 && lw <= w) n2 = n1; @@ -729,7 +729,7 @@ void TextDisplayer_LoL::textPageBreak() { if (_vm->speechEnabled()) { if (((_vm->_system->getMillis() > speechPartTime) || (_vm->snd_updateCharacterSpeech() != 2)) && speechPartTime) { loop = false; - inputFlag = 43; + inputFlag = _vm->_keyMap[Common::KEYCODE_RETURN]; break; } } @@ -745,15 +745,14 @@ void TextDisplayer_LoL::textPageBreak() { } else if (inputFlag == 199 || inputFlag == 201) { if (_vm->posWithinRect(_vm->_mouseX, _vm->_mouseY, x, y, x + 74, y + 9)) target = true; - - } else if (inputFlag == 199 || inputFlag == 201) { + } else if (inputFlag == 200 || inputFlag == 202) { if (target) loop = false; } } while (loop); - _screen->fillRect(x, y, x + 74, y + 9, _textDimData[_screen->curDimIndex()].color2); + _screen->fillRect(x, y, x + 73, y + 8, _textDimData[_screen->curDimIndex()].color2); clearCurDim(); _vm->_timer->pauseSingleTimer(11, false); -- cgit v1.2.3