diff options
-rw-r--r-- | engines/tsage/blue_force/blueforce_scenes6.cpp | 8 | ||||
-rw-r--r-- | engines/tsage/blue_force/blueforce_scenes6.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/engines/tsage/blue_force/blueforce_scenes6.cpp b/engines/tsage/blue_force/blueforce_scenes6.cpp index 86e64aaffa..e8c9af5492 100644 --- a/engines/tsage/blue_force/blueforce_scenes6.cpp +++ b/engines/tsage/blue_force/blueforce_scenes6.cpp @@ -131,6 +131,14 @@ void Scene600::signal() { BF_GLOBALS._sceneManager.changeScene(620); } +// WORKAROUND: Fix for original game bug where the global scrolling object follower +// remains set to an object within the scene that is no longer active +void Scene600::remove() { + BF_GLOBALS._scrollFollower = &BF_GLOBALS._player; + + SceneExt::remove(); +} + /*-------------------------------------------------------------------------- * Scene 620 - Hospital cut-scene * diff --git a/engines/tsage/blue_force/blueforce_scenes6.h b/engines/tsage/blue_force/blueforce_scenes6.h index 7c35b75053..e354e9e069 100644 --- a/engines/tsage/blue_force/blueforce_scenes6.h +++ b/engines/tsage/blue_force/blueforce_scenes6.h @@ -55,6 +55,7 @@ public: virtual void postInit(SceneObjectList *OwnerList = NULL); virtual void signal(); + virtual void remove(); }; class Scene620 : public PalettedScene { |