diff options
Diffstat (limited to 'engines/access/room.h')
-rw-r--r-- | engines/access/room.h | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/engines/access/room.h b/engines/access/room.h index 28506db7d6..1b803667af 100644 --- a/engines/access/room.h +++ b/engines/access/room.h @@ -35,10 +35,13 @@ private: protected: AccessEngine *_vm; + void loadRoomData(const byte *roomData); void setupRoom(); void setWallCodes(); void buildScreen(); + virtual void loadRoom(int roomNumber) = 0; + virtual void reloadRoom() = 0; virtual void reloadRoom1() = 0; @@ -56,8 +59,38 @@ public: * Clear all the data used by the room */ void clearRoom(); +}; + +struct FileIdent { + int _fileNum; + int _subfile; +}; - void loadRoom(int room); +struct CellIdent : FileIdent { + byte _cell; +}; + +class RoomInfo { +public: + bool _roomFlag; + int _estIndex; + FileIdent _musicFile; + int _scaleH1; + int _scaleH2; + int _scaleN1; + FileIdent _playFieldFile; + Common::Array<CellIdent> _cells; + FileIdent _scriptFile; + FileIdent _animFile; + int _scaleI; + int _scrollThreshold; + FileIdent _paletteFile; + int _startColor; + int _numColors; + Common::Array<uint32> _vidTable; + Common::Array<FileIdent> _sounds; +public: + RoomInfo(const byte *data); }; } // End of namespace Access |