diff options
Diffstat (limited to 'engines/sherlock/scene.h')
-rw-r--r-- | engines/sherlock/scene.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/engines/sherlock/scene.h b/engines/sherlock/scene.h index f92dfccfad..e216c2bd9d 100644 --- a/engines/sherlock/scene.h +++ b/engines/sherlock/scene.h @@ -24,6 +24,9 @@ #define SHERLOCK_SCENE_H #include "common/scummsys.h" +#include "common/array.h" +#include "common/rect.h" +#include "sherlock/objects.h" #include "sherlock/resources.h" namespace Sherlock { @@ -32,11 +35,32 @@ namespace Sherlock { class SherlockEngine; +struct BgFileHeader { + int _numStructs; + int _numImages; + int _numcAnimations; + int _descSize; + int _seqSize; + int _fill; + + void synchronize(Common::SeekableReadStream &s); +}; + +struct BgfileheaderInfo { + int _fSize; // How long images are + int _maxFrames; // How many unique frames in object + Common::String _filename; // Filename of object + + void synchronize(Common::SeekableReadStream &s); +}; + class Scene { private: SherlockEngine *_vm; void loadScene(); + + void loadScene(const Common::String &filename); public: bool _stats[SCENES_COUNT][9]; bool _savedStats[SCENES_COUNT][9]; @@ -50,6 +74,17 @@ public: int _menuMode, _keyboardInput; int _oldKey, _help, _oldHelp; int _oldTemp, _temp; + bool _walkedInScene; + int _ongoingCans; + int _version; + bool _lzwMode; + int _invGraphicItems; + Common::String _comments; + Common::Array<char> _descText; + Common::Array<Common::Rect> _roomBounds; + Common::Array<Object> _bgShapes; + Common::Array<CAnim> _cAnim; + Common::Array<byte> _sequenceBuffer; public: Scene(SherlockEngine *vm); ~Scene(); |