![]() |
Yume Project 3.0
Touhou-inspired Danmaku game made in C only
|
Les flags sont des critères qu'une entité peut avoir ou ne pas avoir. Chaque flag active un comportement particulier dans le jeu. Plus de détails...
#include "ecs/component.h"Aller au code source de ce fichier.
Classes | |
| struct | flagList |
| composante flagList dans l'ECS Une entité peut disposer de plusieurs flags, qui sont contenus dans une flaglist Plus de détails... | |
Macros | |
| #define | MAX_FLAGS 30 |
Énumérations | |
| enum | FlagType { FLAG_NONE = 0 , FLAG_PLAYER , FLAG_ENEMY , FLAG_BOSS , FLAG_BULLET_PLAYER , FLAG_PROJECTILE_PLAYER , FLAG_PROJECTILE_ENEMY , FLAG_NO_DAMAGE_PLAYER , FLAG_POWERUP , FLAG_WALL , FLAG_PLAYER_HIT , FLAG_INVINCIBLE , FLAG_DECREASE_SCORE } |
| Identificateurs uniques de certaines propriétés. Plus de détails... | |
Fonctions | |
| bool | Flag_in_list (FlagType type, flagList *list) |
| Vérifie si un FlagType est présent dans une flagList. | |
| bool | flagList_add_element (flagList *list, FlagType type) |
| Ajoute un FlagType à la fin d'une flagList. | |
| 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 | flagList_destroy (Pool *p, Entity e) |
| Détruit la flagList attachée à une entité dans la Pool. | |
| bool | Entity_has_flag (Pool *p, Entity entity, FlagType flag) |
| Vérifie si une entité possède un flag précis. | |
| Entity | flagList_attach_first_flag (Pool *p, Entity e, FlagType flag) |
| Crée et attache une nouvelle flagList initialisée avec un flag. | |
| void | Flag_display (FlagType flag) |
| Affiche le type de flag dans la console (debug). | |
Les flags sont des critères qu'une entité peut avoir ou ne pas avoir. Chaque flag active un comportement particulier dans le jeu.
| #define MAX_FLAGS 30 |
| enum FlagType |
Vérifie si une entité possède un flag précis.
| p | pool courante (toutes les données de l'ECS) |
| entity | Identifiant de l'entité à inspecter. |
| flag | Le FlagType recherché. |
Vérifie si une entité possède au moins un flag présent dans une flagList donnée.
Récupère la flagList de l'entité depuis la Pool et compare chaque flag avec les éléments de la liste fournie.
| p | pool courante (toutes les données de l'ECS) |
| entity | Identifiant de l'entité à vérifier. |
| list | Pointeur vers la flagList de référence. |
| void Flag_display | ( | FlagType | flag | ) |
Affiche le type de flag dans la console (debug).
| flag | le flagType à afficher |
Crée et attache une nouvelle flagList initialisée avec un flag.
Alloue un tableau de taille MAX_FLAGS, crée une flagList et l'attache à l'entité. ATTENTION : écrase toute flagList existante pour cette entité.
| p | pool courante (toutes les données de l'ECS) |
| e | Identifiant de l'entité cible. |
| flag | Le premier FlagType à ajouter à la liste. |