aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script/ai
diff options
context:
space:
mode:
authorThanasis Antoniou2019-06-30 15:27:11 +0300
committerThanasis Antoniou2019-06-30 15:27:51 +0300
commitb64e66a6b5a4c10a38c34bfaa1b07d5cb5fac41f (patch)
treeaed8dfcea0929a44f2c47945350265a2a6623766 /engines/bladerunner/script/ai
parent9fa862c0f40f5d04ae7c520ae6fdd6797bc79b6a (diff)
downloadscummvm-rg350-b64e66a6b5a4c10a38c34bfaa1b07d5cb5fac41f.tar.gz
scummvm-rg350-b64e66a6b5a4c10a38c34bfaa1b07d5cb5fac41f.tar.bz2
scummvm-rg350-b64e66a6b5a4c10a38c34bfaa1b07d5cb5fac41f.zip
BLADERUNNER: Fix Steele re-arresting Izo at RC03
Diffstat (limited to 'engines/bladerunner/script/ai')
-rw-r--r--engines/bladerunner/script/ai/izo.cpp1
-rw-r--r--engines/bladerunner/script/ai/steele.cpp6
2 files changed, 5 insertions, 2 deletions
diff --git a/engines/bladerunner/script/ai/izo.cpp b/engines/bladerunner/script/ai/izo.cpp
index 9191ef18f5..2861e76554 100644
--- a/engines/bladerunner/script/ai/izo.cpp
+++ b/engines/bladerunner/script/ai/izo.cpp
@@ -106,6 +106,7 @@ void AIScriptIzo::CompletedMovementTrack() {
return; //true;
case kGoalIzoRC03Walk:
+ // fall through
case kGoalIzoRC03Run:
Actor_Set_Goal_Number(kActorIzo, kGoalIzoRC03RunAway);
Actor_Set_Goal_Number(kActorSteele, kGoalSteeleApprehendIzo);
diff --git a/engines/bladerunner/script/ai/steele.cpp b/engines/bladerunner/script/ai/steele.cpp
index b10ca1f002..10dd1d9b73 100644
--- a/engines/bladerunner/script/ai/steele.cpp
+++ b/engines/bladerunner/script/ai/steele.cpp
@@ -822,7 +822,9 @@ bool AIScriptSteele::GoalChanged(int currentGoalNumber, int newGoalNumber) {
// Scene_Exits_Enable() is done in Izo's kGoalIzoGetArrested - CompletedMovementTrack() case
Actor_Set_Goal_Number(kActorIzo, kGoalIzoGetArrested);
Actor_Set_Goal_Number(kActorSteele, kGoalSteeleLeaveRC03);
+#if BLADERUNNER_ORIGINAL_BUGS
Actor_Set_Goal_Number(kActorSteele, kGoalSteeleDefault); // TODO - a bug? why set to default here?
+#endif // BLADERUNNER_ORIGINAL_BUGS
return true;
case kGoalSteeleIzoBlockedByMcCoy:
@@ -2333,9 +2335,9 @@ void AIScriptSteele::SetAnimationState(int animationState, int animationFrame, i
bool AIScriptSteele::ReachedMovementTrackWaypoint(int waypointId) {
if (waypointId == 174
&& Actor_Query_Goal_Number(kActorSteele) == kGoalSteeleLeaveRC03
- )
+ ) {
Actor_Set_Goal_Number(kActorSteele, kGoalSteeleGoToPoliceStation);
-
+ }
return true;
}