aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script/ai
diff options
context:
space:
mode:
authorThanasis Antoniou2019-05-23 00:27:46 +0300
committerThanasis Antoniou2019-05-23 00:30:03 +0300
commit17da1f23525f671bc51ff6991fb7c731c3b70c7a (patch)
tree001a1f5aeb83bd86a43dee1ea134c0422c53fe16 /engines/bladerunner/script/ai
parent479a1d12ca09f5378a474e573f7b64de4486677f (diff)
downloadscummvm-rg350-17da1f23525f671bc51ff6991fb7c731c3b70c7a.tar.gz
scummvm-rg350-17da1f23525f671bc51ff6991fb7c731c3b70c7a.tar.bz2
scummvm-rg350-17da1f23525f671bc51ff6991fb7c731c3b70c7a.zip
BLADERUNNER: Fix for McCoy resuming combat resting pose
In the original McCoy becomes "frozen" in a single targeting frame if shot at an enemy
Diffstat (limited to 'engines/bladerunner/script/ai')
-rw-r--r--engines/bladerunner/script/ai/mccoy.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/engines/bladerunner/script/ai/mccoy.cpp b/engines/bladerunner/script/ai/mccoy.cpp
index 1fd268451f..070c3f200b 100644
--- a/engines/bladerunner/script/ai/mccoy.cpp
+++ b/engines/bladerunner/script/ai/mccoy.cpp
@@ -767,6 +767,8 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
break;
case 17:
+ // this is just frame 0 always, McCoy doesn't animated shoot in this animation State
+ // animation state 21 is for the full shooting animation
*animation = kModelAnimationMcCoyWithGunShooting;
_animationFrame = 0;
// weird, but thats in game code
@@ -809,6 +811,12 @@ bool AIScriptMcCoy::UpdateAnimation(int *animation, int *frame) {
_animationState = 17;
_animationFrame = 0;
*animation = kModelAnimationMcCoyWithGunShooting;
+#if BLADERUNNER_ORIGINAL_BUGS
+#else
+ // Resume combat idle position even when shot at a target -- if it's no longer a target (dead or moved)
+ ChangeAnimationMode(kAnimationModeCombatIdle);
+#endif // BLADERUNNER_ORIGINAL_BUGS
+
if (Actor_Query_Goal_Number(kActorMcCoy) == kGoalMcCoyNR11Shoot) {
_animationFrame = 0;
_animationState = 21;