aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorMartin Kiewitz2010-04-02 18:48:17 +0000
committerMartin Kiewitz2010-04-02 18:48:17 +0000
commitbc311445f815b9b9ede9a55e0c6d895d20ec72cc (patch)
treec1398bd7ec5d94bca7f72e7b1372d7cbbbfbe25e /engines
parent7e1f395e34ac83cad4df6268f2465adebe7b1abe (diff)
downloadscummvm-rg350-bc311445f815b9b9ede9a55e0c6d895d20ec72cc.tar.gz
scummvm-rg350-bc311445f815b9b9ede9a55e0c6d895d20ec72cc.tar.bz2
scummvm-rg350-bc311445f815b9b9ede9a55e0c6d895d20ec72cc.zip
SCI: change actual setting of palette, fixes gk1 palette issue when talking to grace indirectly caused by r47955, seems to also fix jones palette issue, could cause regressions
svn-id: r48474
Diffstat (limited to 'engines')
-rw-r--r--engines/sci/graphics/palette.cpp8
-rw-r--r--engines/sci/graphics/palette.h2
2 files changed, 8 insertions, 2 deletions
diff --git a/engines/sci/graphics/palette.cpp b/engines/sci/graphics/palette.cpp
index b50bf49b4b..af080df281 100644
--- a/engines/sci/graphics/palette.cpp
+++ b/engines/sci/graphics/palette.cpp
@@ -192,10 +192,14 @@ void GfxPalette::set(Palette *sciPal, bool force, bool forceRealMerge) {
bool paletteChanged;
if (force || sciPal->timestamp != systime) {
- paletteChanged = merge(sciPal, &_sysPalette, force, forceRealMerge);
+ _sysPaletteChanged |= merge(sciPal, &_sysPalette, force, forceRealMerge);
sciPal->timestamp = _sysPalette.timestamp;
- if (paletteChanged && _screen->_picNotValid == 0 && systime != _sysPalette.timestamp)
+ if (_sysPaletteChanged && _screen->_picNotValid == 0) { // && systime != _sysPalette.timestamp) {
+ // Removed timestamp checking, because this shouldnt be needed anymore. I'm leaving it commented just in
+ // case this causes regressions
setOnScreen();
+ _sysPaletteChanged = false;
+ }
}
}
diff --git a/engines/sci/graphics/palette.h b/engines/sci/graphics/palette.h
index 224c03965b..46fec48739 100644
--- a/engines/sci/graphics/palette.h
+++ b/engines/sci/graphics/palette.h
@@ -75,6 +75,8 @@ private:
uint32 _palVaryStart;
uint32 _palVaryEnd;
+ bool _sysPaletteChanged;
+
Common::Array<PalSchedule> _schedules;
};