aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorThanasis Antoniou2019-09-15 20:57:48 +0300
committerThanasis Antoniou2019-09-15 20:58:47 +0300
commit34f3e8667c89a3187878d75528e5cd79e618ba50 (patch)
treec72a2b92aa27fd21dbef312ecfab56f0d7483992 /engines
parent28fe02eb305d3de8e3e2da5791b0f7c74d68c255 (diff)
downloadscummvm-rg350-34f3e8667c89a3187878d75528e5cd79e618ba50.tar.gz
scummvm-rg350-34f3e8667c89a3187878d75528e5cd79e618ba50.tar.bz2
scummvm-rg350-34f3e8667c89a3187878d75528e5cd79e618ba50.zip
BLADERUNNER: Fix map glitches and teleport in BB09
Diffstat (limited to 'engines')
-rw-r--r--engines/bladerunner/script/scene/bb09.cpp9
-rw-r--r--engines/bladerunner/set.cpp8
2 files changed, 17 insertions, 0 deletions
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";