diff options
author | Thanasis Antoniou | 2019-08-09 21:28:19 +0300 |
---|---|---|
committer | Thanasis Antoniou | 2019-08-09 21:29:07 +0300 |
commit | 5b839c53823dba2e45ad8ada241d6c31b15208c3 (patch) | |
tree | eea422329f7d9d394dad92f15d58c877fe0f4218 /engines/bladerunner/script/scene | |
parent | 92d3751972b68a56c3cad215f1e24eb586ccd447 (diff) | |
download | scummvm-rg350-5b839c53823dba2e45ad8ada241d6c31b15208c3.tar.gz scummvm-rg350-5b839c53823dba2e45ad8ada241d6c31b15208c3.tar.bz2 scummvm-rg350-5b839c53823dba2e45ad8ada241d6c31b15208c3.zip |
BLADERUNNER: Restore more comments in RC02
Diffstat (limited to 'engines/bladerunner/script/scene')
-rw-r--r-- | engines/bladerunner/script/scene/ct02.cpp | 1 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/rc02.cpp | 30 |
2 files changed, 29 insertions, 2 deletions
diff --git a/engines/bladerunner/script/scene/ct02.cpp b/engines/bladerunner/script/scene/ct02.cpp index f143e989de..07907d1fff 100644 --- a/engines/bladerunner/script/scene/ct02.cpp +++ b/engines/bladerunner/script/scene/ct02.cpp @@ -288,6 +288,7 @@ bool SceneScriptCT02::ClickedOnExit(int exitId) { bool SceneScriptCT02::ClickedOn2DRegion(int region) { if (_vm->_cutContent + && Global_Variable_Query(kVariableChapter) == 1 && Game_Flag_Query(kFlagCT02McCoyShouldCommentOnDumpedSoup) && (region == 0 || region == 1) ) { diff --git a/engines/bladerunner/script/scene/rc02.cpp b/engines/bladerunner/script/scene/rc02.cpp index e307fdf1dc..3aa8cc33b5 100644 --- a/engines/bladerunner/script/scene/rc02.cpp +++ b/engines/bladerunner/script/scene/rc02.cpp @@ -39,6 +39,11 @@ void SceneScriptRC02::InitializeScene() { if (Game_Flag_Query(kFlagRC51Available)) { Scene_Exit_Add_2D_Exit(kRC02ExitRC51, 265, 58, 346, 154, 0); } + if (_vm->_cutContent + && Global_Variable_Query(kVariableChapter) == 1 + && !Game_Flag_Query(kFlagRC02McCoyCommentsOnVideoScreens)) { + Scene_2D_Region_Add(0, 187, 104, 235, 150);// broken screen + } Ambient_Sounds_Remove_All_Non_Looping_Sounds(false); Ambient_Sounds_Add_Looping_Sound(kSfxBRBED5, 50, 1, 1); Ambient_Sounds_Add_Looping_Sound(kSfxWINDLOP8, 75, 1, 1); @@ -164,8 +169,8 @@ bool SceneScriptRC02::ClickedOn3DObject(const char *objectName, bool a2) { } if (_vm->_cutContent - && !Game_Flag_Query(kFlagMcCoyCommentsOnMurderedAnimals) && Global_Variable_Query(kVariableChapter) == 1 + && !Game_Flag_Query(kFlagMcCoyCommentsOnMurderedAnimals) && !Actor_Clue_Query(kActorMcCoy, kClueLabCorpses) && (Object_Query_Click("DRAPE01", objectName) || Object_Query_Click("DRAPE02", objectName) @@ -175,6 +180,15 @@ bool SceneScriptRC02::ClickedOn3DObject(const char *objectName, bool a2) { || Object_Query_Click("DRAPE06", objectName) || Object_Query_Click("DRAPE07", objectName)) ) { + if (Player_Query_Agenda() == kPlayerAgendaSurly + || (Player_Query_Agenda() == kPlayerAgendaErratic && Random_Query(0, 1) == 1) + ) { + Actor_Voice_Over(1940, kActorVoiceOver); + } else { + Actor_Voice_Over(9010, kActorMcCoy); + Actor_Voice_Over(9015, kActorMcCoy); + Actor_Voice_Over(9020, kActorMcCoy); + } Game_Flag_Set(kFlagMcCoyCommentsOnMurderedAnimals); Unclickable_Object("DRAPE01"); Unclickable_Object("DRAPE02"); @@ -183,7 +197,6 @@ bool SceneScriptRC02::ClickedOn3DObject(const char *objectName, bool a2) { Unclickable_Object("DRAPE05"); Unclickable_Object("DRAPE06"); Unclickable_Object("DRAPE07"); - Actor_Voice_Over(1940, kActorVoiceOver); return true; } return false; @@ -436,6 +449,19 @@ bool SceneScriptRC02::ClickedOnExit(int exitId) { } bool SceneScriptRC02::ClickedOn2DRegion(int region) { + + if (_vm->_cutContent + && Global_Variable_Query(kVariableChapter) == 1 + && !Game_Flag_Query(kFlagRC02McCoyCommentsOnVideoScreens) + && region == 0 + ) { + Game_Flag_Set(kFlagRC02McCoyCommentsOnVideoScreens); + Scene_2D_Region_Remove(0); + Actor_Voice_Over(9025, kActorMcCoy); + Actor_Voice_Over(9030, kActorMcCoy); + Actor_Voice_Over(9035, kActorMcCoy); + return true; + } return false; } |