aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/scene.h
diff options
context:
space:
mode:
authorPeter Kohaut2016-09-29 21:00:36 +0200
committerEugene Sandulenko2016-09-29 22:33:42 +0200
commitaf70a90cbc239f820f6c33ac54c207829fd8847a (patch)
tree9d4893f45df39345ee78ab09ecc4c82e380a21ce /engines/bladerunner/scene.h
parentf5d5f3302f59d2073c15985f8ffb3058bad7d014 (diff)
downloadscummvm-rg350-af70a90cbc239f820f6c33ac54c207829fd8847a.tar.gz
scummvm-rg350-af70a90cbc239f820f6c33ac54c207829fd8847a.tar.bz2
scummvm-rg350-af70a90cbc239f820f6c33ac54c207829fd8847a.zip
BLADERUNNER: fixed loading of new set/scene, fixed memoryleak in lights
Diffstat (limited to 'engines/bladerunner/scene.h')
-rw-r--r--engines/bladerunner/scene.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/engines/bladerunner/scene.h b/engines/bladerunner/scene.h
index e4a2406eea..6a34fcd249 100644
--- a/engines/bladerunner/scene.h
+++ b/engines/bladerunner/scene.h
@@ -41,7 +41,7 @@ public:
Set *_set;
int _setId;
int _sceneId;
- VQAPlayer _vqaPlayer;
+ VQAPlayer *_vqaPlayer;
int _defaultLoop;
int _defaultLoopSet;
@@ -69,7 +69,7 @@ public:
_set(new Set(vm)),
_setId(-1),
_sceneId(-1),
- _vqaPlayer(vm),
+ _vqaPlayer(nullptr),
_defaultLoop(0),
_nextSetId(-1),
_nextSceneId(-1),
@@ -83,9 +83,13 @@ public:
delete _set;
delete _regions;
delete _exits;
+ if (_vqaPlayer != nullptr) {
+ delete _vqaPlayer;
+ }
}
bool open(int setId, int sceneId, bool isLoadingGame);
+ bool close(bool isLoadingGame);
int advanceFrame(Graphics::Surface &surface, uint16 *&zBuffer);
void setActorStart(Vector3 position, int facing);