aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra
diff options
context:
space:
mode:
authorJohannes Schickel2009-08-11 18:17:53 +0000
committerJohannes Schickel2009-08-11 18:17:53 +0000
commit712522de117ad65774150884e68be03cc3afd572 (patch)
tree1db3cc64fd678bdeabaa77410debdbaa64783f44 /engines/kyra
parentc3cdaa74108377a8fca16905659b7f571ccd410a (diff)
downloadscummvm-rg350-712522de117ad65774150884e68be03cc3afd572.tar.gz
scummvm-rg350-712522de117ad65774150884e68be03cc3afd572.tar.bz2
scummvm-rg350-712522de117ad65774150884e68be03cc3afd572.zip
Fix graphical glitches when loading saves where Brandon is in Will-O-Wisp form.
svn-id: r43285
Diffstat (limited to 'engines/kyra')
-rw-r--r--engines/kyra/saveload_lok.cpp11
-rw-r--r--engines/kyra/sequences_lok.cpp2
2 files changed, 11 insertions, 2 deletions
diff --git a/engines/kyra/saveload_lok.cpp b/engines/kyra/saveload_lok.cpp
index 2a7f300a5d..13f08715fd 100644
--- a/engines/kyra/saveload_lok.cpp
+++ b/engines/kyra/saveload_lok.cpp
@@ -182,7 +182,16 @@ Common::Error KyraEngine_LoK::loadGameState(int slot) {
}
setHandItem(_itemInHand);
- _animator->setBrandonAnimSeqSize(3, 48);
+
+ // Will-O-Wisp uses a different shape size than Brandon's usual
+ // shape, thus we need to setup the correct size depending on
+ // his state over here. This fixes graphics glitches when loading
+ // saves, where Brandon is transformed into the Will-O-Wisp.
+ if (_brandonStatusBit & 2)
+ _animator->setBrandonAnimSeqSize(5, 48);
+ else
+ _animator->setBrandonAnimSeqSize(3, 48);
+
redrawInventory(0);
_brandonPosX = _brandonPosY = -1;
diff --git a/engines/kyra/sequences_lok.cpp b/engines/kyra/sequences_lok.cpp
index e1dbd0fca3..97e37013cb 100644
--- a/engines/kyra/sequences_lok.cpp
+++ b/engines/kyra/sequences_lok.cpp
@@ -680,7 +680,7 @@ void KyraEngine_LoK::seq_makeBrandonNormal2() {
_animator->animRefreshNPC(0);
delayWithTicks(8);
}
- _animator->setBrandonAnimSeqSize(4, 48);
+ _animator->setBrandonAnimSeqSize(3, 48);
_currentCharacter->currentAnimFrame = 7;
_animator->animRefreshNPC(0);