diff options
-rw-r--r-- | scumm/saveload.cpp | 4 | ||||
-rw-r--r-- | scumm/script_v5.cpp | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp index 11b9a2e2a1..ba9c32aadf 100644 --- a/scumm/saveload.cpp +++ b/scumm/saveload.cpp @@ -157,7 +157,9 @@ bool Scumm::loadState(int slot, bool compat, SaveFileManager *mgr) { initScreens(0, sb, _realWidth, sh); _completeScreenRedraw = true; - setDirtyColors(0, 255); + + if (!(_features & GF_16COLOR)) + setDirtyColors(0, 255); _lastCodePtr = NULL; diff --git a/scumm/script_v5.cpp b/scumm/script_v5.cpp index 1b8bf504b0..be17c23b3c 100644 --- a/scumm/script_v5.cpp +++ b/scumm/script_v5.cpp @@ -1654,7 +1654,8 @@ void Scumm_v5::o5_roomOps() { } checkRange(256, 0, a, "o5_roomOps: 2: Illegal room color slot (%d)"); _shadowPalette[b] = a; - setDirtyColors(b, b); + if (!(_features & GF_16COLOR)) + setDirtyColors(b, b); } else { a = getVarOrDirectWord(0x80); b = getVarOrDirectWord(0x40); |