aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Kagerer2009-10-04 01:05:27 +0000
committerFlorian Kagerer2009-10-04 01:05:27 +0000
commitb8e02a03c1d0f1a8224a091b910c8210e6486c53 (patch)
treefcbf712a78f40d6935315a3b84c4409c2f9927d1
parent0ed87062ed776e8d182eac16157b2c7b48796843 (diff)
downloadscummvm-rg350-b8e02a03c1d0f1a8224a091b910c8210e6486c53.tar.gz
scummvm-rg350-b8e02a03c1d0f1a8224a091b910c8210e6486c53.tar.bz2
scummvm-rg350-b8e02a03c1d0f1a8224a091b910c8210e6486c53.zip
LOL: fixed minor bugs in text displayer
svn-id: r44582
-rw-r--r--engines/kyra/gui_lol.cpp4
-rw-r--r--engines/kyra/screen_lol.cpp2
-rw-r--r--engines/kyra/text_lol.cpp11
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);