aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Frühwirth2018-01-23 01:09:31 +0100
committerEugene Sandulenko2018-01-31 18:36:03 +0100
commit7485fc3f754a0faabf6fe99d0205cdbbabd0d526 (patch)
tree7c2aaa80d2dfa6bfd7668aa50655dfa9641d1b14
parent321a563a315898dcb8f8d0d0776c7c450d6e9caa (diff)
downloadscummvm-rg350-7485fc3f754a0faabf6fe99d0205cdbbabd0d526.tar.gz
scummvm-rg350-7485fc3f754a0faabf6fe99d0205cdbbabd0d526.tar.bz2
scummvm-rg350-7485fc3f754a0faabf6fe99d0205cdbbabd0d526.zip
TUCKER: Fix color cycling in submarine room
Fixes Trac#6378.
-rw-r--r--engines/tucker/locations.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/engines/tucker/locations.cpp b/engines/tucker/locations.cpp
index b5fb10c59e..e337279694 100644
--- a/engines/tucker/locations.cpp
+++ b/engines/tucker/locations.cpp
@@ -1791,11 +1791,14 @@ void TuckerEngine::execData3PreUpdate_locationNum29() {
const int d = _updateLocationFadePaletteCounter / 2;
uint8 scrollPal[5 * 3];
for (int i = 0; i < 5; ++i) {
- scrollPal[i * 3] = r[i + d];
- scrollPal[i * 3 + 1] = g[i + d];
- scrollPal[i * 3 + 2] = b[i + d];
+ // TODO: Why is this needed? 6-bit colors?
+ // Bug Trac#6378. Shift the palette two bits to the left.
+ scrollPal[i * 3 + 0] = r[i + d] << 2;
+ scrollPal[i * 3 + 1] = g[i + d] << 2;
+ scrollPal[i * 3 + 2] = b[i + d] << 2;
}
_system->getPaletteManager()->setPalette(scrollPal, 118, 5);
+
if (_flagsTable[143] == 1) {
_locationObjectsTable[2]._xPos = 999;
_locationObjectsTable[3]._xPos = 187;