mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-04 01:46:42 +00:00
Fix v1 zak costume colors
svn-id: r9748
This commit is contained in:
parent
99c677f2a3
commit
4c6bd7167d
@ -321,8 +321,8 @@ void CostumeRenderer::c64_ignorePakCols(int num) {
|
||||
}
|
||||
}
|
||||
|
||||
int v1_actor_palatte_1 [] = { 8, 8, 8, 8, 4, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 0 };
|
||||
int v1_actor_palatte_2 [] = { 0, 7, 2, 6, 9, 1, 3, 7, 7, 1, 1, 9, 1, 4, 5, 5, 4, 1, 0, 5, 4, 2, 2, 7, 7, 0 };
|
||||
int v1_mm_actor_palatte_1 [] = { 8, 8, 8, 8, 4, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 0 };
|
||||
int v1_mm_actor_palatte_2 [] = { 0, 7, 2, 6, 9, 1, 3, 7, 7, 1, 1, 9, 1, 4, 5, 5, 4, 1, 0, 5, 4, 2, 2, 7, 7, 0 };
|
||||
|
||||
void CostumeRenderer::procC64(int actor) {
|
||||
const byte *src;
|
||||
@ -342,12 +342,14 @@ void CostumeRenderer::procC64(int actor) {
|
||||
// TODO:
|
||||
// * test masking (once we implement any masking for V1 games)
|
||||
|
||||
byte palette[4];
|
||||
byte palette[4] = { 0, 8, 0, 0 };
|
||||
|
||||
palette[0] = 0;
|
||||
palette[1] = v1_actor_palatte_1[actor];
|
||||
palette[2] = v1_actor_palatte_2[actor];
|
||||
palette[3] = 0;
|
||||
if (_vm->_gameId == GID_MANIAC) {
|
||||
palette[1] = v1_mm_actor_palatte_1[actor];
|
||||
palette[2] = v1_mm_actor_palatte_2[actor];
|
||||
} else {
|
||||
palette[2] = _palette[0];
|
||||
}
|
||||
|
||||
v1.skip_width >>= 3;
|
||||
|
||||
@ -725,8 +727,10 @@ void CostumeRenderer::setPalette(byte *palette) {
|
||||
int i;
|
||||
byte color;
|
||||
|
||||
if (_loaded._format == 0x57)
|
||||
if (_loaded._format == 0x57) {
|
||||
_palette[0] = palette[0];
|
||||
return;
|
||||
}
|
||||
|
||||
if (_vm->_features & GF_OLD_BUNDLE) {
|
||||
if ((_vm->VAR(_vm->VAR_CURRENT_LIGHTS) & LIGHTMODE_actor_color)) {
|
||||
|
@ -372,7 +372,7 @@ int Scumm_v2::getVar() {
|
||||
return readVar(fetchScriptByte());
|
||||
}
|
||||
|
||||
int actor_speech_color[] = {1, 7, 2, 14, 8, 1, 3, 7, 7, 12, 1, 13, 1, 4, 5, 5, 4, 3, 1, 5, 1, 1, 1, 7, 7, 0};
|
||||
int v1_mm_actor_speech_color[] = {1, 7, 2, 14, 8, 1, 3, 7, 7, 12, 1, 13, 1, 4, 5, 5, 4, 3, 1, 5, 1, 1, 1, 7, 7, 0};
|
||||
|
||||
void Scumm_v2::decodeParseString() {
|
||||
byte buffer[512];
|
||||
@ -417,7 +417,7 @@ void Scumm_v2::decodeParseString() {
|
||||
|
||||
// V1 Mansion Mansion uses static color table for subtitles
|
||||
if (((_gameId == GID_MANIAC) && (_version == 1)) && _actorToPrintStrFor != 0xFF)
|
||||
_string[textSlot].color = actor_speech_color[_actorToPrintStrFor];
|
||||
_string[textSlot].color = v1_mm_actor_speech_color[_actorToPrintStrFor];
|
||||
|
||||
_messagePtr = buffer;
|
||||
switch (textSlot) {
|
||||
@ -710,7 +710,7 @@ void Scumm_v2::o2_actorSet() {
|
||||
|
||||
case 5: // Talk Color
|
||||
if ((_gameId == GID_MANIAC) && (_version == 1))
|
||||
actor_speech_color[act] = arg;
|
||||
v1_mm_actor_speech_color[act] = arg;
|
||||
else
|
||||
a->talkColor = arg;
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user