22 #ifndef AGS_ENGINE_AC_ROOM_H 23 #define AGS_ENGINE_AC_ROOM_H 25 #include "ags/engine/ac/dynobj/script_drawing_surface.h" 26 #include "ags/shared/ac/character_info.h" 27 #include "ags/engine/script/runtime_script_value.h" 28 #include "ags/shared/game/room_struct.h" 32 ScriptDrawingSurface *Room_GetDrawingSurfaceForBackground(
int backgroundNumber);
33 ScriptDrawingSurface *Room_GetDrawingSurfaceForMask(RoomAreaMask mask);
34 int Room_GetObjectCount();
37 int Room_GetColorDepth();
38 int Room_GetLeftEdge();
39 int Room_GetRightEdge();
40 int Room_GetTopEdge();
41 int Room_GetBottomEdge();
42 int Room_GetMusicOnLoad();
43 const char *Room_GetTextProperty(
const char *property);
44 int Room_GetProperty(
const char *property);
45 bool Room_SetProperty(
const char *property,
int value);
46 bool Room_SetTextProperty(
const char *property,
const char *value);
47 const char *Room_GetMessages(
int index);
48 bool Room_Exists(
int room);
49 RuntimeScriptValue Sc_Room_GetProperty(
const RuntimeScriptValue *params, int32_t param_count);
50 ScriptDrawingSurface *GetDrawingSurfaceForWalkableArea();
51 ScriptDrawingSurface *GetDrawingSurfaceForWalkbehind();
52 ScriptDrawingSurface *Hotspot_GetDrawingSurface();
53 ScriptDrawingSurface *Region_GetDrawingSurface();
57 void save_room_data_segment();
58 void unload_old_room();
59 void load_new_room(
int newnum, CharacterInfo *forchar);
60 void new_room(
int newnum, CharacterInfo *forchar);
63 void set_room_placeholder();
64 int find_highest_room_entered();
65 void first_room_initialization();
66 void check_new_room();
67 void compile_room_script();
68 void on_background_frame_change();
70 void croom_ptr_clear();
80 extern int room_to_mask_coord(
int coord);
82 extern int mask_to_room_coord(
int coord);
86 void convert_move_path_to_room_resolution(MoveList *ml,
int from_step = 0,
int to_step = -1);