diff options
author | Thanasis Antoniou | 2019-03-26 02:06:33 +0200 |
---|---|---|
committer | Thanasis Antoniou | 2019-03-26 02:08:22 +0200 |
commit | 805dc466d02344a1368181f3cb852771d64a48a9 (patch) | |
tree | 897db2c9fd575c242396916532b5a687d6000c6d /engines/bladerunner/script/ai | |
parent | b3dc3832f7b04ed2c027d7b92deece6244a7f2fd (diff) | |
download | scummvm-rg350-805dc466d02344a1368181f3cb852771d64a48a9.tar.gz scummvm-rg350-805dc466d02344a1368181f3cb852771d64a48a9.tar.bz2 scummvm-rg350-805dc466d02344a1368181f3cb852771d64a48a9.zip |
BLADERUNNER: Resolve dead end state with Zuben
McCoy should now always be able to gather enough clues to trigger Zuben throwing the soup (via the VK test question if he does not have the Lucy photo clue).
Diffstat (limited to 'engines/bladerunner/script/ai')
-rw-r--r-- | engines/bladerunner/script/ai/officer_leary.cpp | 1 | ||||
-rw-r--r-- | engines/bladerunner/script/ai/steele.cpp | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/engines/bladerunner/script/ai/officer_leary.cpp b/engines/bladerunner/script/ai/officer_leary.cpp index d1e7eea4d7..c4ddef72ae 100644 --- a/engines/bladerunner/script/ai/officer_leary.cpp +++ b/engines/bladerunner/script/ai/officer_leary.cpp @@ -64,6 +64,7 @@ bool AIScriptOfficerLeary::Update() { && Game_Flag_Query(kFlagRC51ChopstickWrapperTaken) && Game_Flag_Query(kFlagRC01ChromeDebrisTaken) && Player_Query_Current_Scene() != kSceneRC01 + && !Game_Flag_Query(kFlagRC01PoliceDone) // otherwise this clause keeps repeating && Global_Variable_Query(kVariableChapter) < 3 ) { Game_Flag_Set(kFlagRC01PoliceDone); diff --git a/engines/bladerunner/script/ai/steele.cpp b/engines/bladerunner/script/ai/steele.cpp index f5e9f05ad4..7e29a4f09c 100644 --- a/engines/bladerunner/script/ai/steele.cpp +++ b/engines/bladerunner/script/ai/steele.cpp @@ -390,6 +390,19 @@ void AIScriptSteele::ClickedByPlayer() { } void AIScriptSteele::EnteredScene(int sceneId) { +#if BLADERUNNER_ORIGINAL_BUGS +#else + if (Actor_Query_Goal_Number(kActorSteele) == kGoalSteeleGoToRC01) { + if (!Actor_Clue_Query(kActorMcCoy, kClueOfficersStatement)) + { +// // no random factor here, Steele will definitely get this clue in this case + Actor_Clue_Acquire(kActorSteele, kClueOfficersStatement, true, kActorOfficerLeary); // Steele will upload this to the mainframe when she heads to the Police Station + Global_Variable_Increment(kVariableMcCoyEvidenceMissed, 1); // unused? but consistent with missing the other clues + return; //true; + } + } +#endif // BLADERUNNER_ORIGINAL_BUGS + if (Actor_Query_Goal_Number(kActorSteele) == kGoalSteeleGoToRC02) { if (!Game_Flag_Query(kFlagRC51ChopstickWrapperTaken) && Random_Query(1, 3) == 1 |