aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script/scene
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/script/scene')
-rw-r--r--engines/bladerunner/script/scene/ps09.cpp14
-rw-r--r--engines/bladerunner/script/scene/rc02.cpp12
2 files changed, 23 insertions, 3 deletions
diff --git a/engines/bladerunner/script/scene/ps09.cpp b/engines/bladerunner/script/scene/ps09.cpp
index 9b38721220..c5a0143626 100644
--- a/engines/bladerunner/script/scene/ps09.cpp
+++ b/engines/bladerunner/script/scene/ps09.cpp
@@ -298,7 +298,16 @@ void SceneScriptPS09::dialogueWithGrigorian() {
) {
DM_Add_To_List_Never_Repeat_Once_Selected(170, 5, 5, 3); // PROTEST
DM_Add_To_List_Never_Repeat_Once_Selected(180, -1, 5, 5); // CARS
- DM_Add_To_List_Never_Repeat_Once_Selected(200, -1, 3, 6); // VOIGT-KAMPFF
+ if ((_vm->_cutContent
+ && (!Game_Flag_Query(kFlagPS09GrigorianVKChosen)
+ && (!Actor_Clue_Query(kActorMcCoy, kClueVKGrigorianHuman) && !Actor_Clue_Query(kActorMcCoy, kClueVKGrigorianReplicant))))
+ || !_vm->_cutContent
+ ) {
+ if (_vm->_cutContent) {
+ Dialogue_Menu_Clear_Never_Repeat_Was_Selected_Flag(200);
+ }
+ DM_Add_To_List_Never_Repeat_Once_Selected(200, -1, 3, 6); // VOIGT-KAMPFF
+ }
}
if (Actor_Clue_Query(kActorMcCoy, kClueGrigoriansNote) // cut feature? it is impossible to obtain this clue
&& (Actor_Clue_Query(kActorMcCoy, kClueGrigorianInterviewA)
@@ -424,6 +433,9 @@ void SceneScriptPS09::dialogueWithGrigorian() {
break;
case 200: // VOIGT-KAMPFF
+ if (_vm->_cutContent) {
+ Game_Flag_Set(kFlagPS09GrigorianVKChosen);
+ }
Actor_Says(kActorMcCoy, 4265, 14);
Actor_Says(kActorGrigorian, 400, 13);
Actor_Says(kActorMcCoy, 4400, 13);
diff --git a/engines/bladerunner/script/scene/rc02.cpp b/engines/bladerunner/script/scene/rc02.cpp
index 1dbae55df5..f7830eeb08 100644
--- a/engines/bladerunner/script/scene/rc02.cpp
+++ b/engines/bladerunner/script/scene/rc02.cpp
@@ -198,8 +198,15 @@ void SceneScriptRC02::dialogueWithRunciter() {
) {
DM_Add_To_List_Never_Repeat_Once_Selected(20, 6, 4, 5); // REFERENCE
}
- if (_vm->_cutContent) {
- DM_Add_To_List_Never_Repeat_Once_Selected(200, -1, 3, 6); // VK - TEST
+ if ((_vm->_cutContent
+ && (!Game_Flag_Query(kFlagRC02RunciterVKChosen)
+ && (!Actor_Clue_Query(kActorMcCoy, kClueVKRunciterHuman) && !Actor_Clue_Query(kActorMcCoy, kClueVKRunciterReplicant))))
+ || !_vm->_cutContent
+ ) {
+ if (_vm->_cutContent) {
+ Dialogue_Menu_Clear_Never_Repeat_Was_Selected_Flag(200);
+ }
+ DM_Add_To_List_Never_Repeat_Once_Selected(200, -1, 3, 6); // VOIGT-KAMPFF
}
Dialogue_Menu_Add_DONE_To_List(30); // DONE
@@ -265,6 +272,7 @@ void SceneScriptRC02::dialogueWithRunciter() {
case 200:
if (_vm->_cutContent) { // scene 16 79
+ Game_Flag_Set(kFlagRC02RunciterVKChosen);
Actor_Face_Actor(kActorMcCoy, kActorRunciter, true);
Actor_Says(kActorMcCoy, 395, 14);
Actor_Face_Actor(kActorRunciter, kActorMcCoy, true);