aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner
diff options
context:
space:
mode:
authorPeter Kohaut2019-02-09 23:30:40 +0100
committerPeter Kohaut2019-02-10 09:50:16 +0100
commitfe25ad1a830a85a8644034c81f2d152f59f33591 (patch)
tree2709602b7ba07bf60963c24fc6c0bf5e0b951937 /engines/bladerunner
parenta0e9b09cd9b9be59dcf4c90df152fba8b55390cd (diff)
downloadscummvm-rg350-fe25ad1a830a85a8644034c81f2d152f59f33591.tar.gz
scummvm-rg350-fe25ad1a830a85a8644034c81f2d152f59f33591.tar.bz2
scummvm-rg350-fe25ad1a830a85a8644034c81f2d152f59f33591.zip
BLADERUNNER: Fixed Gordo animation change
He will stop properly after running
Diffstat (limited to 'engines/bladerunner')
-rw-r--r--engines/bladerunner/game_constants.h2
-rw-r--r--engines/bladerunner/script/ai/gordo.cpp35
2 files changed, 22 insertions, 15 deletions
diff --git a/engines/bladerunner/game_constants.h b/engines/bladerunner/game_constants.h
index 85481a8d77..7778d5350b 100644
--- a/engines/bladerunner/game_constants.h
+++ b/engines/bladerunner/game_constants.h
@@ -38,7 +38,7 @@ enum Actors {
kActorCrazylegs = 9,
kActorLuther = 10,
kActorGrigorian = 11,
- kActorTransient = 12,
+ kActorTransient = 12, // Homeless
kActorLance = 13,
kActorBulletBob = 14,
kActorRunciter = 15,
diff --git a/engines/bladerunner/script/ai/gordo.cpp b/engines/bladerunner/script/ai/gordo.cpp
index 700e8c0066..bb8e62ecde 100644
--- a/engines/bladerunner/script/ai/gordo.cpp
+++ b/engines/bladerunner/script/ai/gordo.cpp
@@ -253,8 +253,8 @@ bool AIScriptGordo::ShotAtAndHit() {
// Shot as a human
if (Actor_Query_Goal_Number(kActorGordo) > 239
- && Actor_Query_Goal_Number(kActorGordo) < 245)
- {
+ && Actor_Query_Goal_Number(kActorGordo) < 245
+ ) {
Actor_Set_Goal_Number(kActorGordo, kGoalGordoNR01Die);
Delay(1500);
Actor_Voice_Over(2410, kActorVoiceOver);
@@ -1217,22 +1217,29 @@ bool AIScriptGordo::ChangeAnimationMode(int mode) {
switch (_animationState) {
case 0:
break;
- case 1:
- case 3:
- case 38:
- case 39:
- _animationState = 0;
- _animationFrame = 0;
- _state = 0;
- _counterTarget = 0;
- break;
case 2:
case 13:
- Actor_Change_Animation_Mode(kActorGordo, 53);
+ Actor_Change_Animation_Mode(kActorGordo, kAnimationModeSit);
break;
- default:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ case 10:
+ case 11:
+ case 12:
+ case 36:
+ case 37:
var_45B078 = 1;
break;
+ default:
+ _animationState = 0;
+ _animationFrame = 0;
+ _state = 0;
+ _counterTarget = 0;
+ break;
}
break;
@@ -1496,7 +1503,7 @@ bool AIScriptGordo::ChangeAnimationMode(int mode) {
_animationFrame = 0;
break;
- case 53:
+ case kAnimationModeSit:
_animationState = 2;
_animationFrame = 0;
break;