diff options
| author | Thanasis Antoniou | 2019-06-01 16:51:19 +0300 |
|---|---|---|
| committer | Thanasis Antoniou | 2019-06-01 19:16:34 +0300 |
| commit | 61800882b7003b80a198aec502ecf8e92bda90d9 (patch) | |
| tree | 2cb10c7f42cee8f8db60982a9b3add5c57c49a8e | |
| parent | f56fe145d7f918e49d5844e1315e3d3db14a7392 (diff) | |
| download | scummvm-rg350-61800882b7003b80a198aec502ecf8e92bda90d9.tar.gz scummvm-rg350-61800882b7003b80a198aec502ecf8e92bda90d9.tar.bz2 scummvm-rg350-61800882b7003b80a198aec502ecf8e92bda90d9.zip | |
BLADERUNNER: Restore Eyeworks Eye and Projector comments
| -rw-r--r-- | engines/bladerunner/game_constants.h | 4 | ||||
| -rw-r--r-- | engines/bladerunner/script/scene/dr02.cpp | 18 | ||||
| -rw-r--r-- | engines/bladerunner/script/scene/nr10.cpp | 15 |
3 files changed, 34 insertions, 3 deletions
diff --git a/engines/bladerunner/game_constants.h b/engines/bladerunner/game_constants.h index da3d3568e9..12f33b70b3 100644 --- a/engines/bladerunner/game_constants.h +++ b/engines/bladerunner/game_constants.h @@ -1076,9 +1076,9 @@ enum Flags { kFlagNR11BurnedUp = 634, kFlagNR11SteeleShoot = 635, kFlagNR08Faded = 636, - // 637 is never used + kFlagMcCoyCommentsOnOldProjector = 637, // Re-purposed. Original: 637 is never used kFlagNR07McCoyIsCop = 638, - // 639 is never used + kFlagMcCoyCommentsOnEyeOfEyeworks = 639, // Re-purposed. Original: 639 is never used kFlagNR10CameraDestroyed = 640, kFlagNR10toNR11 = 641, // is never checked kFlagNR10McCoyBlinded = 642, diff --git a/engines/bladerunner/script/scene/dr02.cpp b/engines/bladerunner/script/scene/dr02.cpp index 0a07a506f2..23387350cd 100644 --- a/engines/bladerunner/script/scene/dr02.cpp +++ b/engines/bladerunner/script/scene/dr02.cpp @@ -99,7 +99,13 @@ void SceneScriptDR02::SceneLoaded() { Unclickable_Object("TRASH CAN WITH FIRE"); Unclickable_Object("U2 CHEWDOOR"); Unclickable_Object("MMTRASHCAN"); - Unclickable_Object("U2 EYE"); + if (_vm->_cutContent) { + if (Game_Flag_Query(kFlagMcCoyCommentsOnEyeOfEyeworks)) { + Unclickable_Object("U2 EYE"); + } + } else { + Unclickable_Object("U2 EYE"); + } Unclickable_Object("U2 E"); Unclickable_Object("MMNEWSP01"); Unclickable_Object("MMNEWSP02"); @@ -117,6 +123,16 @@ bool SceneScriptDR02::MouseClick(int x, int y) { } bool SceneScriptDR02::ClickedOn3DObject(const char *objectName, bool a2) { + if (_vm->_cutContent) { + if (!Game_Flag_Query(kFlagMcCoyCommentsOnEyeOfEyeworks) + && (Object_Query_Click("U2 EYE", objectName)) + ) { + Game_Flag_Set(kFlagMcCoyCommentsOnEyeOfEyeworks); + Unclickable_Object("U2 EYE"); + Actor_Voice_Over(660, kActorVoiceOver); + return true; + } + } return false; } diff --git a/engines/bladerunner/script/scene/nr10.cpp b/engines/bladerunner/script/scene/nr10.cpp index 93eeb31fd9..de3cd2d299 100644 --- a/engines/bladerunner/script/scene/nr10.cpp +++ b/engines/bladerunner/script/scene/nr10.cpp @@ -35,6 +35,10 @@ void SceneScriptNR10::InitializeScene() { Scene_Exit_Add_2D_Exit(0, 144, 163, 194, 318, 3); Scene_Exit_Add_2D_Exit(1, 475, 95, 568, 230, 0); + if (_vm->_cutContent && !Game_Flag_Query(kFlagMcCoyCommentsOnOldProjector)) { + Scene_2D_Region_Add(0, 323, 86, 473, 320);// projector area 1 + Scene_2D_Region_Add(1, 280, 180, 323, 212); // projector area 2 + } Ambient_Sounds_Add_Looping_Sound(kSfxCTDRONE1, 22, 0, 1); Ambient_Sounds_Add_Looping_Sound(kSfxBRBED5, 33, 0, 1); @@ -115,6 +119,17 @@ bool SceneScriptNR10::ClickedOnExit(int exitId) { } bool SceneScriptNR10::ClickedOn2DRegion(int region) { +if (_vm->_cutContent) { + if (!Game_Flag_Query(kFlagMcCoyCommentsOnOldProjector) && (region == 0 || region == 1) ) { + Game_Flag_Set(kFlagMcCoyCommentsOnOldProjector); + Actor_Face_XYZ(kActorMcCoy, -28.90f, 55.00f, -133.81f, true); + Actor_Voice_Over(1750, kActorVoiceOver); + Actor_Voice_Over(1760, kActorVoiceOver); + Scene_2D_Region_Remove(0); + Scene_2D_Region_Remove(1); + return true; + } + } return false; } |
