diff options
author | Max Horn | 2011-05-14 16:29:28 +0200 |
---|---|---|
committer | Max Horn | 2011-05-14 16:30:31 +0200 |
commit | 47a7b65dc149149ff00baacf9fa76ce0fcaedfd2 (patch) | |
tree | 9b3dc9d52fa4c5c941c216696ac8da6ac58030ad | |
parent | dc85f5c473bebc59378dad5f99dede059d68c59d (diff) | |
download | scummvm-rg350-47a7b65dc149149ff00baacf9fa76ce0fcaedfd2.tar.gz scummvm-rg350-47a7b65dc149149ff00baacf9fa76ce0fcaedfd2.tar.bz2 scummvm-rg350-47a7b65dc149149ff00baacf9fa76ce0fcaedfd2.zip |
SCUMM: Workaround bug #1463598 (INDY3VGA: giant Henry Jones sr.)
-rw-r--r-- | engines/scumm/actor.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/engines/scumm/actor.cpp b/engines/scumm/actor.cpp index 32d1af07ba..25a26f6cf2 100644 --- a/engines/scumm/actor.cpp +++ b/engines/scumm/actor.cpp @@ -174,9 +174,21 @@ void Actor::setBox(int box) { } void Actor_v3::setupActorScale() { - // TODO: The following could probably be removed - _scalex = 0xFF; - _scaley = 0xFF; + // WORKAROUND bug #1463598: Under certain circumstances, it is possible + // for Henry Sr. to reach the front side of Castle Brunwald (following + // Indy there). But it seems the game has no small costume for Henry, + // hence he is shown as a giant, triple in size compared to Indy. + // To workaround this, we override the scale of Henry. Since V3 games + // like Indy3 don't use the costume scale otherwise, this works fine. + // The scale factor 0x50 was determined by some guess work. + if (_number == 2 && _costume == 7 && _vm->_game.id == GID_INDY3 && _vm->_currentRoom == 12) { + _scalex = 0x50; + _scaley = 0x50; + } else { + // TODO: The following could probably be removed + _scalex = 0xFF; + _scaley = 0xFF; + } } void Actor::setupActorScale() { |