aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorathrxx2019-02-22 15:20:56 +0100
committerathrxx2019-03-06 20:48:23 +0100
commitb8893fc691bdca370539d032014c6f2b598c8d72 (patch)
tree1f7e5fd30a2b8f6143469690627d0c71e01de002
parentb5ac2203a5c75fadaa6ad78640cea65388ed4524 (diff)
downloadscummvm-rg350-b8893fc691bdca370539d032014c6f2b598c8d72.tar.gz
scummvm-rg350-b8893fc691bdca370539d032014c6f2b598c8d72.tar.bz2
scummvm-rg350-b8893fc691bdca370539d032014c6f2b598c8d72.zip
KYRA: (EOB1/Amiga) - fix level palette glitch
-rw-r--r--engines/kyra/engine/scene_eob.cpp6
-rw-r--r--engines/kyra/gui/gui_eob.cpp2
2 files changed, 5 insertions, 3 deletions
diff --git a/engines/kyra/engine/scene_eob.cpp b/engines/kyra/engine/scene_eob.cpp
index aebb8ae388..fb334bf791 100644
--- a/engines/kyra/engine/scene_eob.cpp
+++ b/engines/kyra/engine/scene_eob.cpp
@@ -93,8 +93,8 @@ void EoBCoreEngine::loadLevel(int level, int sub) {
loadVcnData(gfxFile.c_str(), (_flags.gameID == GI_EOB1 && _flags.platform == Common::kPlatformDOS) ? _cgaMappingLevel[_cgaLevelMappingIndex[level - 1]] : 0);
_screen->loadEoBBitmap("INVENT", _cgaMappingInv, 5, 3, 2);
- //if (_flags.platform == Common::kPlatformAmiga)
- // _screen->setScreenPalette(_screen->getPalette(0));
+ if (_flags.platform == Common::kPlatformAmiga)
+ _screen->getPalette(0).copy(_screen->getPalette(1), 1, 5, 1);
delayUntil(end);
snd_stopSound();
@@ -316,7 +316,7 @@ void EoBCoreEngine::loadVcnData(const char *file, const uint8 *cgaMapping) {
Common::SeekableReadStream *in = _res->createReadStream(fn);
vcnSize = in->readUint16LE() * (_vcnSrcBitsPerPixel << 3);
_vcnBlocks = new uint8[vcnSize];
- _screen->getPalette(0).loadAmigaPalette(*in, 1, 5);
+ _screen->getPalette(1).loadAmigaPalette(*in, 1, 5);
in->seek(22, SEEK_CUR);
in->read(_vcnBlocks, vcnSize);
delete in;
diff --git a/engines/kyra/gui/gui_eob.cpp b/engines/kyra/gui/gui_eob.cpp
index f521b9b757..2b16e7621f 100644
--- a/engines/kyra/gui/gui_eob.cpp
+++ b/engines/kyra/gui/gui_eob.cpp
@@ -61,6 +61,8 @@ void EoBCoreEngine::gui_drawPlayField(bool refresh) {
_screen->updateScreen();
_screen->loadEoBBitmap("INVENT", _cgaMappingInv, 5, 3, 2);
+ if (_flags.platform == Common::kPlatformAmiga)
+ _screen->getPalette(0).copy(_screen->getPalette(1), 1, 5, 1);
}
void EoBCoreEngine::gui_restorePlayField() {