[Scummvm-git-logs] scummvm master -> 60b1b7eb400ba036d36f896d464516bf7a36501d
antoniou79
a.antoniou79 at gmail.com
Sat Jul 31 16:20:44 UTC 2021
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:
60b1b7eb40 BLADERUNNER: RESTOREDCONTENT: Restore dialogue in RC03
Commit: 60b1b7eb400ba036d36f896d464516bf7a36501d
https://github.com/scummvm/scummvm/commit/60b1b7eb400ba036d36f896d464516bf7a36501d
Author: antoniou79 (a.antoniou79 at gmail.com)
Date: 2021-07-31T19:13:36+03:00
Commit Message:
BLADERUNNER: RESTOREDCONTENT: Restore dialogue in RC03
For the case when McCoy lets Izo escape
This whole sequence is still untriggered and has some glitches, which will be resolved when we restore the whole segment of catching up to Izo and then letting him go.
Changed paths:
engines/bladerunner/game_constants.h
engines/bladerunner/script/ai/izo.cpp
engines/bladerunner/script/scene/rc03.cpp
diff --git a/engines/bladerunner/game_constants.h b/engines/bladerunner/game_constants.h
index 69115bb1b9..4840e1ae88 100644
--- a/engines/bladerunner/game_constants.h
+++ b/engines/bladerunner/game_constants.h
@@ -3124,26 +3124,27 @@ enum GoalLucy {
};
enum GoalIzo {
- kGoalIzoDefault = 0,
- kGoalIzoPrepareCamera = 1,
- kGoalIzoTakePhoto = 2,
- kGoalIzoRunToUG02 = 3,
- kGoalIzoStopRunning = 100,
- kGoalIzoRunToRC03 = 101,
- kGoalIzoWaitingAtRC03 = 102,
- kGoalIzoEscape = 103, // how can this happen? can mccoy catch izo in ug02?
- kGoalIzoRC03Walk = 110,
- kGoalIzoRC03Run = 111,
- kGoalIzoRC03RunAway = 114,
- kGoalIzoGetArrested = 120,
- kGoalIzoGotArrested = 180,
- kGoalIzoRC03RanAwayDone = 181, // new - added for bug fix of Izo getting stuck at RC03
- kGoalIzoGoToHC01 = 150,
- kGoalIzoGoToHC03 = 155,
- kGoalIzoDieHidden = 198,
- kGoalIzoDie = 199,
- kGoalIzoKP07Wait = 513, // new goal when in moonbus, Act 5
- kGoalIzoGone = 599
+ kGoalIzoDefault = 0,
+ kGoalIzoPrepareCamera = 1,
+ kGoalIzoTakePhoto = 2,
+ kGoalIzoRunToUG02 = 3,
+ kGoalIzoStopRunning = 100,
+ kGoalIzoRunToRC03 = 101,
+ kGoalIzoWaitingAtRC03 = 102,
+ kGoalIzoEscape = 103, // how can this happen? can mccoy catch izo in ug02?
+ kGoalIzoRC03Walk = 110,
+ kGoalIzoRC03Run = 111,
+ kGoalIzoRC03RunAway = 114,
+ kGoalIzoGetArrested = 120,
+ kGoalIzoGotArrested = 180,
+ kGoalIzoRC03RanAwayDone = 181, // new - added for bug fix of Izo getting stuck at RC03
+ kGoalIzoGoToHC01 = 150,
+ kGoalIzoGoToHC03 = 155,
+ kGoalIzoDieHidden = 198,
+ kGoalIzoDie = 199,
+ kGoalIzoEscapedSteeleKnows = 200, // Set after conversation with Steele about Izo escaping (original: untriggered)
+ kGoalIzoKP07Wait = 513, // new goal when in moonbus, Act 5
+ kGoalIzoGone = 599
};
enum GoalSadik {
diff --git a/engines/bladerunner/script/ai/izo.cpp b/engines/bladerunner/script/ai/izo.cpp
index bb74dd37be..319fadc1c4 100644
--- a/engines/bladerunner/script/ai/izo.cpp
+++ b/engines/bladerunner/script/ai/izo.cpp
@@ -316,7 +316,7 @@ int AIScriptIzo::GetFriendlinessModifierIfGetsClue(int otherActorId, int clueId)
}
bool AIScriptIzo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
- if (newGoalNumber == 200
+ if (newGoalNumber == kGoalIzoEscapedSteeleKnows
|| newGoalNumber == kGoalIzoDie
|| newGoalNumber == kGoalIzoDieHidden
|| newGoalNumber == kGoalIzoGotArrested
@@ -487,7 +487,7 @@ bool AIScriptIzo::GoalChanged(int currentGoalNumber, int newGoalNumber) {
#endif // BLADERUNNER_ORIGINAL_BUGS
return true;
- case 200:
+ case kGoalIzoEscapedSteeleKnows:
Game_Flag_Set(kFlagDNARowAvailable);
return true;
diff --git a/engines/bladerunner/script/scene/rc03.cpp b/engines/bladerunner/script/scene/rc03.cpp
index b868b8149b..52d9269120 100644
--- a/engines/bladerunner/script/scene/rc03.cpp
+++ b/engines/bladerunner/script/scene/rc03.cpp
@@ -91,6 +91,9 @@ void SceneScriptRC03::InitializeScene() {
if (Game_Flag_Query(kFlagHC04toRC03)
&& Actor_Query_Goal_Number(kActorIzo) != kGoalIzoWaitingAtRC03
+#if !BLADERUNNER_ORIGINAL_BUGS
+ && Actor_Query_Goal_Number(kActorIzo) != kGoalIzoEscape
+#endif // !BLADERUNNER_ORIGINAL_BUGS
) {
if (Random_Query(1, 3) == 1) {
// enhancement: don't always play this scene when exiting Hawker's Circle
@@ -283,20 +286,23 @@ void SceneScriptRC03::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo
void SceneScriptRC03::talkWithSteele() {
Actor_Face_Actor(kActorSteele, kActorMcCoy, true);
- Actor_Says(kActorSteele, 1820, 3);
+ Actor_Says(kActorSteele, 1820, kAnimationModeTalk);
Actor_Face_Actor(kActorMcCoy, kActorSteele, true);
Actor_Says(kActorMcCoy, 4815, 14);
- Actor_Says(kActorSteele, 1830, 3);
- Actor_Says(kActorSteele, 1840, 3);
+ Actor_Says(kActorSteele, 1830, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 1840, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4820, 12);
- Actor_Says(kActorSteele, 1850, 3);
- Actor_Says(kActorSteele, 1950, 3);
+ Actor_Says(kActorSteele, 1850, kAnimationModeTalk);
+ if (_vm->_cutContent) {
+ Actor_Says(kActorMcCoy, 4825, 13);
+ }
+ Actor_Says(kActorSteele, 1950, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4835, 14);
- Actor_Says(kActorSteele, 1960, 3);
- Actor_Says(kActorSteele, 1980, 3);
+ Actor_Says(kActorSteele, 1960, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 1980, kAnimationModeTalk);
Actor_Says(kActorMcCoy, 4840, 15);
- Actor_Says(kActorSteele, 1990, 3);
- Actor_Says(kActorSteele, 2000, 3);
+ Actor_Says(kActorSteele, 1990, kAnimationModeTalk);
+ Actor_Says(kActorSteele, 2000, kAnimationModeTalk);
}
void SceneScriptRC03::PlayerWalkedIn() {
@@ -376,7 +382,7 @@ void SceneScriptRC03::PlayerWalkedIn() {
}
talkWithSteele();
Async_Actor_Walk_To_Waypoint(kActorSteele, 174, 0, false);
- Actor_Set_Goal_Number(kActorIzo, 200);
+ Actor_Set_Goal_Number(kActorIzo, kGoalIzoEscapedSteeleKnows);
Player_Gains_Control();
}
Game_Flag_Reset(kFlagUG01toRC03);
More information about the Scummvm-git-logs
mailing list