aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2015-08-22 09:42:53 -0400
committerPaul Gilbert2015-08-22 09:42:53 -0400
commit5fd764c221bbbfa7f075862d310bb7098184c4dc (patch)
treec8aa4f09563854187a54152ee295c5c2fcec0030
parent6862c9dd9bc03b0ce425c71c62f203d9ae996e8a (diff)
downloadscummvm-rg350-5fd764c221bbbfa7f075862d310bb7098184c4dc.tar.gz
scummvm-rg350-5fd764c221bbbfa7f075862d310bb7098184c4dc.tar.bz2
scummvm-rg350-5fd764c221bbbfa7f075862d310bb7098184c4dc.zip
SHERLOCK: RT: Fix dialog background shading data after viewing journal
-rw-r--r--engines/sherlock/tattoo/tattoo_user_interface.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/sherlock/tattoo/tattoo_user_interface.cpp b/engines/sherlock/tattoo/tattoo_user_interface.cpp
index 6ede31db81..76d1af1435 100644
--- a/engines/sherlock/tattoo/tattoo_user_interface.cpp
+++ b/engines/sherlock/tattoo/tattoo_user_interface.cpp
@@ -216,7 +216,9 @@ void TattooUserInterface::doJournal() {
TattooJournal &journal = *(TattooJournal *)_vm->_journal;
TattooScene &scene = *(TattooScene *)_vm->_scene;
Screen &screen = *_vm->_screen;
+ byte lookupTable[PALETTE_SIZE];
+ Common::copy(&_lookupTable[0], &_lookupTable[PALETTE_SIZE], &lookupTable[0]);
_menuMode = JOURNAL_MODE;
journal.show();
@@ -224,10 +226,12 @@ void TattooUserInterface::doJournal() {
_windowOpen = false;
_key = -1;
- setupBGArea(screen._cMap);
+ // Restore the the old screen palette and greyscale lookup table
screen.clear();
screen.setPalette(screen._cMap);
+ Common::copy(&lookupTable[0], &lookupTable[PALETTE_SIZE], &_lookupTable[0]);
+ // Restore the scene
screen._backBuffer1.blitFrom(screen._backBuffer2);
scene.updateBackground();
screen.slamArea(screen._currentScroll.x, screen._currentScroll.y, SHERLOCK_SCREEN_WIDTH, SHERLOCK_SCREEN_HEIGHT);