[Scummvm-git-logs] scummvm master -> f962fcaf67bf942929f98a0e6580d9dc3fc9f3b8
antoniou79
a.antoniou79 at gmail.com
Tue Dec 15 14:27:38 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
f962fcaf67 BLADERUNNER: Describe more character animations
Commit: f962fcaf67bf942929f98a0e6580d9dc3fc9f3b8
https://github.com/scummvm/scummvm/commit/f962fcaf67bf942929f98a0e6580d9dc3fc9f3b8
Author: antoniou79 (a.antoniou79 at gmail.com)
Date: 2020-12-15T16:24:22+02:00
Commit Message:
BLADERUNNER: Describe more character animations
EarlyQBartender, Hanoi, Hawker's barkeeper, Holloway, Moraji, Photographer, Rajif, Sgt Walls, Tyrell
Also described shooshine man's animations but he is unused as of yet.
Changed paths:
engines/bladerunner/game_constants.h
engines/bladerunner/script/ai/early_q_bartender.cpp
engines/bladerunner/script/ai/hanoi.cpp
engines/bladerunner/script/ai/hawkers_barkeep.cpp
engines/bladerunner/script/ai/holloway.cpp
engines/bladerunner/script/ai/mccoy.cpp
engines/bladerunner/script/ai/moraji.cpp
engines/bladerunner/script/ai/photographer.cpp
engines/bladerunner/script/ai/rajif.cpp
engines/bladerunner/script/ai/sergeant_walls.cpp
engines/bladerunner/script/ai/tyrell.cpp
engines/bladerunner/script/ai_script.h
diff --git a/engines/bladerunner/game_constants.h b/engines/bladerunner/game_constants.h
index 1dd39c4be7..5caa2e9366 100644
--- a/engines/bladerunner/game_constants.h
+++ b/engines/bladerunner/game_constants.h
@@ -2374,23 +2374,83 @@ enum GameModelAnimations {
kModelAnimationMurrayMoreExplainTalk = 703,
kModelAnimationMurrayCautionTalk = 704,
// 705 - 715: Hawker's Barkeep animations
- // TODO
+ kModelAnimationHawkersBarkeepIdle = 705,
+ kModelAnimationHawkersBarkeepCleaningBar = 706,
+ kModelAnimationHawkersBarkeepWipingGlasses = 707,
+ kModelAnimationHawkersBarkeepGestureGive = 708,
+ kModelAnimationHawkersBarkeepGiveMoonshine = 709,
+ kModelAnimationHawkersBarkeepCalmTalk = 710,
+ kModelAnimationHawkersBarkeepExplainTalk = 711,
+ kModelAnimationHawkersBarkeepBentsAndWipesTalk = 712,
+ kModelAnimationHawkersBarkeepAltGestureGiveTalk = 713, // similar to 708, kind of bents more
+ kModelAnimationHawkersBarkeepBentingTalk = 714,
+ kModelAnimationHawkersBarkeepBentingAndDismissTalk = 715,
// 716 - 721: Holloway animations
- // TODO
+ kModelAnimationHollowayWalking = 716,
+ kModelAnimationHollowayIdle = 717,
+ kModelAnimationHollowaySlightHeadMove = 718, // UNUSED
+ kModelAnimationHollowayGlobAttack = 719,
+ kModelAnimationHollowayCalmTalk = 720,
+ kModelAnimationHollowayExplainTalk = 721,
// 722 - 731: Sergeant Walls animations
- // TODO
+ kModelAnimationSergeantWallsIdle = 722,
+ kModelAnimationSergeantWallsScratchHead = 723, // UNUSED
+ kModelAnimationSergeantWallsGestureGive = 724,
+ kModelAnimationSergeantWallsCalmTalk = 725,
+ kModelAnimationSergeantWallsMoreHeadMoveTalk = 726,
+ kModelAnimationSergeantWallsExplainTalk = 727,
+ kModelAnimationSergeantWallsLaughTalk = 728,
+ kModelAnimationSergeantWallsHarderLaughTalk = 729,
+ kModelAnimationSergeantWallsDefendTalk = 730,
+ kModelAnimationSergeantWallsHitsBuzzerTalk = 731,
// 732 - 743: Moraji animations
- // TODO
+ // In all Moraji's animations except 742, 743, he still has the cuff on his left hand
+ kModelAnimationMorajiRunning = 732,
+ kModelAnimationMorajiCuffedIdle = 733,
+ kModelAnimationMorajiCuffedFastTalk = 734,
+ kModelAnimationMorajiCuffedMoreFastTalk = 735,
+ kModelAnimationMorajiCuffedPointingTalk = 736,
+ kModelAnimationMorajiCuffedSomethingExplodingToHisLeft = 737, // McCoy shooting at cuffs
+ kModelAnimationMorajiCuffedShotDead = 738,
+ kModelAnimationMorajiRunningDivesForward = 739,
+ kModelAnimationMorajiLayingForwardTalk = 740,
+ kModelAnimationMorajiLayingForwardDies = 741,
+ kModelAnimationMorajiSittingGetsUp = 742, // no cuff here
+ kModelAnimationMorajiStandingUpUrgentTalk = 743, // UNUSED - no cuff here either
// 744 - 750: Photographer animations
- // TODO
+ kModelAnimationPhotographerWalking = 744,
+ kModelAnimationPhotographerIdle = 745,
+ kModelAnimationPhotographerTakingAPhoto = 746,
+ kModelAnimationPhotographerCalmTalk = 747,
+ kModelAnimationPhotographerMoreHeadMoveTalk = 748, // UNUSED - RESTORED
+ kModelAnimationPhotographerExplainTalk = 749,
+ kModelAnimationPhotographerSuggestTalk = 750,
// 751: Rajif animations
- // TODO
+ kModelAnimationRajifWithGunIdle = 751,
// 752 - 757: EarlyQ Bartender animations
- // TODO
+ kModelAnimationEarlyQBartenderWipingGlassIdle = 752,
+ kModelAnimationEarlyQBartenderWipingTable = 753,
+ kModelAnimationEarlyQBartenderPuttingAGlassOnTable = 754,
+ kModelAnimationEarlyQBartenderCalmTalk = 755,
+ kModelAnimationEarlyQBartenderExplainTalk = 756, // UNUSED - RESTORED
+ kModelAnimationEarlyQBartenderDescribeTalk = 757,
// 758 - 764: Shoeshine Man animations (UNUSED)
- // TODO
- // 765 - 772: Tyrell animations
- // TODO
+ kModelAnimationShoeshineManWalking = 758, // UNUSED
+ kModelAnimationShoeshineManSitsIdle = 759, // UNUSED
+ kModelAnimationShoeshineManSitsGestureGive = 760, // UNUSED
+ kModelAnimationShoeshineManSitsCalmTalk = 761, // UNUSED
+ kModelAnimationShoeshineManSitsMoreHeadMoveTalk = 762, // UNUSED
+ kModelAnimationShoeshineManSitsViolentHeadMove = 763, // UNUSED - Coughs? Spits? Talks?
+ kModelAnimationShoeshineManSitsGetsUp = 764, // UNUSED
+ // 765 - 772: Tyrell animations // TODO
+ kModelAnimationTyrellWalking = 765,
+ kModelAnimationTyrellIdle = 766,
+ kModelAnimationTyrellHeadMoveIdle = 767,
+ kModelAnimationTyrellFastNodTalk = 768,
+ kModelAnimationTyrellSuggestTalk = 769,
+ kModelAnimationTyrellConsideringTalk = 770,
+ kModelAnimationTyrellBowsAndSuggestsTalk = 771,
+ kModelAnimationTyrellDismissTalk = 772,
// 773 - 787: Chew animations
// TODO
// 788 - 804: Gaff animations
diff --git a/engines/bladerunner/script/ai/early_q_bartender.cpp b/engines/bladerunner/script/ai/early_q_bartender.cpp
index c55d6e7577..53ba395e71 100644
--- a/engines/bladerunner/script/ai/early_q_bartender.cpp
+++ b/engines/bladerunner/script/ai/early_q_bartender.cpp
@@ -26,7 +26,8 @@ namespace BladeRunner {
AIScriptEarlyQBartender::AIScriptEarlyQBartender(BladeRunnerEngine *vm) : AIScriptBase(vm) {
_resumeIdleAfterFramesetCompletesFlag = false;
- _var1 = 0;
+ // _varChooseIdleAnimation can have valid values: 0, 1
+ _varChooseIdleAnimation = 0;
_var2 = 1;
}
@@ -37,7 +38,7 @@ void AIScriptEarlyQBartender::Initialize() {
_animationNext = 0;
_resumeIdleAfterFramesetCompletesFlag = false;
- _var1 = 0;
+ _varChooseIdleAnimation = 0;
_var2 = 1;
Actor_Put_In_Set(kActorEarlyQBartender, kSetNR05_NR08);
@@ -103,8 +104,8 @@ bool AIScriptEarlyQBartender::GoalChanged(int currentGoalNumber, int newGoalNumb
bool AIScriptEarlyQBartender::UpdateAnimation(int *animation, int *frame) {
switch (_animationState) {
case 0:
- if (_var1 == 1) {
- *animation = 753;
+ if (_varChooseIdleAnimation == 1) {
+ *animation = kModelAnimationEarlyQBartenderWipingTable;
if (_animationFrame <= 5) {
_var2 = 1;
}
@@ -113,63 +114,74 @@ bool AIScriptEarlyQBartender::UpdateAnimation(int *animation, int *frame) {
_var2 = -1;
}
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(753)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationEarlyQBartenderWipingTable)) {
_animationFrame = 0;
- _var1 = 0;
+ _varChooseIdleAnimation = 0;
}
- } else if (_var1 == 0) {
- *animation = 752;
+ } else if (_varChooseIdleAnimation == 0) {
+ *animation = kModelAnimationEarlyQBartenderWipingGlassIdle;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(752)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationEarlyQBartenderWipingGlassIdle)) {
_animationFrame = 0;
if (!Random_Query(0, 6)) {
- _var1 = 1;
+ _varChooseIdleAnimation = 1;
}
}
}
break;
case 1:
- *animation = 755;
+ *animation = kModelAnimationEarlyQBartenderCalmTalk;
if (_animationFrame == 0 && _resumeIdleAfterFramesetCompletesFlag) {
_animationState = 0;
- _var1 = 0;
+ _varChooseIdleAnimation = 0;
} else {
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(755)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationEarlyQBartenderCalmTalk)) {
_animationFrame = 0;
}
}
break;
case 2:
- *animation = 757;
+#if BLADERUNNER_ORIGINAL_BUGS
+ // TODO A bug? This is identical to case 3 for animation 757, but 756 talk animation is left unused
+ *animation = kModelAnimationEarlyQBartenderDescribeTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(757)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationEarlyQBartenderDescribeTalk)) {
_animationFrame = 0;
_animationState = 1;
- *animation = 755;
+ *animation = kModelAnimationEarlyQBartenderCalmTalk;
}
+#else
+ *animation = kModelAnimationEarlyQBartenderExplainTalk;
+ ++_animationFrame;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationEarlyQBartenderExplainTalk)) {
+ _animationFrame = 0;
+ _animationState = 1;
+ *animation = kModelAnimationEarlyQBartenderCalmTalk;
+ }
+#endif
break;
case 3:
- *animation = 757;
+ *animation = kModelAnimationEarlyQBartenderDescribeTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(757)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationEarlyQBartenderDescribeTalk)) {
_animationFrame = 0;
_animationState = 1;
- *animation = 755;
+ *animation = kModelAnimationEarlyQBartenderCalmTalk;
}
break;
case 4:
- *animation = 754;
+ *animation = kModelAnimationEarlyQBartenderPuttingAGlassOnTable;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(754)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationEarlyQBartenderPuttingAGlassOnTable)) {
Actor_Change_Animation_Mode(kActorEarlyQBartender, kAnimationModeIdle);
- *animation = 752;
+ *animation = kModelAnimationEarlyQBartenderWipingGlassIdle;
_animationFrame = 0;
_animationState = 0;
}
@@ -188,7 +200,7 @@ bool AIScriptEarlyQBartender::ChangeAnimationMode(int mode) {
case 0:
_animationState = 0;
_animationFrame = 0;
- _var1 = 0;
+ _varChooseIdleAnimation = 0;
_var2 = 1;
break;
diff --git a/engines/bladerunner/script/ai/hanoi.cpp b/engines/bladerunner/script/ai/hanoi.cpp
index 94f53328c3..2ee548c9d7 100644
--- a/engines/bladerunner/script/ai/hanoi.cpp
+++ b/engines/bladerunner/script/ai/hanoi.cpp
@@ -715,6 +715,8 @@ bool AIScriptHanoi::ChangeAnimationMode(int mode) {
break;
case 16:
+ // Used when Hanoi says "You're real cute" to McCoy (in NR03),
+ // when McCoy first tries to sit on the rotating couch
#if BLADERUNNER_ORIGINAL_BUGS
// TODO a bug? uses kModelAnimationHanoiSlightBowingTalk (654) again like case 15
_animationStateNext = 18;
@@ -733,6 +735,7 @@ bool AIScriptHanoi::ChangeAnimationMode(int mode) {
break;
case kAnimationModeHit:
+ // fall through
case kAnimationModeCombatHit:
_animationState = 12;
_animationFrame = 0;
diff --git a/engines/bladerunner/script/ai/hawkers_barkeep.cpp b/engines/bladerunner/script/ai/hawkers_barkeep.cpp
index 69ba3b6728..4728075dac 100644
--- a/engines/bladerunner/script/ai/hawkers_barkeep.cpp
+++ b/engines/bladerunner/script/ai/hawkers_barkeep.cpp
@@ -25,8 +25,9 @@
namespace BladeRunner {
AIScriptHawkersBarkeep::AIScriptHawkersBarkeep(BladeRunnerEngine *vm) : AIScriptBase(vm) {
- _var1 = 0;
- _var2 = 0;
+ // _varChooseIdleAnimation can have valid values: 0, 1, 2s
+ _varChooseIdleAnimation = 0;
+ _varNumOfTimesToHoldCurrentFrame = 0;
_var3 = 1;
_resumeIdleAfterFramesetCompletesFlag = false;
}
@@ -37,8 +38,8 @@ void AIScriptHawkersBarkeep::Initialize() {
_animationStateNext = 0;
_animationNext = 0;
- _var1 = 0;
- _var2 = 0;
+ _varChooseIdleAnimation = 0;
+ _varNumOfTimesToHoldCurrentFrame = 0;
_var3 = 1;
_resumeIdleAfterFramesetCompletesFlag = false;
@@ -119,11 +120,11 @@ bool AIScriptHawkersBarkeep::GoalChanged(int currentGoalNumber, int newGoalNumbe
bool AIScriptHawkersBarkeep::UpdateAnimation(int *animation, int *frame) {
switch (_animationState) {
case 0:
- if (_var1 == 0) {
- *animation = 705;
+ if (_varChooseIdleAnimation == 0) {
+ *animation = kModelAnimationHawkersBarkeepIdle;
- if (_var2) {
- --_var2;
+ if (_varNumOfTimesToHoldCurrentFrame > 0) {
+ --_varNumOfTimesToHoldCurrentFrame;
if (Random_Query(0, 6) == 0) {
_var3 = -_var3;
@@ -131,34 +132,34 @@ bool AIScriptHawkersBarkeep::UpdateAnimation(int *animation, int *frame) {
} else {
_animationFrame += _var3;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(705))
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepIdle))
_animationFrame = 0;
if (_animationFrame < 0)
- _animationFrame = Slice_Animation_Query_Number_Of_Frames(705) - 1;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepIdle) - 1;
if (!Random_Query(0, 4))
- _var2 = 1;
+ _varNumOfTimesToHoldCurrentFrame = 1;
if (_animationFrame == 13 || _animationFrame == 5 || _animationFrame == 9)
- _var2 = Random_Query(2, 8);
+ _varNumOfTimesToHoldCurrentFrame = Random_Query(2, 8);
if (!Random_Query(0, 5)) {
if (_animationFrame == 0 || _animationFrame == 11) {
_animationFrame = 0;
if (Random_Query(0, 1)) {
- *animation = 706;
- _var1 = 1;
+ *animation = kModelAnimationHawkersBarkeepCleaningBar;
+ _varChooseIdleAnimation = 1;
} else {
- *animation = 707;
- _var1 = 2;
+ *animation = kModelAnimationHawkersBarkeepWipingGlasses;
+ _varChooseIdleAnimation = 2;
}
}
}
}
- } else if (_var1 == 1) {
- *animation = 706;
+ } else if (_varChooseIdleAnimation == 1) {
+ *animation = kModelAnimationHawkersBarkeepCleaningBar;
if (_animationFrame <= 3)
_var3 = 1;
@@ -169,18 +170,18 @@ bool AIScriptHawkersBarkeep::UpdateAnimation(int *animation, int *frame) {
_animationFrame += _var3;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(706)) {
- *animation = 705;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepCleaningBar)) {
+ *animation = kModelAnimationHawkersBarkeepIdle;
_animationFrame = 0;
- _var1 = 0;
+ _varChooseIdleAnimation = 0;
}
- } else if (_var1 == 2) {
- *animation = 707;
+ } else if (_varChooseIdleAnimation == 2) {
+ *animation = kModelAnimationHawkersBarkeepWipingGlasses;
- if (_var2) {
- --_var2;
+ if (_varNumOfTimesToHoldCurrentFrame > 0) {
+ --_varNumOfTimesToHoldCurrentFrame;
- if (_var2 == 0)
+ if (_varNumOfTimesToHoldCurrentFrame == 0)
_var3 = 2 * Random_Query(0, 1) - 1;
} else {
if (_animationFrame <= 11)
@@ -193,39 +194,39 @@ bool AIScriptHawkersBarkeep::UpdateAnimation(int *animation, int *frame) {
}
if (_animationFrame == 18) {
- _var2 = Random_Query(5, 15);
+ _varNumOfTimesToHoldCurrentFrame = Random_Query(5, 15);
}
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(707)) {
- *animation = 705;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepWipingGlasses)) {
+ *animation = kModelAnimationHawkersBarkeepIdle;
_animationFrame = 0;
- _var1 = 0;
- _var2 = 0;
+ _varChooseIdleAnimation = 0;
+ _varNumOfTimesToHoldCurrentFrame = 0;
}
}
}
break;
case 1:
- if (_var1 == 0) {
+ if (_varChooseIdleAnimation == 0) {
_animationFrame = 0;
_animationState = _animationStateNext;
*animation = _animationNext;
- } else if (_var1 == 1) {
- *animation = 706;
+ } else if (_varChooseIdleAnimation == 1) {
+ *animation = kModelAnimationHawkersBarkeepCleaningBar;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(706)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepCleaningBar)) {
_animationFrame = 0;
_animationState = _animationStateNext;
*animation = _animationNext;
}
- } else if (_var1 == 2) {
- *animation = 707;
+ } else if (_varChooseIdleAnimation == 2) {
+ *animation = kModelAnimationHawkersBarkeepWipingGlasses;
_animationFrame += 2;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(707)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepWipingGlasses)) {
_animationFrame = 0;
_animationState = _animationStateNext;
*animation = _animationNext;
@@ -235,92 +236,92 @@ bool AIScriptHawkersBarkeep::UpdateAnimation(int *animation, int *frame) {
break;
case 2:
- *animation = 710;
+ *animation = kModelAnimationHawkersBarkeepCalmTalk;
if (_animationFrame == 0 && _resumeIdleAfterFramesetCompletesFlag) {
_animationState = 0;
- _var1 = 0;
+ _varChooseIdleAnimation = 0;
} else {
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(710)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepCalmTalk)) {
_animationFrame = 0;
}
}
break;
case 3:
- *animation = 711;
+ *animation = kModelAnimationHawkersBarkeepExplainTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(711)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepExplainTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 710;
+ *animation = kModelAnimationHawkersBarkeepCalmTalk;
}
break;
case 4:
- *animation = 712;
+ *animation = kModelAnimationHawkersBarkeepBentsAndWipesTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(712)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepBentsAndWipesTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 710;
+ *animation = kModelAnimationHawkersBarkeepCalmTalk;
}
break;
case 5:
- *animation = 713;
+ *animation = kModelAnimationHawkersBarkeepAltGestureGiveTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(713)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepAltGestureGiveTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 710;
+ *animation = kModelAnimationHawkersBarkeepCalmTalk;
}
break;
case 6:
- *animation = 714;
+ *animation = kModelAnimationHawkersBarkeepBentingTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(714)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepBentingTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 710;
+ *animation = kModelAnimationHawkersBarkeepCalmTalk;
}
break;
case 7:
- *animation = 715;
+ *animation = kModelAnimationHawkersBarkeepBentingAndDismissTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(715)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepBentingAndDismissTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 710;
+ *animation = kModelAnimationHawkersBarkeepCalmTalk;
}
break;
case 8:
- *animation = 708;
+ *animation = kModelAnimationHawkersBarkeepGestureGive;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(708)) {
- *animation = 705;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepGestureGive)) {
+ *animation = kModelAnimationHawkersBarkeepIdle;
_animationFrame = 0;
_animationState = 0;
}
break;
case 9:
- *animation = 709;
+ *animation = kModelAnimationHawkersBarkeepGiveMoonshine;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(709)) {
- *animation = 705;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHawkersBarkeepGiveMoonshine)) {
+ *animation = kModelAnimationHawkersBarkeepIdle;
_animationFrame = 0;
_animationState = 0;
}
@@ -353,7 +354,7 @@ bool AIScriptHawkersBarkeep::ChangeAnimationMode(int mode) {
} else {
_animationState = 1;
_animationStateNext = 2;
- _animationNext = 710;
+ _animationNext = kModelAnimationHawkersBarkeepCalmTalk;
}
_resumeIdleAfterFramesetCompletesFlag = false;
break;
@@ -365,7 +366,7 @@ bool AIScriptHawkersBarkeep::ChangeAnimationMode(int mode) {
} else {
_animationState = 1;
_animationStateNext = 3;
- _animationNext = 711;
+ _animationNext = kModelAnimationHawkersBarkeepExplainTalk;
}
_resumeIdleAfterFramesetCompletesFlag = false;
break;
@@ -377,7 +378,7 @@ bool AIScriptHawkersBarkeep::ChangeAnimationMode(int mode) {
} else {
_animationState = 1;
_animationStateNext = 4;
- _animationNext = 712;
+ _animationNext = kModelAnimationHawkersBarkeepBentsAndWipesTalk;
}
_resumeIdleAfterFramesetCompletesFlag = false;
break;
@@ -389,7 +390,7 @@ bool AIScriptHawkersBarkeep::ChangeAnimationMode(int mode) {
} else {
_animationState = 1;
_animationStateNext = 5;
- _animationNext = 713;
+ _animationNext = kModelAnimationHawkersBarkeepAltGestureGiveTalk;
}
_resumeIdleAfterFramesetCompletesFlag = false;
break;
@@ -401,7 +402,7 @@ bool AIScriptHawkersBarkeep::ChangeAnimationMode(int mode) {
} else {
_animationState = 1;
_animationStateNext = 6;
- _animationNext = 714;
+ _animationNext = kModelAnimationHawkersBarkeepBentingTalk;
}
_resumeIdleAfterFramesetCompletesFlag = false;
break;
@@ -413,7 +414,7 @@ bool AIScriptHawkersBarkeep::ChangeAnimationMode(int mode) {
} else {
_animationState = 1;
_animationStateNext = 7;
- _animationNext = 715;
+ _animationNext = kModelAnimationHawkersBarkeepBentingAndDismissTalk;
}
_resumeIdleAfterFramesetCompletesFlag = false;
break;
diff --git a/engines/bladerunner/script/ai/holloway.cpp b/engines/bladerunner/script/ai/holloway.cpp
index 33fd90328c..ec26fe535a 100644
--- a/engines/bladerunner/script/ai/holloway.cpp
+++ b/engines/bladerunner/script/ai/holloway.cpp
@@ -206,15 +206,15 @@ bool AIScriptHolloway::GoalChanged(int currentGoalNumber, int newGoalNumber) {
bool AIScriptHolloway::UpdateAnimation(int *animation, int *frame) {
switch (_animationState) {
case 0:
- *animation = 717;
+ *animation = kModelAnimationHollowayIdle;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(717)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHollowayIdle)) {
_animationFrame = 0;
}
break;
case 1:
- *animation = 719;
+ *animation = kModelAnimationHollowayGlobAttack;
++_animationFrame;
if (_animationFrame == 9) {
@@ -225,72 +225,48 @@ bool AIScriptHolloway::UpdateAnimation(int *animation, int *frame) {
Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeDie);
}
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(719)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHollowayGlobAttack)) {
Actor_Change_Animation_Mode(kActorHolloway, kAnimationModeIdle);
_animationFrame = 0;
_animationState = 0;
- *animation = 717;
+ *animation = kModelAnimationHollowayIdle;
Actor_Set_Goal_Number(kActorHolloway, kGoalHollowayPrepareCaptureMcCoy);
}
break;
case 2:
if (_animationFrame == 0 && _resumeIdleAfterFramesetCompletesFlag) {
- *animation = 717;
+ *animation = kModelAnimationHollowayIdle;
_animationState = 0;
} else {
- *animation = 720;
+ *animation = kModelAnimationHollowayCalmTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(720)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHollowayCalmTalk)) {
_animationFrame = 0;
}
}
break;
case 3:
- *animation = 721;
- ++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(721)) {
- _animationFrame = 0;
- _animationState = 2;
- *animation = 720;
- }
- break;
-
+ // fall through
case 4:
- *animation = 721;
- ++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(721)) {
- _animationFrame = 0;
- _animationState = 2;
- *animation = 720;
- }
- break;
-
+ // fall through
case 5:
- *animation = 721;
- ++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(721)) {
- _animationFrame = 0;
- _animationState = 2;
- *animation = 720;
- }
- break;
-
+ // fall through
case 6:
- *animation = 721;
+ *animation = kModelAnimationHollowayExplainTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(721)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHollowayExplainTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 720;
+ *animation = kModelAnimationHollowayCalmTalk;
}
break;
case 7:
- *animation = 716;
+ *animation = kModelAnimationHollowayWalking;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(716)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationHollowayWalking)) {
_animationFrame = 0;
}
break;
diff --git a/engines/bladerunner/script/ai/mccoy.cpp b/engines/bladerunner/script/ai/mccoy.cpp
index d3983e3d73..4df9ff34d8 100644
--- a/engines/bladerunner/script/ai/mccoy.cpp
+++ b/engines/bladerunner/script/ai/mccoy.cpp
@@ -379,7 +379,7 @@ bool AIScriptMcCoy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
case kGoalMcCoyBB11GetUp:
Actor_Set_At_Waypoint(kActorMcCoy, 315, 263);
_animationState = 53;
- _animationFrame = Slice_Animation_Query_Number_Of_Frames(18) - 1;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(kModelAnimationMcCoyFallsOnHisBack) - 1;
Actor_Set_Invisible(kActorMcCoy, false);
return true;
@@ -404,7 +404,7 @@ bool AIScriptMcCoy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Actor_Set_Goal_Number(kActorMcCoy, kGoalMcCoyNR01LayDrugged);
} else {
_animationState = 53;
- _animationFrame = Slice_Animation_Query_Number_Of_Frames(18) - 1;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(kModelAnimationMcCoyFallsOnHisBack) - 1;
// redundant?
Actor_Set_Invisible(kActorMcCoy, false);
}
@@ -430,7 +430,7 @@ bool AIScriptMcCoy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
Player_Gains_Control();
Scene_Exits_Disable();
_animationState = 68;
- _animationFrame = Slice_Animation_Query_Number_Of_Frames(18) - 1;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(kModelAnimationMcCoyFallsOnHisBack) - 1;
return true;
case kGoalMcCoyNR04Drink:
@@ -526,7 +526,7 @@ bool AIScriptMcCoy::GoalChanged(int currentGoalNumber, int newGoalNumber) {
&& _animationState != 50
) {
_animationState = 50;
- _animationFrame = Slice_Animation_Query_Number_Of_Frames(18) - 1;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(kModelAnimationMcCoyFallsOnHisBack) - 1;
}
return true;
@@ -1927,7 +1927,7 @@ bool AIScriptMcCoy::ChangeAnimationMode(int mode) {
case 68:
_animationState = 29;
- _animationFrame = Slice_Animation_Query_Number_Of_Frames(18) - 1;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(kModelAnimationMcCoyFallsOnHisBack) - 1;
_animationLoopDirection = -1;
break;
diff --git a/engines/bladerunner/script/ai/moraji.cpp b/engines/bladerunner/script/ai/moraji.cpp
index 67ec1866fa..d5260602ac 100644
--- a/engines/bladerunner/script/ai/moraji.cpp
+++ b/engines/bladerunner/script/ai/moraji.cpp
@@ -26,7 +26,7 @@ namespace BladeRunner {
AIScriptMoraji::AIScriptMoraji(BladeRunnerEngine *vm) : AIScriptBase(vm) {
_var1 = 1;
- _var2 = 0;
+ _varNumOfTimesToHoldCurrentFrame = 0;
}
void AIScriptMoraji::Initialize() {
@@ -36,7 +36,7 @@ void AIScriptMoraji::Initialize() {
_animationNext = 0;
_var1 = 1;
- _var2 = 0;
+ _varNumOfTimesToHoldCurrentFrame = 0;
Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiDefault);
}
@@ -236,9 +236,9 @@ bool AIScriptMoraji::GoalChanged(int currentGoalNumber, int newGoalNumber) {
bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
switch (_animationState) {
case 0:
- *animation = 733;
- if (_var2) {
- --_var2;
+ *animation = kModelAnimationMorajiCuffedIdle;
+ if (_varNumOfTimesToHoldCurrentFrame > 0) {
+ --_varNumOfTimesToHoldCurrentFrame;
} else {
_animationFrame += _var1;
if (Random_Query(0, 10) == 0) {
@@ -250,7 +250,7 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
if (_animationFrame < 0) {
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
}
- _var2 = Random_Query(0, 1);
+ _varNumOfTimesToHoldCurrentFrame = Random_Query(0, 1);
}
break;
@@ -261,16 +261,17 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
break;
case 2:
- *animation = 290;
+ // Dummy placeholder, kModelAnimationIzoWalking (290) is an Izo animation
+ *animation = kModelAnimationIzoWalking;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(290))
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationIzoWalking))
_animationFrame = 0;
break;
case 3:
- *animation = 732;
+ *animation = kModelAnimationMorajiRunning;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(732))
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiRunning))
_animationFrame = 0;
break;
@@ -278,41 +279,41 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
break;
case 5:
- *animation = 734;
+ *animation = kModelAnimationMorajiCuffedFastTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(734)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiCuffedFastTalk)) {
_animationFrame = 0;
_animationState = Random_Query(0, 2) + 5;
}
break;
case 6:
- *animation = 735;
+ *animation = kModelAnimationMorajiCuffedMoreFastTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(735)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiCuffedMoreFastTalk)) {
_animationFrame = 0;
_animationState = 5;
- *animation = 735;
+ *animation = kModelAnimationMorajiCuffedMoreFastTalk;
}
break;
case 7:
- *animation = 736;
+ *animation = kModelAnimationMorajiCuffedPointingTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(736)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiCuffedPointingTalk)) {
_animationFrame = 0;
_animationState = 5;
- *animation = 736;
+ *animation = kModelAnimationMorajiCuffedPointingTalk;
}
break;
case 8:
- *animation = 737;
+ *animation = kModelAnimationMorajiCuffedSomethingExplodingToHisLeft;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(737)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiCuffedSomethingExplodingToHisLeft)) {
_animationFrame = 0;
_animationState = 0;
- *animation = 733;
+ *animation = kModelAnimationMorajiCuffedIdle;
Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiScream);
}
if (_animationFrame == 6) {
@@ -321,38 +322,38 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
break;
case 9:
- *animation = 742;
+ *animation = kModelAnimationMorajiSittingGetsUp;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(742)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiSittingGetsUp)) {
_animationFrame = 0;
_animationState = 3;
- *animation = 732;
+ *animation = kModelAnimationMorajiRunning;
Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiRunOut);
}
break;
case 10:
- *animation = 738;
- if (_animationFrame < Slice_Animation_Query_Number_Of_Frames(738) - 1) {
+ *animation = kModelAnimationMorajiCuffedShotDead;
+ if (_animationFrame < Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiCuffedShotDead) - 1) {
++_animationFrame;
}
break;
case 11:
- *animation = 739;
+ *animation = kModelAnimationMorajiRunningDivesForward;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(739)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiRunningDivesForward)) {
Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiLayDown);
_animationFrame = 0;
_animationState = 12;
- *animation = 740;
+ *animation = kModelAnimationMorajiLayingForwardTalk;
}
break;
case 12:
- *animation = 740;
- if (_var2) {
- --_var2;
+ *animation = kModelAnimationMorajiLayingForwardTalk;
+ if (_varNumOfTimesToHoldCurrentFrame > 0) {
+ --_varNumOfTimesToHoldCurrentFrame;
} else {
_animationFrame += _var1;
if (!Random_Query(0, 5)) {
@@ -364,22 +365,22 @@ bool AIScriptMoraji::UpdateAnimation(int *animation, int *frame) {
if (_animationFrame < 0) {
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
}
- _var2 = Random_Query(0, 2);
+ _varNumOfTimesToHoldCurrentFrame = Random_Query(0, 2);
}
break;
case 13:
- *animation = 741;
+ *animation = kModelAnimationMorajiLayingForwardDies;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(741) - 1) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiLayingForwardDies) - 1) {
_animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1;
Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiDead);
}
break;
case 14:
- *animation = 741;
- _animationFrame = Slice_Animation_Query_Number_Of_Frames(741) - 1;
+ *animation = kModelAnimationMorajiLayingForwardDies;
+ _animationFrame = Slice_Animation_Query_Number_Of_Frames(kModelAnimationMorajiLayingForwardDies) - 1;
break;
default:
@@ -410,7 +411,7 @@ bool AIScriptMoraji::ChangeAnimationMode(int mode) {
if (_animationState == 0) {
_animationState = 1;
_animationStateNext = 3;
- _animationNext = 732;
+ _animationNext = kModelAnimationMorajiRunning;
} else if (_animationState != 3) {
_animationState = 3;
_animationFrame = 0;
@@ -434,7 +435,7 @@ bool AIScriptMoraji::ChangeAnimationMode(int mode) {
if (_animationState == 0) {
_animationState = 1;
_animationStateNext = 6;
- _animationNext = 735;
+ _animationNext = kModelAnimationMorajiCuffedMoreFastTalk;
} else {
_animationState = 6;
_animationFrame = 0;
@@ -445,7 +446,7 @@ bool AIScriptMoraji::ChangeAnimationMode(int mode) {
if (_animationState == 0) {
_animationState = 1;
_animationStateNext = 7;
- _animationNext = 736;
+ _animationNext = kModelAnimationMorajiCuffedPointingTalk;
} else {
_animationState = 7;
_animationFrame = 0;
diff --git a/engines/bladerunner/script/ai/photographer.cpp b/engines/bladerunner/script/ai/photographer.cpp
index f560da9de4..c59379ae4c 100644
--- a/engines/bladerunner/script/ai/photographer.cpp
+++ b/engines/bladerunner/script/ai/photographer.cpp
@@ -25,8 +25,8 @@
namespace BladeRunner {
AIScriptPhotographer::AIScriptPhotographer(BladeRunnerEngine *vm) : AIScriptBase(vm) {
- _var1 = 0;
- _var2 = 0;
+ _varNumOfTimesToHoldCurrentFrame = 0;
+ _var2 = 0; // is always set to 0, never checked, unused
_resumeIdleAfterFramesetCompletesFlag = false;
}
@@ -36,7 +36,7 @@ void AIScriptPhotographer::Initialize() {
_animationStateNext = 0;
_animationNext = 0;
- _var1 = 0;
+ _varNumOfTimesToHoldCurrentFrame = 0;
_var2 = 0;
_resumeIdleAfterFramesetCompletesFlag = false;
}
@@ -199,80 +199,91 @@ bool AIScriptPhotographer::GoalChanged(int currentGoalNumber, int newGoalNumber)
bool AIScriptPhotographer::UpdateAnimation(int *animation, int *frame) {
switch (_animationState) {
case 0:
- *animation = 745;
+ *animation = kModelAnimationPhotographerIdle;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(745)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerIdle)) {
_animationFrame = 0;
}
break;
case 1:
- *animation = 744;
+ *animation = kModelAnimationPhotographerWalking;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(744)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerWalking)) {
_animationFrame = 0;
}
break;
case 2:
- *animation = 747;
+ *animation = kModelAnimationPhotographerCalmTalk;
if (_animationFrame == 0 && _resumeIdleAfterFramesetCompletesFlag) {
- *animation = 745;
+ *animation = kModelAnimationPhotographerIdle;
_animationState = 0;
_var2 = 0;
_resumeIdleAfterFramesetCompletesFlag = false;
} else {
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(747)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerCalmTalk)) {
_animationFrame = 0;
}
}
break;
case 3:
- *animation = 749;
+#if BLADERUNNER_ORIGINAL_BUGS
+ // TODO A bug? This is identical to case 4 for animation 749, but 748 talk animation is left unused
+ *animation = kModelAnimationPhotographerExplainTalk;
+ ++_animationFrame;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerExplainTalk)) {
+ _animationFrame = 0;
+ _animationState = 2;
+ *animation = kModelAnimationPhotographerCalmTalk;
+ }
+#else
+ *animation = kModelAnimationPhotographerMoreHeadMoveTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(749)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerMoreHeadMoveTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 747;
+ *animation = kModelAnimationPhotographerCalmTalk;
}
+#endif // BLADERUNNER_ORIGINAL_BUGS
break;
case 4:
- *animation = 749;
+ *animation = kModelAnimationPhotographerExplainTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(749)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerExplainTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 747;
+ *animation = kModelAnimationPhotographerCalmTalk;
}
break;
case 5:
- *animation = 750;
+ *animation = kModelAnimationPhotographerSuggestTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(750)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerSuggestTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 747;
+ *animation = kModelAnimationPhotographerCalmTalk;
}
break;
case 6:
- *animation = 746;
+ *animation = kModelAnimationPhotographerTakingAPhoto;
if (_animationFrame == 11) {
Ambient_Sounds_Play_Sound(kSfxCAMCOP1, 80, -20, -20, 20);
}
- if (_var1) {
- --_var1;
+ if (_varNumOfTimesToHoldCurrentFrame) {
+ --_varNumOfTimesToHoldCurrentFrame;
} else {
++_animationFrame;
if (_animationFrame == 10) {
- _var1 = 5;
+ _varNumOfTimesToHoldCurrentFrame = 5;
}
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(746)) {
- *animation = 745;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationPhotographerTakingAPhoto)) {
+ *animation = kModelAnimationPhotographerIdle;
_animationState = 0;
_animationFrame = 0;
Actor_Change_Animation_Mode(kActorPhotographer, kAnimationModeIdle);
diff --git a/engines/bladerunner/script/ai/rajif.cpp b/engines/bladerunner/script/ai/rajif.cpp
index dced687c61..5fbb3e26a3 100644
--- a/engines/bladerunner/script/ai/rajif.cpp
+++ b/engines/bladerunner/script/ai/rajif.cpp
@@ -113,15 +113,15 @@ bool AIScriptRajif::GoalChanged(int currentGoalNumber, int newGoalNumber) {
bool AIScriptRajif::UpdateAnimation(int *animation, int *frame) {
if (_animationState <= 1) {
if (_animationState > 0) {
- *animation = 751;
+ *animation = kModelAnimationRajifWithGunIdle;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(751)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationRajifWithGunIdle)) {
_animationFrame = 0;
}
} else { // bug in original. Both branches are equal
- *animation = 751;
+ *animation = kModelAnimationRajifWithGunIdle;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(751)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationRajifWithGunIdle)) {
_animationFrame = 0;
}
}
diff --git a/engines/bladerunner/script/ai/sergeant_walls.cpp b/engines/bladerunner/script/ai/sergeant_walls.cpp
index 04cad7d961..2e9f5a93a6 100644
--- a/engines/bladerunner/script/ai/sergeant_walls.cpp
+++ b/engines/bladerunner/script/ai/sergeant_walls.cpp
@@ -102,94 +102,95 @@ bool AIScriptSergeantWalls::UpdateAnimation(int *animation, int *frame) {
if ( Game_Flag_Query(kFlagSergeantWallsBuzzInRequest)
&& !Game_Flag_Query(kFlagSergeantWallsBuzzInDone)
) {
- *animation = 724;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(724)) {
+ // TODO maybe use kModelAnimationSergeantWallsHitsBuzzerTalk here?
+ *animation = kModelAnimationSergeantWallsGestureGive;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsGestureGive)) {
_animationFrame = 0;
Game_Flag_Set(kFlagSergeantWallsBuzzInDone);
}
} else {
- *animation = 722;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(722)) {
+ *animation = kModelAnimationSergeantWallsIdle;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsIdle)) {
_animationFrame = 0;
}
}
break;
case 1:
- *animation = 725;
+ *animation = kModelAnimationSergeantWallsCalmTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(725)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsCalmTalk)) {
_animationFrame = 0;
}
break;
case 3:
- *animation = 726;
+ *animation = kModelAnimationSergeantWallsMoreHeadMoveTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(726)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsMoreHeadMoveTalk)) {
_animationState = 1;
_animationFrame = 0;
- *animation = 725;
+ *animation = kModelAnimationSergeantWallsCalmTalk;
}
break;
case 4:
- *animation = 727;
+ *animation = kModelAnimationSergeantWallsExplainTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(727)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsExplainTalk)) {
_animationState = 1;
_animationFrame = 0;
- *animation = 725;
+ *animation = kModelAnimationSergeantWallsCalmTalk;
}
break;
case 5:
- *animation = 728;
+ *animation = kModelAnimationSergeantWallsLaughTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(728)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsLaughTalk)) {
_animationState = 1;
_animationFrame = 0;
- *animation = 725;
+ *animation = kModelAnimationSergeantWallsCalmTalk;
}
break;
case 6:
- *animation = 729;
+ *animation = kModelAnimationSergeantWallsHarderLaughTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(729)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsHarderLaughTalk)) {
_animationState = 1;
_animationFrame = 0;
- *animation = 725;
+ *animation = kModelAnimationSergeantWallsCalmTalk;
}
break;
case 7:
- *animation = 730;
+ *animation = kModelAnimationSergeantWallsDefendTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(730)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsDefendTalk)) {
_animationState = 1;
_animationFrame = 0;
- *animation = 725;
+ *animation = kModelAnimationSergeantWallsCalmTalk;
}
break;
case 8:
- *animation = 731;
+ *animation = kModelAnimationSergeantWallsHitsBuzzerTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(731)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsHitsBuzzerTalk)) {
_animationState = 1;
_animationFrame = 0;
- *animation = 725;
+ *animation = kModelAnimationSergeantWallsCalmTalk;
}
break;
case 9:
- *animation = 724;
+ *animation = kModelAnimationSergeantWallsGestureGive;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(724)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationSergeantWallsGestureGive)) {
_animationState = 9;
_animationFrame = 0;
- *animation = 724;
+ *animation = kModelAnimationSergeantWallsGestureGive;
}
break;
diff --git a/engines/bladerunner/script/ai/tyrell.cpp b/engines/bladerunner/script/ai/tyrell.cpp
index 55687977e5..c18eecc924 100644
--- a/engines/bladerunner/script/ai/tyrell.cpp
+++ b/engines/bladerunner/script/ai/tyrell.cpp
@@ -26,7 +26,8 @@ namespace BladeRunner {
AIScriptTyrell::AIScriptTyrell(BladeRunnerEngine *vm) : AIScriptBase(vm) {
_resumeIdleAfterFramesetCompletesFlag = true;
- _var = 0;
+ // _varChooseIdleAnimation can have valid values: 0, 1
+ _varChooseIdleAnimation = 0;
}
void AIScriptTyrell::Initialize() {
@@ -36,7 +37,7 @@ void AIScriptTyrell::Initialize() {
_animationNext = 0;
_resumeIdleAfterFramesetCompletesFlag = true;
- _var = 0;
+ _varChooseIdleAnimation = 0;
Actor_Set_Goal_Number(kActorTyrell, 0);
}
@@ -108,84 +109,84 @@ bool AIScriptTyrell::GoalChanged(int currentGoalNumber, int newGoalNumber) {
bool AIScriptTyrell::UpdateAnimation(int *animation, int *frame) {
switch (_animationState) {
case 0:
- if (_var == 1) {
- *animation = 767;
+ if (_varChooseIdleAnimation == 1) {
+ *animation = kModelAnimationTyrellHeadMoveIdle;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(767)) {
- *animation = 766;
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellHeadMoveIdle)) {
+ *animation = kModelAnimationTyrellIdle;
_animationFrame = 0;
- _var = 0;
+ _varChooseIdleAnimation = 0;
}
- } else if (_var == 0) {
- *animation = 766;
+ } else if (_varChooseIdleAnimation == 0) {
+ *animation = kModelAnimationTyrellIdle;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(766)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellIdle)) {
_animationFrame = 0;
if (!Random_Query(0, 3)) {
- _var = 1;
+ _varChooseIdleAnimation = 1;
}
}
}
break;
case 1:
- *animation = 765;
+ *animation = kModelAnimationTyrellWalking;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(765)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellWalking)) {
_animationFrame = 0;
}
break;
case 2:
if (_animationFrame == 0 && _resumeIdleAfterFramesetCompletesFlag) {
- *animation = 766;
+ *animation = kModelAnimationTyrellIdle;
_animationState = 0;
} else {
- *animation = 768;
+ *animation = kModelAnimationTyrellFastNodTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(768)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellFastNodTalk)) {
_animationFrame = 0;
}
}
break;
case 3:
- *animation = 769;
+ *animation = kModelAnimationTyrellSuggestTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(769)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellSuggestTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 768;
+ *animation = kModelAnimationTyrellFastNodTalk;
}
break;
case 4:
- *animation = 770;
+ *animation = kModelAnimationTyrellConsideringTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(770)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellConsideringTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 768;
+ *animation = kModelAnimationTyrellFastNodTalk;
}
break;
case 5:
- *animation = 771;
+ *animation = kModelAnimationTyrellBowsAndSuggestsTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(771)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellBowsAndSuggestsTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 768;
+ *animation = kModelAnimationTyrellFastNodTalk;
}
break;
case 6:
- *animation = 772;
+ *animation = kModelAnimationTyrellDismissTalk;
++_animationFrame;
- if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(772)) {
+ if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(kModelAnimationTyrellDismissTalk)) {
_animationFrame = 0;
_animationState = 2;
- *animation = 768;
+ *animation = kModelAnimationTyrellFastNodTalk;
}
break;
diff --git a/engines/bladerunner/script/ai_script.h b/engines/bladerunner/script/ai_script.h
index ad596855ce..d9b87f0775 100644
--- a/engines/bladerunner/script/ai_script.h
+++ b/engines/bladerunner/script/ai_script.h
@@ -297,7 +297,7 @@ END_SCRIPT
DECLARE_SCRIPT(DeskClerk)
int _varChooseIdleAnimation;
bool _resumeIdleAfterFramesetCompletesFlag;
- int _varNumOfTimesToHoldCurrentFrame;
+ int _varNumOfTimesToHoldCurrentFrame;
END_SCRIPT
DECLARE_SCRIPT(HowieLee)
@@ -316,8 +316,8 @@ DECLARE_SCRIPT(Murray)
END_SCRIPT
DECLARE_SCRIPT(HawkersBarkeep)
- int _var1;
- int _var2;
+ int _varChooseIdleAnimation;
+ int _varNumOfTimesToHoldCurrentFrame;
int _var3;
bool _resumeIdleAfterFramesetCompletesFlag;
END_SCRIPT
@@ -331,14 +331,14 @@ END_SCRIPT
DECLARE_SCRIPT(Moraji)
int _var1;
- int _var2;
+ int _varNumOfTimesToHoldCurrentFrame;
END_SCRIPT
DECLARE_SCRIPT(TheBard)
END_SCRIPT
DECLARE_SCRIPT(Photographer)
- int _var1;
+ int _varNumOfTimesToHoldCurrentFrame;
int _var2;
bool _resumeIdleAfterFramesetCompletesFlag;
END_SCRIPT
@@ -356,7 +356,7 @@ DECLARE_SCRIPT(GovernorKolvig)
END_SCRIPT
DECLARE_SCRIPT(EarlyQBartender)
- int _var1;
+ int _varChooseIdleAnimation;
int _var2;
bool _resumeIdleAfterFramesetCompletesFlag;
END_SCRIPT
@@ -388,7 +388,7 @@ END_SCRIPT
DECLARE_SCRIPT(Tyrell)
bool _resumeIdleAfterFramesetCompletesFlag;
- int _var;
+ int _varChooseIdleAnimation;
END_SCRIPT
DECLARE_SCRIPT(Chew)
More information about the Scummvm-git-logs
mailing list