[Scummvm-git-logs] scummvm master -> a2fd0afadf9f9895a0439a4a3effc669a34e4091

antoniou79 noreply at scummvm.org
Thu Feb 2 13:45:05 UTC 2023


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:
a2fd0afadf BLADERUNNER: RESTOREDCONTENT: Fix McCoy's inner talk if confessed


Commit: a2fd0afadf9f9895a0439a4a3effc669a34e4091
    https://github.com/scummvm/scummvm/commit/a2fd0afadf9f9895a0439a4a3effc669a34e4091
Author: antoniou79 (a.antoniou79 at gmail.com)
Date: 2023-02-02T15:42:53+02:00

Commit Message:
BLADERUNNER: RESTOREDCONTENT: Fix McCoy's inner talk if confessed

Changed paths:
    engines/bladerunner/game_constants.h
    engines/bladerunner/script/scene/ct04.cpp
    engines/bladerunner/script/scene/ps04.cpp


diff --git a/engines/bladerunner/game_constants.h b/engines/bladerunner/game_constants.h
index 0ffc426b056..e8af5017da6 100644
--- a/engines/bladerunner/game_constants.h
+++ b/engines/bladerunner/game_constants.h
@@ -626,7 +626,7 @@ enum Flags {
 	kFlagSteeleInPoliceStation                = 185,
 	kFlagRC01PoliceDone                       = 186,
 	kFlagRC02RunciterTalk1                    = 187,
-	// 188 is never used
+	kFlagMcCoyConfessedKillingHomelessInCT04  = 188, // Original: 188 is never used
 	// 189 is never used
 	kFlagRC02ShellCasingsTaken                = 190,
 	// 191 is never used
diff --git a/engines/bladerunner/script/scene/ct04.cpp b/engines/bladerunner/script/scene/ct04.cpp
index 12f061c4409..8042cd9b54e 100644
--- a/engines/bladerunner/script/scene/ct04.cpp
+++ b/engines/bladerunner/script/scene/ct04.cpp
@@ -108,11 +108,20 @@ bool SceneScriptCT04::ClickedOn3DObject(const char *objectName, bool a2) {
 
 		if (Game_Flag_Query(kFlagCT04HomelessBodyInDumpster)) {
 			if (Game_Flag_Query(kFlagCT04HomelessBodyThrownAway)) {
+				// Thrown away (garbage collected) happens in Act 3
+				// see transient AI.
 				Actor_Voice_Over(270, kActorVoiceOver);
 				Actor_Voice_Over(280, kActorVoiceOver);
 			} else if (Game_Flag_Query(kFlagCT04HomelessBodyFound)) {
 				Actor_Voice_Over(250, kActorVoiceOver);
-				Actor_Voice_Over(260, kActorVoiceOver);
+				if (!_vm->_cutContent
+				 || !Game_Flag_Query(kFlagMcCoyConfessedKillingHomelessInCT04)) {
+					// When McCoy confesses in the Restored Content mode,
+					// the body gets found. So it's gone (but not thrown with the trash).
+					// Since McCoy has confessed though, he shouldn't say the following quote
+					// "I'd screwed up and screwed up bad. But maybe there was still a way to make it right.".
+					Actor_Voice_Over(260, kActorVoiceOver);
+				}
 			} else {
 				Actor_Voice_Over(230, kActorVoiceOver);
 				Actor_Voice_Over(240, kActorVoiceOver);
diff --git a/engines/bladerunner/script/scene/ps04.cpp b/engines/bladerunner/script/scene/ps04.cpp
index c02e90afd16..706fe1993a4 100644
--- a/engines/bladerunner/script/scene/ps04.cpp
+++ b/engines/bladerunner/script/scene/ps04.cpp
@@ -350,7 +350,7 @@ void SceneScriptPS04::dialogueWithGuzza() {
 		           &&  Actor_Clue_Query(kActorMcCoy, kClueRunciterInterviewA)
 		           && !Game_Flag_Query(kFlagPS04GuzzaTalkDumpToMainframe)
 		) {
-			// McCoy metions Bryant's "vacation",
+			// McCoy mentions Bryant's "vacation",
 			// Guzza says about the procedure via Mainframe
 			Actor_Says(kActorMcCoy, 3920, 13);
 			Actor_Says(kActorGuzza, 570, 32);
@@ -378,6 +378,7 @@ void SceneScriptPS04::dialogueWithGuzza() {
 		Actor_Face_Heading(kActorGuzza, 400, false);
 		Actor_Says(kActorGuzza, 620, 32);
 		if (_vm->_cutContent) {
+			Game_Flag_Set(kFlagMcCoyConfessedKillingHomelessInCT04);
 			// add a fade-out here while Guzza calls-in for favors
 			Scene_Loop_Start_Special(kSceneLoopModeOnce, kPS04LoopPanToPS04, true);
 			Scene_Loop_Set_Default(kPS04LoopMainLoop);




More information about the Scummvm-git-logs mailing list