From 34f3e8667c89a3187878d75528e5cd79e618ba50 Mon Sep 17 00:00:00 2001 From: Thanasis Antoniou Date: Sun, 15 Sep 2019 20:57:48 +0300 Subject: BLADERUNNER: Fix map glitches and teleport in BB09 --- engines/bladerunner/script/scene/bb09.cpp | 9 +++++++++ engines/bladerunner/set.cpp | 8 ++++++++ 2 files changed, 17 insertions(+) (limited to 'engines') diff --git a/engines/bladerunner/script/scene/bb09.cpp b/engines/bladerunner/script/scene/bb09.cpp index 56dc386389..74ea3081d7 100644 --- a/engines/bladerunner/script/scene/bb09.cpp +++ b/engines/bladerunner/script/scene/bb09.cpp @@ -28,7 +28,11 @@ void SceneScriptBB09::InitializeScene() { Setup_Scene_Information(111.2f, -8.96f, 134.65f, 0); if (Game_Flag_Query(kFlagBB10toBB09)) { Game_Flag_Reset(kFlagBB10toBB09); +#if BLADERUNNER_ORIGINAL_BUGS Setup_Scene_Information(115.45f, -8.96f, 134.0f, 628); +#else + Setup_Scene_Information(455.74f, -8.99f, 217.48f, 996); +#endif // BLADERUNNER_ORIGINAL_BUGS } else if (Game_Flag_Query(kFlagBB08toBB09)) { Game_Flag_Reset(kFlagBB08toBB09); Setup_Scene_Information(107.45f, -9.14f, 166.0f, 244); @@ -77,6 +81,11 @@ void SceneScriptBB09::InitializeScene() { } void SceneScriptBB09::SceneLoaded() { +#if BLADERUNNER_ORIGINAL_BUGS +#else + Obstacle_Object("BACKWALL1", true); + Obstacle_Object("BACKWALL2", true); +#endif // BLADERUNNER_ORIGINAL_BUGS Obstacle_Object("WICKER CHAIR ", true); Unobstacle_Object("ROOM03 RIGHT WALL", true); Unclickable_Object("WICKER CHAIR "); diff --git a/engines/bladerunner/set.cpp b/engines/bladerunner/set.cpp index 17f6c7f45c..33d6027c5d 100644 --- a/engines/bladerunner/set.cpp +++ b/engines/bladerunner/set.cpp @@ -576,6 +576,14 @@ void Set::patchInAdditionalObjectsInSet() { Common::String custObjName; BoundingBox bbox; switch (_vm->_scene->getSceneId()) { + case kSceneBB09: + bbox = BoundingBox(406.12f, -9.18f, 140.87f, 440.04f, 172.49f, 165.33f); + custObjName = "BACKWALL1"; + setupNewObjectInSet(custObjName, bbox); + bbox = BoundingBox(400.12f, -9.18f, 208.87f, 440.04f, 182.49f, 231.33f); + custObjName = "BACKWALL2"; + setupNewObjectInSet(custObjName, bbox); + break; case kSceneCT02: bbox = BoundingBox(-130.13f, -162.41f, -16.25f, -81.74f, 160.29f, -4.74f); custObjName = "BACKWALL2"; -- cgit v1.2.3