aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/scene.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/scene.cpp')
-rw-r--r--engines/bladerunner/scene.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/engines/bladerunner/scene.cpp b/engines/bladerunner/scene.cpp
index 6c47d8be14..2c4b5d0ac7 100644
--- a/engines/bladerunner/scene.cpp
+++ b/engines/bladerunner/scene.cpp
@@ -50,7 +50,7 @@ Scene::Scene(BladeRunnerEngine *vm)
_vqaPlayer(nullptr),
_defaultLoop(0),
_defaultLoopSet(false),
- _specialLoopMode(0),
+ _specialLoopMode(kSceneLoopModeLoseControl),
_specialLoop(0),
_specialLoopAtEnd(false),
// _introFinished(false),
@@ -79,7 +79,7 @@ bool Scene::open(int setId, int sceneId, bool isLoadingGame) {
_setId = setId;
_sceneId = sceneId;
- const Common::String setName = _vm->_gameInfo->getSceneName(_sceneId);
+ const Common::String sceneName = _vm->_gameInfo->getSceneName(_sceneId);
if (isLoadingGame) {
// TODO: Set up overlays
@@ -99,9 +99,9 @@ bool Scene::open(int setId, int sceneId, bool isLoadingGame) {
Common::String vqaName;
int currentResourceId = _vm->_chapters->currentResourceId();
if (currentResourceId == 1) {
- vqaName = Common::String::format("%s.VQA", setName.c_str());
+ vqaName = Common::String::format("%s.VQA", sceneName.c_str());
} else {
- vqaName = Common::String::format("%s_%d.VQA", setName.c_str(), MIN(currentResourceId, 3));
+ vqaName = Common::String::format("%s_%d.VQA", sceneName.c_str(), MIN(currentResourceId, 3));
}
if (_vqaPlayer != nullptr) {
@@ -110,7 +110,6 @@ bool Scene::open(int setId, int sceneId, bool isLoadingGame) {
_vqaPlayer = new VQAPlayer(_vm, &_vm->_surfaceBack);
- Common::String sceneName = _vm->_gameInfo->getSceneName(sceneId);
if (!_vm->_sceneScript->Open(sceneName)) {
return false;
}
@@ -128,8 +127,9 @@ bool Scene::open(int setId, int sceneId, bool isLoadingGame) {
if (isLoadingGame) {
// TODO: Advance VQA frame
- if (sceneId >= 73 && sceneId <= 76)
+ if (sceneId == kScenePS10 || sceneId == kScenePS11 || sceneId == kScenePS12 || sceneId == kScenePS13) { // police maze?
_vm->_sceneScript->SceneLoaded();
+ }
return true;
}
@@ -173,7 +173,7 @@ bool Scene::open(int setId, int sceneId, bool isLoadingGame) {
// TODO: add all items to scene
// TODO: calculate walking obstacles??
- if (_specialLoopMode) {
+ if (_specialLoopMode != kSceneLoopModeLoseControl) {
_vm->_sceneScript->PlayerWalkedIn();
}