diff options
author | Gregory Montoir | 2009-10-11 09:26:36 +0000 |
---|---|---|
committer | Gregory Montoir | 2009-10-11 09:26:36 +0000 |
commit | fc775204298965851279ca69a7628ee73107b442 (patch) | |
tree | f4cb2782295bcce66af2a30b7fe94bedf5898b2c /engines | |
parent | d971b0737a76ed58678fc41b9efcb8cab8a8999f (diff) | |
download | scummvm-rg350-fc775204298965851279ca69a7628ee73107b442.tar.gz scummvm-rg350-fc775204298965851279ca69a7628ee73107b442.tar.bz2 scummvm-rg350-fc775204298965851279ca69a7628ee73107b442.zip |
TUCKER: fix original game glitch (tracker item #2872385 - Fish swims out of aquarium)
svn-id: r44899
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tucker/tucker.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/tucker/tucker.cpp b/engines/tucker/tucker.cpp index c0bf40c375..704cbf4dda 100644 --- a/engines/tucker/tucker.cpp +++ b/engines/tucker/tucker.cpp @@ -1228,6 +1228,13 @@ void TuckerEngine::updateData3() { a->animCurrentCounter = a->animInitCounter; a->drawFlag = 0; } + if (_locationNum == 24 && i == 0) { + // workaround bug #2872385: update fish animation sequence for correct + // position in aquarium. + if (a->animInitCounter == 505 && a->animCurrentCounter == 513) { + a->animCurrentCounter = 525; + } + } a->graphicNum = _staticData3Table[a->animCurrentCounter]; } } @@ -1528,9 +1535,9 @@ void TuckerEngine::updateSoundsTypes3_4() { void TuckerEngine::drawData3() { for (int i = 0; i < _locationAnimationsCount; ++i) { - int num = _locationAnimationsTable[i].graphicNum; - const Data *d = &_dataTable[num]; if (_locationAnimationsTable[i].drawFlag != 0) { + int num = _locationAnimationsTable[i].graphicNum; + const Data *d = &_dataTable[num]; Graphics::decodeRLE(_locationBackgroundGfxBuf + d->yDest * 640 + d->xDest, _data3GfxBuf + d->sourceOffset, d->xSize, d->ySize); addDirtyRect(d->xDest, d->yDest, d->xSize, d->ySize); } |