diff options
Diffstat (limited to 'src/crepe/api/UiObject.h')
-rw-r--r-- | src/crepe/api/UiObject.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/crepe/api/UiObject.h b/src/crepe/api/UiObject.h new file mode 100644 index 0000000..c056877 --- /dev/null +++ b/src/crepe/api/UiObject.h @@ -0,0 +1,33 @@ +#pragma once + +#include "../Component.h" + +namespace crepe { + +/** + * @class UiObject + * \brief Represents a UI object in the game, derived from the Component class. + */ +class UiObject : public Component { +public: + /** + * \brief Constructs a UiObject with the specified game object ID. + * \param id The unique ID of the game object associated with this UI object. + */ + UiObject(game_object_id_t id, int width, int height); + + //! The width of the UI object. + int width = 0; + + //! The height of the UI object. + int height = 0; + +public: + /** + * \brief Retrieves the maximum number of instances allowed for this UI object type. + * /return Always returns 1, as only a single instance is allowed. + */ + virtual int get_instances_max() const override { return 1; } +}; + +} // namespace crepe |