diff options
Diffstat (limited to 'engines/bladerunner/script/scene')
-rw-r--r-- | engines/bladerunner/script/scene/ps04.cpp | 19 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/tb05.cpp | 2 | ||||
-rw-r--r-- | engines/bladerunner/script/scene/ug13.cpp | 2 |
3 files changed, 15 insertions, 8 deletions
diff --git a/engines/bladerunner/script/scene/ps04.cpp b/engines/bladerunner/script/scene/ps04.cpp index 11e45b73f6..120fde25e2 100644 --- a/engines/bladerunner/script/scene/ps04.cpp +++ b/engines/bladerunner/script/scene/ps04.cpp @@ -51,7 +51,8 @@ void SceneScriptPS04::InitializeScene() { Ambient_Sounds_Add_Sound(kSfxSCANNER5, 9, 40, 20, 20, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxSCANNER6, 9, 40, 20, 20, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxSCANNER7, 9, 40, 20, 20, 0, 0, -101, -101, 0, 0); - Scene_Loop_Start_Special(kPS04LoopPanToPS04, 0, 0); + + Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kPS04LoopPanToPS04, false); Scene_Loop_Set_Default(kPS04LoopMainLoop); } @@ -358,20 +359,26 @@ void SceneScriptPS04::dialogueWithGuzza() { Actor_Says(kActorGuzza, 620, 32); if (_vm->_cutContent) { // add a fade-out here while Guzza calls-in for favors - Scene_Loop_Start_Special(kPS04LoopPanToPS04, 0, 0); + Scene_Loop_Start_Special(kSceneLoopModeOnce, kPS04LoopPanToPS04, true); Scene_Loop_Set_Default(kPS04LoopMainLoop); - Delay(2000); + Delay(1000); + Actor_Face_Actor(kActorGuzza, kActorMcCoy, true); + Delay(1000); } - Actor_Face_Actor(kActorGuzza, kActorMcCoy, true); Actor_Says(kActorGuzza, 700, 34); Actor_Says(kActorMcCoy, 4100, 13); Actor_Says(kActorGuzza, 710, 31); Actor_Says(kActorGuzza, 720, 34); Actor_Says(kActorMcCoy, 4105, 18); - Loop_Actor_Walk_To_XYZ(kActorMcCoy, -668.0f, -350.85f, 962.0f, 0, false, false, 0); +#if BLADERUNNER_ORIGINAL_BUGS + Loop_Actor_Walk_To_XYZ(kActorMcCoy, -668.0f, -350.85f, 962.0f, 0, false, false, false); +#else + // enforce stop running (if was running) - McCoy running in Guzza's office in this scene looks bad + Loop_Actor_Walk_To_XYZ(kActorMcCoy, -668.0f, -350.85f, 962.0f, 0, false, false, true); +#endif // BLADERUNNER_ORIGINAL_BUGS Actor_Says(kActorGuzza, 730, 32); Actor_Face_Actor(kActorMcCoy, kActorGuzza, true); - Loop_Actor_Walk_To_XYZ(kActorMcCoy, -716.0f, -354.85f, 1042.0f, 0, false, false, 0); + Loop_Actor_Walk_To_XYZ(kActorMcCoy, -716.0f, -354.85f, 1042.0f, 0, false, false, false); Actor_Face_Actor(kActorGuzza, kActorMcCoy, true); Actor_Says(kActorGuzza, 740, 31); Actor_Says(kActorGuzza, 750, 32); diff --git a/engines/bladerunner/script/scene/tb05.cpp b/engines/bladerunner/script/scene/tb05.cpp index 896c3ffb73..f2eb62aea0 100644 --- a/engines/bladerunner/script/scene/tb05.cpp +++ b/engines/bladerunner/script/scene/tb05.cpp @@ -177,7 +177,7 @@ bool SceneScriptTB05::ClickedOnExit(int exitId) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.0f, 151.53f, -205.0f, 12, true, false, 0)) { Game_Flag_Set(kFlagTB05toTB06); Set_Enter(kSetTB06, kSceneTB06); - Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 2, 1); + Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 2, true); } return true; } diff --git a/engines/bladerunner/script/scene/ug13.cpp b/engines/bladerunner/script/scene/ug13.cpp index ee1d364e4a..9b72fbdc78 100644 --- a/engines/bladerunner/script/scene/ug13.cpp +++ b/engines/bladerunner/script/scene/ug13.cpp @@ -66,7 +66,7 @@ void SceneScriptUG13::InitializeScene() { } if (Game_Flag_Query(kFlagUG08toUG13)) { - Scene_Loop_Start_Special(0, 0, 0); + Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false); Scene_Loop_Set_Default(1); } else if (Game_Flag_Query(kFlagUG08ElevatorUp)) { Scene_Loop_Set_Default(4); |