From 14d6b33e4f989ddf1788821b9dfe05d22aa9736a Mon Sep 17 00:00:00 2001 From: Florian Kagerer Date: Fri, 2 Oct 2009 22:13:39 +0000 Subject: LOL/PC-98: fixed death menu, live/magic bar colors and money box svn-id: r44548 --- engines/kyra/gui_lol.cpp | 37 +++++++++++++++++++++++++++---------- engines/kyra/lol.cpp | 3 ++- 2 files changed, 29 insertions(+), 11 deletions(-) (limited to 'engines/kyra') diff --git a/engines/kyra/gui_lol.cpp b/engines/kyra/gui_lol.cpp index b371b4f99e..5ddd99aeb3 100644 --- a/engines/kyra/gui_lol.cpp +++ b/engines/kyra/gui_lol.cpp @@ -519,15 +519,15 @@ void LoLEngine::gui_drawLiveMagicBar(int x, int y, int curPoints, int unk, int m if (barHeight < 1 && curPoints > 0) barHeight = 1; - _screen->drawClippedLine(x - 1, y - h, x - 1, y, 1); + _screen->drawClippedLine(x - 1, y - h, x - 1, y, _flags.use16ColorMode ? 0x44 : 1); if (flag) { t = maxPoints >> 1; if (t > curPoints) - col1 = 144; + col1 = _flags.use16ColorMode ? 0xbb : 144; t = maxPoints >> 2; if (t > curPoints) - col1 = 132; + col1 = _flags.use16ColorMode ? 0x88 : 132; } if (barHeight > 0) @@ -556,13 +556,26 @@ void LoLEngine::calcCharPortraitXpos() { } void LoLEngine::gui_drawMoneyBox(int pageNum) { - static const uint16 moneyX[] = { 0x128, 0x134, 0x12b, 0x131, 0x12e}; - static const uint16 moneyY[] = { 0x73, 0x73, 0x74, 0x74, 0x75}; + static const uint16 moneyX256[] = { 0x128, 0x134, 0x12b, 0x131, 0x12e}; + static const uint16 moneyY256[] = { 0x73, 0x73, 0x74, 0x74, 0x75}; + static const uint16 moneyX16[] = { 0x127, 0x133, 0x12a, 0x130, 0x12d}; + static const uint16 moneyY16[] = { 0x74, 0x74, 0x75, 0x75, 0x76}; int backupPage = _screen->_curPage; _screen->_curPage = pageNum; - _screen->fillRect(292, 97, 316, 118, 252, pageNum); + const uint16 *moneyX; + const uint16 *moneyY; + + if (_flags.use16ColorMode) { + moneyX = moneyX16; + moneyY = moneyY16; + _screen->fillRect(291, 98, 315, 118, 0x11, pageNum); + } else { + moneyX = moneyX256; + moneyY = moneyY256; + _screen->fillRect(292, 97, 316, 118, 252, pageNum); + } for (int i = 0; i < 5; i++) { if (!_moneyColumnHeight[i]) @@ -577,15 +590,19 @@ void LoLEngine::gui_drawMoneyBox(int pageNum) { } Screen::FontId backupFont = _screen->setFont(Screen::FID_6_FNT); - _screen->fprintString("%d", 305, 98, 254, 0, 1, _credits); + if (_flags.use16ColorMode) + _screen->fprintString("%d", 304, 99, 0x33, 0, 1, _credits); + else + _screen->fprintString("%d", 305, 98, 254, 0, 1, _credits); _screen->setFont(backupFont); _screen->_curPage = backupPage; if (pageNum == 6) { - _screen->hideMouse(); - _screen->copyRegion(292, 97, 292, 97, 25, 22, 6, 0); - _screen->showMouse(); + if (_flags.use16ColorMode) + _screen->copyRegion(291, 98, 291, 98, 24, 20, 6, 0); + else + _screen->copyRegion(292, 97, 292, 97, 25, 22, 6, 0); } } diff --git a/engines/kyra/lol.cpp b/engines/kyra/lol.cpp index fae220e77d..4ed15c9bab 100644 --- a/engines/kyra/lol.cpp +++ b/engines/kyra/lol.cpp @@ -3518,7 +3518,8 @@ void LoLEngine::checkForPartyDeath() { _screen->fadeToPalette1(40); } else { - _screen->fadeClearSceneWindow(10); + if (!_flags.use16ColorMode) + _screen->fadeClearSceneWindow(10); restoreAfterSpecialScene(0, 1, 1, 0); snd_playTrack(325); -- cgit v1.2.3