TRECISION: Patch invalid animation rectangles - bug #12628

This commit is contained in:
Filippos Karapetis 2021-07-14 22:17:43 +03:00
parent 58d32add42
commit 6be03a7801
2 changed files with 10 additions and 0 deletions

View File

@ -585,6 +585,8 @@ void AnimManager::syncGameStream(Common::Serializer &ser) {
ser.syncAsUint16LE(cur->_atFrame[j]._index);
}
}
patchAnimTab();
}
void AnimManager::loadAnimTab(Common::SeekableReadStreamEndian *stream) {
@ -610,6 +612,13 @@ void AnimManager::loadAnimTab(Common::SeekableReadStreamEndian *stream) {
_animTab[i]._atFrame[j]._index = stream->readUint16();
}
}
patchAnimTab();
}
void AnimManager::patchAnimTab() {
_animTab[22]._lim[3].left = 308; // Patch the brazier animation rect in kRoom28 - bug #12628
_animTab[34]._lim[0].right = 200; // Patch the terrorist animation rect in kRoom35
}
} // namespace Trecision

View File

@ -88,6 +88,7 @@ private:
void drawSmkIconFrame(uint16 startIcon, uint16 iconNum);
void drawSmkActionFrame();
void swapCD(int cd);
void patchAnimTab();
public:
Common::Rect _animRect;