Macros nécessaire à la création de nouvelles composantes de l'ECS.
#define DECLARE_GETTER(Component, type, champ)
Definition component.h:111
#define DEFINE_COMPONENT_MANAGER(Type, Number)
Créé un composant dans l'ECS.
Definition component.h:62
#define DECLARE_SETTER_GETTER(Component, type, champ)
Definition component.h:121
#define MAX_ENTITIES
Definition ecs.h:14
uint32_t Entity
Une entité est un indice.
Definition ecs.h:20
bool flagList_remove_element(flagList *list, FlagType type)
Supprime la première occurrence d'un FlagType dans une flagList.
bool Entity_has_flag_in_list(Pool *p, Entity entity, flagList *list)
Vérifie si une entité possède au moins un flag présent dans une flagList donnée.
void Flag_display(FlagType flag)
Affiche le type de flag dans la console (debug).
bool flagList_add_element(flagList *list, FlagType type)
Ajoute un FlagType à la fin d'une flagList.
bool Entity_has_flag(Pool *p, Entity entity, FlagType flag)
Vérifie si une entité possède un flag précis.
FlagType
Identificateurs uniques de certaines propriétés.
Definition flags.h:18
@ FLAG_NO_DAMAGE_PLAYER
Definition flags.h:26
@ FLAG_DECREASE_SCORE
Definition flags.h:31
@ FLAG_PLAYER_HIT
Definition flags.h:29
@ FLAG_BULLET_PLAYER
Definition flags.h:23
@ FLAG_NONE
Definition flags.h:19
@ FLAG_ENEMY
Definition flags.h:21
@ FLAG_INVINCIBLE
Definition flags.h:30
@ FLAG_WALL
Definition flags.h:28
@ FLAG_POWERUP
Definition flags.h:27
@ FLAG_PROJECTILE_ENEMY
Definition flags.h:25
@ FLAG_BOSS
Definition flags.h:22
@ FLAG_PROJECTILE_PLAYER
Definition flags.h:24
@ FLAG_PLAYER
Definition flags.h:20
bool Flag_in_list(FlagType type, flagList *list)
Vérifie si un FlagType est présent dans une flagList.
void flagList_destroy(Pool *p, Entity e)
Détruit la flagList attachée à une entité dans la Pool.
Entity flagList_attach_first_flag(Pool *p, Entity e, FlagType flag)
Crée et attache une nouvelle flagList initialisée avec un flag.
La pool est la structure qui contient l'Entity Component System Elle gêre les différentes composantes...
Definition pool.h:42
composante flagList dans l'ECS Une entité peut disposer de plusieurs flags, qui sont contenus dans un...
Definition flags.h:39
FlagType * flags
Definition flags.h:40
int size
Definition flags.h:41