25#include "engines/myst3/hotspot.h"
26#include "engines/myst3/detection.h"
28#include "common/scummsys.h"
29#include "common/str.h"
30#include "common/language.h"
31#include "common/platform.h"
32#include "common/ptr.h"
33#include "common/array.h"
34#include "common/hashmap.h"
35#include "common/stream.h"
52 kNodeMenuNewGame = 98,
54 kNodeMenuLoadGame = 200,
55 kNodeMenuSaveGame = 300
61 kRoomTomahnaStart = 301,
62 kRoomTomahnaReturn = 401,
69 kRoomEdannaStart = 601,
74 kRoomVoltaicStart = 701,
86 kRoomAmateriaStart = 1001,
117 RoomKey(uint16 room, uint16 age) : roomID(room), ageID(age) {};
119 bool operator==(
const RoomKey &k)
const {
120 return ageID == k.ageID && roomID == k.roomID;
144 kScriptTypeAmbientSound,
145 kScriptTypeBackgroundSound,
147 kScriptTypeAmbientCue
221 uint32 getSoundIdMax()
const {
return _soundIdMax; }
228 int16 getGameLanguageCode()
const;
231 bool areRoomsScriptsEqual(uint32 roomID1, uint32 ageID1, uint32 roomID2, uint32 ageID2, ScriptType scriptType);
235 uint operator()(
const RoomKey &v)
const {
236 return v.ageID + (v.roomID << 16);
244 const uint32 _localizationType;
246 static const AgeData _ages[];
248 NodesCache _roomNodesCache;
259 static const uint kDatVersion = 3;
262 int32 _roomScriptsStartOffset;
264 const RoomData *findRoomData(uint32 roomID, uint32 ageID)
const;
268 void preloadCommonRooms();
269 void initializeZipBitIndexTable();
270 void patchLanguageMenu();
Definition: database.h:162
Common::String getRoomName(uint32 roomID, uint32 ageID) const
void cacheRoom(uint32 roomID, uint32 ageID)
const AmbientCue & getAmbientCue(uint16 id)
uint32 getSoundIdMin() const
Definition: database.h:220
Common::Array< uint16 > listRoomNodes(uint32 roomID, uint32 ageID)
Common::String getSoundName(uint32 id)
bool isCommonRoom(uint32 roomID, uint32 ageID) const
const Common::Array< Opcode > & getNodeInitScript()
Definition: database.h:192
int32 getNodeZipBitIndex(uint16 nodeID, uint32 roomID, uint32 ageID)
RoomKey getRoomKey(const char *name)
uint32 getAgeLabelId(uint32 ageID)
bool areRoomsScriptsEqual(uint32 roomID1, uint32 ageID1, uint32 roomID2, uint32 ageID2, ScriptType scriptType)
NodePtr getNodeData(uint16 nodeID, uint32 roomID, uint32 ageID)
Language
Definition: language.h:45
Definition: database.h:124
Definition: database.h:132
Definition: database.h:95
Definition: database.h:108
Definition: database.h:113
Definition: database.h:153