46 #ifndef AGS_SHARED_GAME_ROOM_INFO_H 47 #define AGS_SHARED_GAME_ROOM_INFO_H 49 #include "ags/lib/std/memory.h" 50 #include "ags/lib/allegro.h" 51 #include "ags/shared/ac/common_defines.h" 52 #include "ags/shared/game/interactions.h" 53 #include "ags/shared/util/geometry.h" 54 #include "ags/shared/util/string.h" 60 typedef std::shared_ptr<ccScript> PScript;
77 kRoomVolumeQuietest = -3,
78 kRoomVolumeQuieter = -2,
79 kRoomVolumeQuiet = -1,
80 kRoomVolumeNormal = 0,
82 kRoomVolumeLouder = 2,
83 kRoomVolumeLoudest = 3,
85 kRoomVolumeExtra1 = 4,
86 kRoomVolumeExtra2 = 5,
88 kRoomVolumeMin = kRoomVolumeQuietest,
89 kRoomVolumeMax = kRoomVolumeExtra2,
94 kRoomFlag_BkgFrameLocked = 0x01
98 #define NOT_VECTOR_SCALED -10000 100 #define NO_GAME_ID_IN_ROOM_FILE 16325 102 #define MAX_ROOM_BGFRAMES 5 // max number of frames in animating bg scene 104 #define MAX_ROOM_HOTSPOTS 50 // v2.62: 20 -> 30; v2.8: -> 50 105 #define MAX_ROOM_OBJECTS_v300 40 // for some legacy logic support 106 #define MAX_ROOM_OBJECTS 256 // v3.6.0: 40 -> 256 (now limited by room format) 107 #define MAX_ROOM_REGIONS 16 111 #define MAX_WALK_AREAS 15 112 #define MAX_WALK_BEHINDS 16 114 #define MAX_MESSAGES 100 123 typedef std::shared_ptr<Bitmap> PBitmap;
130 bool SaveLoadDisabled;
136 RoomVolumeMod MusicVolume;
149 bool IsPaletteShared;
221 int32_t CharacterView;
246 #define MSG_DISPLAYNEXT 0x01 // supercedes using alt-200 at end of message 247 #define MSG_TIMELIMIT 0x02 258 enum RoomResolutionType {
276 inline bool IsRelativeRes()
const {
277 return _resolution != kRoomRealRes;
280 inline bool IsLegacyHiRes()
const {
281 return _resolution == kRoomHiRes;
284 inline RoomResolutionType GetResolutionType()
const {
297 void SetResolution(RoomResolutionType type);
300 Bitmap *GetMask(RoomAreaMask mask)
const;
302 float GetMaskScale(RoomAreaMask mask)
const;
306 bool HasRegionLightLevel(
int id)
const;
308 bool HasRegionTint(
int id)
const;
310 int GetRegionLightLevel(
int id)
const;
312 int GetRegionTintLuminance(
int id)
const;
327 int32_t MaskResolution;
338 int32_t BackgroundBPP;
348 PBitmap WalkAreaMask;
349 PBitmap WalkBehindMask;
356 size_t WalkAreaCount;
357 WalkArea WalkAreas[MAX_WALK_AREAS + 1];
358 size_t WalkBehindCount;
363 String Messages[MAX_MESSAGES];
374 PScript CompiledScript;
380 RoomResolutionType _resolution;
388 void UpscaleRoomBackground(
RoomStruct *room,
bool game_is_hires);
393 PBitmap FixBitmap(PBitmap bmp,
int dst_width,
int dst_height);
Definition: achievements_tables.h:27
Definition: room_struct.h:219
Definition: interactions.h:154
Definition: room_struct.h:249
Definition: allegro_bitmap.h:44
Definition: room_struct.h:181
Definition: geometry.h:87
Definition: room_struct.h:203
Definition: room_struct.h:237
Definition: room_struct.h:144
Definition: room_struct.h:166
Definition: room_struct.h:270
Definition: room_struct.h:155
Definition: room_struct.h:126
Definition: display_client.h:78