aboutsummaryrefslogtreecommitdiff
path: root/engines/prince/graphics.cpp
diff options
context:
space:
mode:
authorlukaslw2014-06-07 00:49:03 +0200
committerlukaslw2014-06-22 20:08:45 +0200
commitbc3ce22fe3a3fb6dfcf03cd230634bd6a96e5dcc (patch)
treea7590ac8fd5775ffcb6c1fca231e3cdf45f6b371 /engines/prince/graphics.cpp
parentdcd9c48906f9039d05c9545a4f90418f10aeef2a (diff)
downloadscummvm-rg350-bc3ce22fe3a3fb6dfcf03cd230634bd6a96e5dcc.tar.gz
scummvm-rg350-bc3ce22fe3a3fb6dfcf03cd230634bd6a96e5dcc.tar.bz2
scummvm-rg350-bc3ce22fe3a3fb6dfcf03cd230634bd6a96e5dcc.zip
PRINCE: getBlendTableColor() - fix for wrong colors
Diffstat (limited to 'engines/prince/graphics.cpp')
-rw-r--r--engines/prince/graphics.cpp20
1 files changed, 7 insertions, 13 deletions
diff --git a/engines/prince/graphics.cpp b/engines/prince/graphics.cpp
index 298337673f..e516cd7980 100644
--- a/engines/prince/graphics.cpp
+++ b/engines/prince/graphics.cpp
@@ -185,19 +185,14 @@ byte GraphicsMan::getBlendTableColor(byte pixelColor, byte backgroundPixelColor)
if (_blendTable[pixelColor] != 255) {
currColor = _blendTable[pixelColor];
} else {
- const byte *originalPalette = _vm->_roomBmp->getPalette(); //?
- const byte *suitcasePalette = _vm->_suitcaseBmp->getPalette(); //?
+ const byte *originalPalette = _vm->_roomBmp->getPalette();
- //debug("backgroundPixelColor: %d", backgroundPixelColor);
- //debug("orgpalette: %d", pixelColor);
- //debug("mst_shadow: %d", _vm->_mst_shadow);
-
- redFirstOrg = originalPalette[pixelColor * 4] * _vm->_mst_shadow / 256;
+ redFirstOrg = originalPalette[pixelColor * 3] * _vm->_mst_shadow / 256;
if (redFirstOrg >= 256) {
redFirstOrg = 255;
}
if (_vm->_mst_shadow <= 256) {
- redFirstBack = suitcasePalette[backgroundPixelColor * 4] * (256 - _vm->_mst_shadow) / 256;
+ redFirstBack = originalPalette[backgroundPixelColor * 3] * (256 - _vm->_mst_shadow) / 256;
if (redFirstBack >= 256) {
redFirstBack = 255;
}
@@ -207,12 +202,12 @@ byte GraphicsMan::getBlendTableColor(byte pixelColor, byte backgroundPixelColor)
}
}
- greenFirstOrg = originalPalette[pixelColor * 4 + 1] * _vm->_mst_shadow / 256;
+ greenFirstOrg = originalPalette[pixelColor * 3 + 1] * _vm->_mst_shadow / 256;
if (greenFirstOrg >= 256) {
greenFirstOrg = 255;
}
if (_vm->_mst_shadow <= 256) {
- greenFirstBack = suitcasePalette[backgroundPixelColor * 4 + 1] * (256 - _vm->_mst_shadow) / 256;
+ greenFirstBack = originalPalette[backgroundPixelColor * 3 + 1] * (256 - _vm->_mst_shadow) / 256;
if (greenFirstBack >= 256) {
greenFirstBack = 255;
}
@@ -222,12 +217,12 @@ byte GraphicsMan::getBlendTableColor(byte pixelColor, byte backgroundPixelColor)
}
}
- blueFirstOrg = originalPalette[pixelColor * 4 + 2] * _vm->_mst_shadow / 256;
+ blueFirstOrg = originalPalette[pixelColor * 3 + 2] * _vm->_mst_shadow / 256;
if (blueFirstOrg >= 256) {
blueFirstOrg = 255;
}
if (_vm->_mst_shadow <= 256) {
- blueFirstBack = suitcasePalette[backgroundPixelColor * 4 + 2] * (256 - _vm->_mst_shadow) / 256;
+ blueFirstBack = originalPalette[backgroundPixelColor * 3 + 2] * (256 - _vm->_mst_shadow) / 256;
if (blueFirstBack >= 256) {
blueFirstBack = 255;
}
@@ -265,7 +260,6 @@ byte GraphicsMan::getBlendTableColor(byte pixelColor, byte backgroundPixelColor)
}
_blendTable[pixelColor] = currColor;
}
- //debug("currColor: %d", currColor);
return currColor;
}