aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner
diff options
context:
space:
mode:
authorThanasis Antoniou2019-06-30 15:16:47 +0300
committerThanasis Antoniou2019-06-30 15:27:50 +0300
commit9fa862c0f40f5d04ae7c520ae6fdd6797bc79b6a (patch)
tree5c3fb2e7a9ceee93616a2688f230aba9b797014e /engines/bladerunner
parent72329773d449e0abe36b4dde45aab3927f0677ea (diff)
downloadscummvm-rg350-9fa862c0f40f5d04ae7c520ae6fdd6797bc79b6a.tar.gz
scummvm-rg350-9fa862c0f40f5d04ae7c520ae6fdd6797bc79b6a.tar.bz2
scummvm-rg350-9fa862c0f40f5d04ae7c520ae6fdd6797bc79b6a.zip
BLADERUNNER: Additional potential Bullet Bob's gun fix
Diffstat (limited to 'engines/bladerunner')
-rw-r--r--engines/bladerunner/script/ai/generic_walker_a.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/engines/bladerunner/script/ai/generic_walker_a.cpp b/engines/bladerunner/script/ai/generic_walker_a.cpp
index be21ee6ab3..6cb363991e 100644
--- a/engines/bladerunner/script/ai/generic_walker_a.cpp
+++ b/engines/bladerunner/script/ai/generic_walker_a.cpp
@@ -47,6 +47,14 @@ void AIScriptGenericWalkerA::Initialize() {
}
bool AIScriptGenericWalkerA::Update() {
+#if !BLADERUNNER_ORIGINAL_BUGS
+ // extra check for possible fix of Bullet Bob's gun missing
+ if (Player_Query_Current_Set() == kSetRC04
+ && Actor_Query_Goal_Number(kActorGenwalkerA) != kGoalGenwalkerABulletBobsTrackGun
+ ) {
+ Actor_Set_Goal_Number(kActorGenwalkerA, kGoalGenwalkerABulletBobsTrackGun);
+ }
+#endif // !BLADERUNNER_ORIGINAL_BUGS
switch (Actor_Query_Goal_Number(kActorGenwalkerA)) {
case kGoalGenwalkerDefault:
if (prepareWalker()) {
@@ -75,6 +83,16 @@ void AIScriptGenericWalkerA::TimerExpired(int timer) {
}
void AIScriptGenericWalkerA::CompletedMovementTrack() {
+#if !BLADERUNNER_ORIGINAL_BUGS
+ // extra check for possible fix of Bullet Bob's gun missing
+ if (Player_Query_Current_Set() == kSetRC04
+ && Actor_Query_Goal_Number(kActorGenwalkerA) != kGoalGenwalkerABulletBobsTrackGun
+ ) {
+ Actor_Set_Goal_Number(kActorGenwalkerA, kGoalGenwalkerABulletBobsTrackGun);
+ return;
+ }
+#endif // !BLADERUNNER_ORIGINAL_BUGS
+
if (Actor_Query_Goal_Number(kActorGenwalkerA) > kGoalGenwalkerDefault) {
Actor_Set_Goal_Number(kActorGenwalkerA, kGoalGenwalkerDefault);
if (!Game_Flag_Query(kFlagGenericWalkerWaiting)) {