diff options
-rw-r--r-- | scumm/charset.cpp | 2 | ||||
-rw-r--r-- | scumm/gfx.cpp | 2 | ||||
-rw-r--r-- | scumm/saveload.cpp | 7 | ||||
-rw-r--r-- | scumm/script_v2.cpp | 4 | ||||
-rw-r--r-- | scumm/scummvm.cpp | 6 | ||||
-rw-r--r-- | scumm/verbs.cpp | 2 |
6 files changed, 10 insertions, 13 deletions
diff --git a/scumm/charset.cpp b/scumm/charset.cpp index d4c8b4b893..abf97bc5e0 100644 --- a/scumm/charset.cpp +++ b/scumm/charset.cpp @@ -931,7 +931,7 @@ void CharsetRendererV3::setColor(byte color) _color = color; _shadowColor = (_vm->_features & GF_FMTOWNS) ? 8 : 0; // FM Towns version of Loom uses old colour method as well - if (_vm->_features & GF_16COLOR || _vm->_gameId == GID_LOOM) { + if ((_vm->_version >= 2) && (_vm->_features & GF_16COLOR || _vm->_gameId == GID_LOOM)) { _dropShadow = ((_color & 0xF0) != 0); _color &= 0x0f; } else if (_vm->_features & GF_OLD256) { diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp index 471525ffec..4bf3af464b 100644 --- a/scumm/gfx.cpp +++ b/scumm/gfx.cpp @@ -2631,6 +2631,7 @@ void ScummEngine::setupV1ManiacPalette() { setPalColor(13, 84, 252, 84); setPalColor(14, 84, 84, 252); setPalColor(15, 84, 84, 84); + setPalColor(16, 252, 84, 252); } void ScummEngine::setupV1ZakPalette() { @@ -2650,6 +2651,7 @@ void ScummEngine::setupV1ZakPalette() { setPalColor(13, 84, 252, 84); setPalColor(14, 84, 84, 252); setPalColor(15, 168, 168, 168); + setPalColor(16, 252, 84, 252); } void ScummEngine::setPaletteFromPtr(const byte *ptr) { diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp index 986657f936..f9fbdc9430 100644 --- a/scumm/saveload.cpp +++ b/scumm/saveload.cpp @@ -178,12 +178,9 @@ bool ScummEngine::loadState(int slot, bool compat, SaveFileManager *mgr) { // ever add options for using different 16-colour palettes. if (_version == 1) { - if (_gameId == GID_MANIAC) { + if (_gameId == GID_MANIAC) setupV1ManiacPalette(); - if (_demoMode) - setPalColor(15, 252, 84, 252); - - } else + else setupV1ZakPalette(); } else if (_features & GF_16COLOR) { if ((_features & GF_AMIGA) || (_features & GF_ATARI_ST)) diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp index 279d179d70..0f898f216a 100644 --- a/scumm/script_v2.cpp +++ b/scumm/script_v2.cpp @@ -825,7 +825,7 @@ void ScummEngine_v2::o2_verbOps() { vs->verbid = verb; if (_version == 1) { if (_gameId == GID_MANIAC && _demoMode) - vs->color = 15; + vs->color = 16; else vs->color = 5; @@ -1026,7 +1026,7 @@ void ScummEngine_v2::o2_drawSentence() { _string[2].ypos = virtscr[2].topline; _string[2].xpos = 0; if (_version == 1) - _string[2].color = 4; + _string[2].color = 16; else _string[2].color = 13; diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp index c8f0915189..a986821294 100644 --- a/scumm/scummvm.cpp +++ b/scumm/scummvm.cpp @@ -1019,11 +1019,9 @@ void ScummEngine::scummInit() { for (i = 0; i < 256; i++) _roomPalette[i] = i; if (_version == 1) { - if (_gameId == GID_MANIAC) { + if (_gameId == GID_MANIAC) setupV1ManiacPalette(); - if (_demoMode) - setPalColor(15, 252, 84, 252); - } else + else setupV1ZakPalette(); } else if (_features & GF_16COLOR) { for (i = 0; i < 16; i++) diff --git a/scumm/verbs.cpp b/scumm/verbs.cpp index a2ac184317..628df63457 100644 --- a/scumm/verbs.cpp +++ b/scumm/verbs.cpp @@ -40,7 +40,7 @@ void ScummEngine::initV2MouseOver() { int arrow_color, color, hi_color; if (_version == 1) { - color = 4; + color = 16; hi_color = 7; arrow_color = 6; } else { |