aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock
diff options
context:
space:
mode:
authorPaul Gilbert2015-09-28 08:10:37 -0400
committerPaul Gilbert2015-09-28 08:10:37 -0400
commitf633b02d62f0e2dc4aad3b9220d13f71aeaecdee (patch)
treeac5803eab780f671f9631f3cfdb19f31e4339c60 /engines/sherlock
parent35d55333615959d08f53d4e54083af10bf8416fe (diff)
downloadscummvm-rg350-f633b02d62f0e2dc4aad3b9220d13f71aeaecdee.tar.gz
scummvm-rg350-f633b02d62f0e2dc4aad3b9220d13f71aeaecdee.tar.bz2
scummvm-rg350-f633b02d62f0e2dc4aad3b9220d13f71aeaecdee.zip
SHERLOCK: RT: Fix palette corruption using Journal in Diogenes club
Diffstat (limited to 'engines/sherlock')
-rw-r--r--engines/sherlock/tattoo/tattoo_user_interface.cpp4
-rw-r--r--engines/sherlock/tattoo/tattoo_user_interface.h3
2 files changed, 6 insertions, 1 deletions
diff --git a/engines/sherlock/tattoo/tattoo_user_interface.cpp b/engines/sherlock/tattoo/tattoo_user_interface.cpp
index 139497a8a4..623fb8dbf5 100644
--- a/engines/sherlock/tattoo/tattoo_user_interface.cpp
+++ b/engines/sherlock/tattoo/tattoo_user_interface.cpp
@@ -215,9 +215,10 @@ void TattooUserInterface::doJournal() {
TattooJournal &journal = *(TattooJournal *)_vm->_journal;
TattooScene &scene = *(TattooScene *)_vm->_scene;
Screen &screen = *_vm->_screen;
- byte lookupTable[PALETTE_COUNT];
+ byte lookupTable[PALETTE_COUNT], lookupTable1[PALETTE_COUNT];
Common::copy(&_lookupTable[0], &_lookupTable[PALETTE_COUNT], &lookupTable[0]);
+ Common::copy(&_lookupTable1[0], &_lookupTable1[PALETTE_COUNT], &lookupTable1[0]);
_menuMode = JOURNAL_MODE;
journal.show();
@@ -229,6 +230,7 @@ void TattooUserInterface::doJournal() {
screen.clear();
screen.setPalette(screen._cMap);
Common::copy(&lookupTable[0], &lookupTable[PALETTE_COUNT], &_lookupTable[0]);
+ Common::copy(&lookupTable1[0], &lookupTable1[PALETTE_COUNT], &_lookupTable1[0]);
// Restore the scene
screen._backBuffer1.blitFrom(screen._backBuffer2);
diff --git a/engines/sherlock/tattoo/tattoo_user_interface.h b/engines/sherlock/tattoo/tattoo_user_interface.h
index c92ff21dd1..d89da4a6da 100644
--- a/engines/sherlock/tattoo/tattoo_user_interface.h
+++ b/engines/sherlock/tattoo/tattoo_user_interface.h
@@ -185,6 +185,9 @@ public:
*/
void doBgAnimEraseBackground();
+ /**
+ * Draws overlays onto the scene. Basically, the smoke effects some scenes have
+ */
void drawMaskArea(bool mode);
/**