diff options
author | Peter Kohaut | 2016-09-10 18:16:17 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2016-09-29 22:33:40 +0200 |
commit | b67bca20b5db7f3d6473341efd7fabfa6532f465 (patch) | |
tree | 6fbbd28dc707dac1c3cacde2e8622cceea6d1b0f /engines/bladerunner/scene.h | |
parent | 2888d0b3460cdca2dd52f8d6aa94b429d46345ad (diff) | |
download | scummvm-rg350-b67bca20b5db7f3d6473341efd7fabfa6532f465.tar.gz scummvm-rg350-b67bca20b5db7f3d6473341efd7fabfa6532f465.tar.bz2 scummvm-rg350-b67bca20b5db7f3d6473341efd7fabfa6532f465.zip |
BLADERUNNER: Pull in changes from madmoose
Diffstat (limited to 'engines/bladerunner/scene.h')
-rw-r--r-- | engines/bladerunner/scene.h | 36 |
1 files changed, 29 insertions, 7 deletions
diff --git a/engines/bladerunner/scene.h b/engines/bladerunner/scene.h index cabd912b0d..1a3c9f38bf 100644 --- a/engines/bladerunner/scene.h +++ b/engines/bladerunner/scene.h @@ -25,10 +25,10 @@ #include "bladerunner/bladerunner.h" +#include "bladerunner/regions.h" #include "bladerunner/set.h" -//#include "bladerunner/view.h" +#include "bladerunner/view.h" #include "bladerunner/vqa_player.h" -#include "bladerunner/regions.h" namespace BladeRunner { @@ -42,27 +42,41 @@ public: int _setId; int _sceneId; VQAPlayer _vqaPlayer; + int _defaultLoop; + int _defaultLoopSet; + int _field_20_loop_stuff; + int _specialLoopMode; + int _specialLoop; + int _introFinished; int _nextSetId; int _nextSceneId; int _frame; + Vector3 _actorStartPosition; int _actorStartFacing; bool _playerWalkedIn; + View _view; + Regions* _regions; Regions* _exits; + // _default_loop_id = 0; + // _scene_vqa_frame_number = -1; + + public: Scene(BladeRunnerEngine *vm) : _vm(vm), _set(new Set(vm)), _setId(-1), _sceneId(-1), - _vqaPlayer(vm, vm->_view), + _vqaPlayer(vm), _defaultLoop(0), _nextSetId(-1), _nextSceneId(-1), _playerWalkedIn(false), + _introFinished(false), _regions(new Regions()), _exits(new Regions()) {} @@ -76,15 +90,23 @@ public: bool open(int setId, int sceneId, bool isLoadingGame); int advanceFrame(Graphics::Surface &surface, uint16 *&zBuffer); void setActorStart(Vector3 position, int facing); - int getSetId(); - int getSceneId(); - int findObject(char *objectName); + + void loopSetDefault(int a); + void loopStartSpecial(int a, int b, int c); + + int getSetId() { return _setId; } + int getSceneId() { return _sceneId; } + + bool didPlayerWalkIn() { bool r = _playerWalkedIn; _playerWalkedIn = false; return r; } + + int findObject(const char *objectName); bool objectSetHotMouse(int objectId); bool objectGetBoundingBox(int objectId, BoundingBox *boundingBox); void objectSetIsClickable(int objectId, bool isClickable, bool sceneLoaded); void objectSetIsObstacle(int objectId, bool isObstacle, bool sceneLoaded, bool updateWalkpath); void objectSetIsObstacleAll(bool isObstacle, bool sceneLoaded); - void objectSetIsCombatTarget(int objectId, bool isCombatTarget, bool sceneLoaded); + void objectSetIsTarget(int objectId, bool isTarget, bool sceneLoaded); + const char *objectGetName(int objectId); }; } // End of namespace BladeRunner |