mirror of
https://gitlab.com/dosowisko.net/libsuperderpy.git
synced 2025-02-08 06:06:43 +01:00
character: add CharacterCallback macro for defininig animation callbacks
This commit is contained in:
parent
12faed0921
commit
40df27640c
1 changed files with 5 additions and 1 deletions
|
@ -65,6 +65,10 @@ struct Spritesheet {
|
||||||
// TODO: missing docs
|
// TODO: missing docs
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct Character;
|
||||||
|
typedef void CharacterCallback(struct Game*, struct Character*, struct Spritesheet* newAnim, struct Spritesheet* oldAnim, void*);
|
||||||
|
#define CharacterCallback(x) void x(struct Game* game, struct Character* character, struct Spritesheet* old, struct Spritesheet* new, void* data)
|
||||||
|
|
||||||
/*! \brief Structure representing one visible character. */
|
/*! \brief Structure representing one visible character. */
|
||||||
struct Character {
|
struct Character {
|
||||||
char* name; /*!< Name of the character (used in file paths). */
|
char* name; /*!< Name of the character (used in file paths). */
|
||||||
|
@ -94,7 +98,7 @@ struct Character {
|
||||||
bool reversed; /*!< Whether the current animation has been requested as reversed. */
|
bool reversed; /*!< Whether the current animation has been requested as reversed. */
|
||||||
bool hidden;
|
bool hidden;
|
||||||
void* data; /*!< Additional, custom character data (HP etc.). */
|
void* data; /*!< Additional, custom character data (HP etc.). */
|
||||||
void (*callback)(struct Game*, struct Character*, struct Spritesheet* newAnim, struct Spritesheet* oldAnim, void*);
|
CharacterCallback* callback;
|
||||||
void* callbackData;
|
void* callbackData;
|
||||||
bool shared; /*!< Marks the list of spritesheets as shared, so it won't be freed together with the character. */
|
bool shared; /*!< Marks the list of spritesheets as shared, so it won't be freed together with the character. */
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue