diff options
| -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 13581c4b45..9ea66807f0 100644 --- a/engines/scumm/actor.cpp +++ b/engines/scumm/actor.cpp @@ -177,9 +177,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() { | 
