diff options
author | Thanasis Antoniou | 2019-05-13 00:19:17 +0300 |
---|---|---|
committer | Thanasis Antoniou | 2019-05-13 03:29:00 +0300 |
commit | 9207f7270b9be7b72f7b65f5df6957c56c3bdc31 (patch) | |
tree | c48948ef34436d40b1cdff15972ec0d2e2dca79f /engines/bladerunner/script/scene/ma01.cpp | |
parent | 618d48dde8a9e83f0cfa01d48cecd9cbfca6bf0d (diff) | |
download | scummvm-rg350-9207f7270b9be7b72f7b65f5df6957c56c3bdc31.tar.gz scummvm-rg350-9207f7270b9be7b72f7b65f5df6957c56c3bdc31.tar.bz2 scummvm-rg350-9207f7270b9be7b72f7b65f5df6957c56c3bdc31.zip |
BLADERUNNER: Hit and Run dispatch clue restored
Diffstat (limited to 'engines/bladerunner/script/scene/ma01.cpp')
-rw-r--r-- | engines/bladerunner/script/scene/ma01.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/engines/bladerunner/script/scene/ma01.cpp b/engines/bladerunner/script/scene/ma01.cpp index 9b4e8d236e..d21ac5d7c6 100644 --- a/engines/bladerunner/script/scene/ma01.cpp +++ b/engines/bladerunner/script/scene/ma01.cpp @@ -269,12 +269,41 @@ void SceneScriptMA01::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bo } void SceneScriptMA01::PlayerWalkedIn() { + if (_vm->_cutContent) { + if (!Game_Flag_Query(kFlagCT01Visited) && !Actor_Clue_Query(kActorMcCoy, kClueDispatchHitAndRun)) { + Actor_Clue_Acquire(kActorMcCoy, kClueDispatchHitAndRun, false, kActorDispatcher); + ADQ_Add(kActorDispatcher, 80, kAnimationModeTalk); + if (Game_Flag_Query(kFlagRC01PoliceDone)) { + ADQ_Add(kActorOfficerLeary, 340, kAnimationModeTalk); // sector 3 - go ahead + } else { + ADQ_Add(kActorOfficerGrayford, 360, kAnimationModeTalk); // sector 3 - go ahead + } + ADQ_Add(kActorDispatcher, 90, kAnimationModeTalk); + ADQ_Add(kActorDispatcher, 100, kAnimationModeTalk); + ADQ_Add(kActorDispatcher, 110, kAnimationModeTalk); + if (Game_Flag_Query(kFlagRC01PoliceDone)) { + ADQ_Add(kActorOfficerLeary, 350, kAnimationModeTalk); // sector 3 - responding code 3 + } else { + ADQ_Add(kActorOfficerGrayford, 370, kAnimationModeTalk); // sector 3 - responding code 3 + } + ADQ_Add_Pause(1000); + ADQ_Add(kActorDispatcher, 120, kAnimationModeTalk); + ADQ_Add(kActorDispatcher, 130, kAnimationModeTalk); + ADQ_Add(kActorDispatcher, 140, kAnimationModeTalk); + ADQ_Add(kActorDispatcher, 150, kAnimationModeTalk); + } + } } void SceneScriptMA01::PlayerWalkedOut() { Actor_Set_Invisible(kActorMcCoy, false); Ambient_Sounds_Remove_All_Non_Looping_Sounds(true); Ambient_Sounds_Remove_All_Looping_Sounds(1); + + if (_vm->_cutContent) { + ADQ_Flush(); // for dispatcher queue cleanup + } + if (!Game_Flag_Query(kFlagMA01toMA06)) { if (Global_Variable_Query(kVariableChapter) == 1) { Outtake_Play(kOuttakeTowards2, true, -1); |