28 #ifndef AGS_ENGINE_AC_ROOM_OBJECT_H 29 #define AGS_ENGINE_AC_ROOM_OBJECT_H 31 #include "ags/shared/core/types.h" 32 #include "ags/shared/ac/common_defines.h" 33 #include "ags/shared/util/string.h" 47 #define OBJANIM_ONCE (ANIM_ONCE + 1) 49 #define OBJANIM_REPEAT (ANIM_REPEAT + 1) 51 #define OBJANIM_ONCERESET (ANIM_ONCERESET + 1) 53 #define OBJANIM_BACKWARDS 10 59 static const uint16_t NoView = UINT16_MAX;
64 short tint_b, tint_level;
67 short last_width, last_height;
70 uint16_t view, loop, frame;
77 short blocking_width, blocking_height;
78 int anim_volume = 100;
79 int cur_anim_volume = 100;
84 int get_width()
const;
85 int get_height()
const;
86 int get_baseline()
const;
88 inline bool has_explicit_light()
const {
89 return (flags & OBJF_HASLIGHT) != 0;
91 inline bool has_explicit_tint()
const {
92 return (flags & OBJF_HASTINT) != 0;
95 inline bool is_animating()
const {
100 inline int get_anim_repeat()
const {
101 return (cycling % OBJANIM_BACKWARDS) - 1;
103 inline bool get_anim_forwards()
const {
104 return (cycling < OBJANIM_BACKWARDS);
106 inline int get_anim_delay()
const {
107 return overall_speed;
110 inline void set_animating(
int repeat,
bool forwards,
int delay) {
112 cycling = (repeat + 1) + (!forwards * OBJANIM_BACKWARDS);
113 overall_speed = delay;
116 void UpdateCyclingView(
int ref_id);
118 int GetFrameSoundVolume()
const;
121 void CheckViewFrame();
Definition: achievements_tables.h:27
Definition: room_object.h:58