From 12645cbb8cb90adb5917b554e14142bf33d0f70a Mon Sep 17 00:00:00 2001 From: johndoe123 Date: Tue, 11 Mar 2014 17:59:59 +0100 Subject: ILLUSIONS: Some work on the Camera class; start with time functions --- engines/illusions/camera.h | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'engines/illusions/camera.h') diff --git a/engines/illusions/camera.h b/engines/illusions/camera.h index d55ab8e33b..fae3c328ac 100644 --- a/engines/illusions/camera.h +++ b/engines/illusions/camera.h @@ -23,15 +23,45 @@ #ifndef ILLUSIONS_CAMERA_H #define ILLUSIONS_CAMERA_H +#include "illusions/graphics.h" #include "common/rect.h" +#include "common/stack.h" namespace Illusions { +struct CameraState { + int _cameraMode; + //field_2 dw + int16 _paused; + int16 _panSpeed; + int _someX, _someY; + Common::Point _currPan; + int _panXShl, _panYShl; + WRect _bounds; + uint32 _panNotifyId; + uint32 _time28; + uint32 _panStartTime; + uint32 _pauseStartTime; + uint32 _time2E; + Common::Point _currPan2; + Common::Point _panTargetPoint; + Common::Point _trackingLimits; + Common::Point _pt; + uint32 _panObjectId; + Common::Point *_panToPositionPtr; + uint _pointFlags; + //field_4A dw +}; + class Camera { public: + Camera(); + void clearStack(); + void set(Common::Point &panPoint, WidthHeight &dimensions); Common::Point getCurrentPan(); protected: - Common::Point _currPan; + CameraState _activeState; + Common::FixedStack _stack; }; } // End of namespace Illusions -- cgit v1.2.3