diff options
author | Florian Kagerer | 2009-09-19 17:39:31 +0000 |
---|---|---|
committer | Florian Kagerer | 2009-09-19 17:39:31 +0000 |
commit | ea2b6d12dca199eece9b9a8e9ecc9d877d5b5aa4 (patch) | |
tree | 6cb6f37661df7425f9d4ae73a99c8428d762dba5 /engines | |
parent | 6e4f1482c1397ada9b931602e5a104713d7bb4d7 (diff) | |
download | scummvm-rg350-ea2b6d12dca199eece9b9a8e9ecc9d877d5b5aa4.tar.gz scummvm-rg350-ea2b6d12dca199eece9b9a8e9ecc9d877d5b5aa4.tar.bz2 scummvm-rg350-ea2b6d12dca199eece9b9a8e9ecc9d877d5b5aa4.zip |
LOL/PC-98: fix some asserts
svn-id: r44197
Diffstat (limited to 'engines')
-rw-r--r-- | engines/kyra/screen_lol.cpp | 3 | ||||
-rw-r--r-- | engines/kyra/script_lol.cpp | 22 |
2 files changed, 18 insertions, 7 deletions
diff --git a/engines/kyra/screen_lol.cpp b/engines/kyra/screen_lol.cpp index 8deb43356f..bd37945fae 100644 --- a/engines/kyra/screen_lol.cpp +++ b/engines/kyra/screen_lol.cpp @@ -835,6 +835,9 @@ void Screen_LoL::copyColor(int dstColorIndex, int srcColorIndex) { } bool Screen_LoL::fadeColor(int dstColorIndex, int srcColorIndex, uint32 elapsedTime, uint32 targetTime) { + if (_use16ColorMode) + return false; + const uint8 *dst = _screenPalette->getData() + 3 * dstColorIndex; const uint8 *src = _screenPalette->getData() + 3 * srcColorIndex; uint8 *p = getPalette(1).getData() + 3 * dstColorIndex; diff --git a/engines/kyra/script_lol.cpp b/engines/kyra/script_lol.cpp index 956143106d..6d17218f67 100644 --- a/engines/kyra/script_lol.cpp +++ b/engines/kyra/script_lol.cpp @@ -869,9 +869,13 @@ int LoLEngine::olol_fadeClearSceneWindow(EMCState *script) { int LoLEngine::olol_fadeSequencePalette(EMCState *script) { debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_fadeSequencePalette(%p)", (const void *)script); - _screen->getPalette(3).copy(_screen->getPalette(0), 128); - _screen->loadSpecialColors(_screen->getPalette(3)); - _screen->fadePalette(_screen->getPalette(3), 10); + if (_flags.use16ColorMode) { + setPaletteBrightness(_screen->getPalette(0), _brightness, _lampEffect); + } else { + _screen->getPalette(3).copy(_screen->getPalette(0), 128); + _screen->loadSpecialColors(_screen->getPalette(3)); + _screen->fadePalette(_screen->getPalette(3), 10); + } _screen->_fadeFlag = 0; return 1; } @@ -2430,9 +2434,13 @@ int LoLEngine::tlol_fadeClearWindow(const TIM *tim, const uint16 *param) { break; case 1: - _screen->getPalette(3).copy(_screen->getPalette(0), 128); - _screen->loadSpecialColors(_screen->getPalette(3)); - _screen->fadePalette(_screen->getPalette(3), 10); + if (_flags.use16ColorMode) { + _screen->fadePalette(_screen->getPalette(1), 10); + } else { + _screen->getPalette(3).copy(_screen->getPalette(0), 128); + _screen->loadSpecialColors(_screen->getPalette(3)); + _screen->fadePalette(_screen->getPalette(3), 10); + } _screen->_fadeFlag = 0; break; @@ -2442,7 +2450,7 @@ int LoLEngine::tlol_fadeClearWindow(const TIM *tim, const uint16 *param) { case 3: _screen->loadSpecialColors(_screen->getPalette(3)); - _screen->fadePalette(_screen->getPalette(3), 10); + _screen->fadePalette(_screen->getPalette(_flags.use16ColorMode ? 1 : 3), 10); _screen->_fadeFlag = 0; break; |