aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script/scene/rc02.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/script/scene/rc02.cpp')
-rw-r--r--engines/bladerunner/script/scene/rc02.cpp61
1 files changed, 55 insertions, 6 deletions
diff --git a/engines/bladerunner/script/scene/rc02.cpp b/engines/bladerunner/script/scene/rc02.cpp
index 15d8cfe453..049427f235 100644
--- a/engines/bladerunner/script/scene/rc02.cpp
+++ b/engines/bladerunner/script/scene/rc02.cpp
@@ -75,12 +75,37 @@ void SceneScriptRC02::SceneLoaded() {
Clickable_Object("SCRTY CA03");
Unclickable_Object("GRL_DSKLEG");
Unclickable_Object("CURTAIN");
- Unclickable_Object("DRAPE01");
- Unclickable_Object("DRAPE02");
- Unclickable_Object("DRAPE03");
- Unclickable_Object("DRAPE05");
- Unclickable_Object("DRAPE06");
- Unclickable_Object("DRAPE07");
+ if (_vm->_cutContent) {
+ if (Global_Variable_Query(kVariableChapter) == 1
+ && !Game_Flag_Query(kFlagMcCoyCommentsOnMurderedAnimals)
+ && !Actor_Clue_Query(kActorMcCoy, kClueLabCorpses)
+ ) {
+ Clickable_Object("DRAPE01");
+ Clickable_Object("DRAPE02");
+ Clickable_Object("DRAPE03");
+ Clickable_Object("DRAPE04");
+ Clickable_Object("DRAPE05");
+ Clickable_Object("DRAPE06");
+ Clickable_Object("DRAPE07");
+ } else {
+ Unclickable_Object("DRAPE01");
+ Unclickable_Object("DRAPE02");
+ Unclickable_Object("DRAPE03");
+ Unclickable_Object("DRAPE04");
+ Unclickable_Object("DRAPE05");
+ Unclickable_Object("DRAPE06");
+ Unclickable_Object("DRAPE07");
+ }
+ } else {
+ // original code
+ Unclickable_Object("DRAPE01");
+ Unclickable_Object("DRAPE02");
+ Unclickable_Object("DRAPE03");
+ Unclickable_Object("DRAPE05");
+ Unclickable_Object("DRAPE06");
+ Unclickable_Object("DRAPE07");
+ }
+
if (Actor_Clue_Query(kActorMcCoy, kClueRuncitersVideo) || Global_Variable_Query(kVariableChapter) > 1) {
Unclickable_Object("SCRTY CA03");
}
@@ -133,6 +158,30 @@ bool SceneScriptRC02::ClickedOn3DObject(const char *objectName, bool a2) {
return true;
}
}
+
+ if (_vm->_cutContent
+ && !Game_Flag_Query(kFlagMcCoyCommentsOnMurderedAnimals)
+ && Global_Variable_Query(kVariableChapter) == 1
+ && !Actor_Clue_Query(kActorMcCoy, kClueLabCorpses)
+ && (Object_Query_Click("DRAPE01", objectName)
+ || Object_Query_Click("DRAPE02", objectName)
+ || Object_Query_Click("DRAPE03", objectName)
+ || Object_Query_Click("DRAPE04", objectName)
+ || Object_Query_Click("DRAPE05", objectName)
+ || Object_Query_Click("DRAPE06", objectName)
+ || Object_Query_Click("DRAPE07", objectName))
+ ) {
+ Game_Flag_Set(kFlagMcCoyCommentsOnMurderedAnimals);
+ Unclickable_Object("DRAPE01");
+ Unclickable_Object("DRAPE02");
+ Unclickable_Object("DRAPE03");
+ Unclickable_Object("DRAPE04");
+ Unclickable_Object("DRAPE05");
+ Unclickable_Object("DRAPE06");
+ Unclickable_Object("DRAPE07");
+ Actor_Voice_Over(1940, kActorVoiceOver);
+ return true;
+ }
return false;
}