aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStrangerke2015-01-31 12:42:36 +0100
committerStrangerke2015-01-31 12:42:36 +0100
commit772cbc122d4cbfc06021facaa687921a138b98ab (patch)
tree75cf5c034cf2097d224037ea25462334dbff9cff
parent1c8ecb41bde0bdaba132af3c6fc768813de6d26f (diff)
downloadscummvm-rg350-772cbc122d4cbfc06021facaa687921a138b98ab.tar.gz
scummvm-rg350-772cbc122d4cbfc06021facaa687921a138b98ab.tar.bz2
scummvm-rg350-772cbc122d4cbfc06021facaa687921a138b98ab.zip
MADS: Fix a bug in PaletteUsage::process, some renaming
-rw-r--r--engines/mads/palette.cpp22
1 files changed, 10 insertions, 12 deletions
diff --git a/engines/mads/palette.cpp b/engines/mads/palette.cpp
index 836d04f7c0..95de307f8e 100644
--- a/engines/mads/palette.cpp
+++ b/engines/mads/palette.cpp
@@ -178,31 +178,29 @@ int PaletteUsage::process(Common::Array<RGB6> &palette, uint flags) {
}
if (!changed && !noUsageFlag) {
- int var2 = (palette[palIndex]._flags & 0x20) ||
- (((flags & 0x2000) || (palette[palIndex]._flags & 0x4000)) &&
+ int bestHash = (palette[palIndex]._flags & 0x20) ||
+ (((flags & 0x2000) || (palette[palIndex]._flags & 0x40)) &&
((flags & 0x1000) || (palCount == 0))) ? 0x7fff : 1;
int var36 = (palette[palIndex]._flags & 0x80) ? 0 : 2;
for (int idx = palLow; idx < palIdx; ++idx) {
uint32 v = _vm->_palette->_palFlags[idx];
if ((v & var3A) && !(v & var36)) {
- int var10;
-
- if (var2 > 1) {
- var10 = rgbFactor(&_vm->_palette->_mainPalette[idx * 3], palette[palIndex]);
- }
- else if (_vm->_palette->_mainPalette[idx * 3] != palette[palIndex].r ||
+ int hash;
+ if (bestHash > 1) {
+ hash = rgbFactor(&_vm->_palette->_mainPalette[idx * 3], palette[palIndex]);
+ } else if (_vm->_palette->_mainPalette[idx * 3] != palette[palIndex].r ||
_vm->_palette->_mainPalette[idx * 3 + 1] != palette[palIndex].g ||
_vm->_palette->_mainPalette[idx * 3 + 2] != palette[palIndex].b) {
- var10 = 1;
+ hash = 1;
} else {
- var10 = 0;
+ hash = 0;
}
- if (var2 > var10) {
+ if (bestHash > hash) {
changed = true;
newPalIndex = idx;
- var2 = var10;
+ bestHash = hash;
}
}
}