aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/saveload.cpp
diff options
context:
space:
mode:
authorJohannes Schickel2011-08-27 19:57:45 +0200
committerJohannes Schickel2011-08-27 19:57:45 +0200
commit003c16920c1790152e64250b38613f36e39ec719 (patch)
tree32d266679b87803e689d957ece28de1b592f442a /engines/scumm/saveload.cpp
parent064ab0fd628f660d8565512dfbffb0c11a82f046 (diff)
downloadscummvm-rg350-003c16920c1790152e64250b38613f36e39ec719.tar.gz
scummvm-rg350-003c16920c1790152e64250b38613f36e39ec719.tar.bz2
scummvm-rg350-003c16920c1790152e64250b38613f36e39ec719.zip
SCUMM: Also save first used color beyond 80 in Indy4 Amiga palette.
Diffstat (limited to 'engines/scumm/saveload.cpp')
-rw-r--r--engines/scumm/saveload.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp
index e0eba99cce..db151c2457 100644
--- a/engines/scumm/saveload.cpp
+++ b/engines/scumm/saveload.cpp
@@ -1357,6 +1357,15 @@ void ScummEngine::saveOrLoad(Serializer *s) {
s->saveLoadArrayOf(_roomPalette, 256, 1, sleByte);
s->saveLoadArrayOf(_verbPalette, 256, 1, sleByte);
s->saveLoadArrayOf(_amigaPalette, 3 * 64, 1, sleByte);
+
+ // Starting from version 86 we also save the first used color in
+ // the palette beyond the verb palette. For old versions we just
+ // look for it again, which hopefully won't cause any troubles.
+ if (s->getVersion() >= 86) {
+ s->saveLoadArrayOf(&_amigaFirstUsedColor, 1, 2, sleUint16);
+ } else {
+ amigaPaletteFindFirstUsedColor();
+ }
} else {
warning("Save with old Indiana Jones 4 Amiga palette handling detected");
// We need to restore the internal state of the Amiga palette for Indy4