3#define MAX_LOOSE_NODES 1000
4#define DURATION_ETERNAL 20000
5#define MAX_LOOSE_LASER 282
Composants communs à toutes les entités (Position, Tag).
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
uint32_t Entity
Une entité est un indice.
Definition ecs.h:20
void loose_lasers_update_all(Pool *pool)
Met à jour tous les loose lasers de la Pool.
void draw_all_loose_lasers(Loose_laserManager *looseManager, PositionManager *positionManager)
Dessine tous les loose lasers actifs du manager.
Entity loose_laser_create(Pool *pool, int x, int y, float speed, float length, float width, int duration, Color color)
Crée et attache un Loose_laser à une nouvelle entité.
Entity node_create(Pool *pool, float x, float y, float radius)
Crée un node (entité) pour un loose laser.
bool loose_laser_update(Pool *pool, Loose_laser *laser)
Met à jour un loose laser pour une frame.
#define MAX_LOOSE_LASER
Definition looseLaser.h:5
void Loose_laser_destroy(Pool *pool, Entity id)
Détruit un Loose_laser et libère ses ressources.
void draw_loose_laser(Loose_laser *laser, PositionManager *positionManager)
Dessine un Loose_laser.
Représente un loose laser — un filament composé de plusieurs nodes.
Definition looseLaser.h:22
Timer looseTimer
Definition looseLaser.h:27
Entity * looseNodes
Definition looseLaser.h:23
int looseNodeCount
Definition looseLaser.h:24
Color looseColor
Definition looseLaser.h:28
float looseTargetLength
Definition looseLaser.h:25
float looseWidth
Definition looseLaser.h:26
La pool est la structure qui contient l'Entity Component System Elle gêre les différentes composantes...
Definition pool.h:42