feat(effects): polvet transitori al despegue i a l'aterratge

This commit is contained in:
JailDesigner committed 2026-04-25 17:51:55 +02:00
1 parent c38c80753a
commit 3e379ce129
11 files changed
+209 -1

No files matched your search

+9
View File
@@ -88,6 +88,14 @@ class Entity {
[[nodiscard]] auto collides() const -> bool { return collides_; }
[[nodiscard]] auto interactable() const -> bool { return interactable_; }
// Marca per a entitats transitòries: efectes (polvet, espurnes,
// explosions...) que viuen una sola animació i s'autoeliminen quan
// acaba. L'`EntityManager` purga totes les entitats amb `dead_=true`
// al final de cada `update`. Les entitats persistents (sarcs, momies,
// portes, jugadors) mai no la posen i hi viuen sempre.
[[nodiscard]] auto isDead() const -> bool { return dead_; }
void markDead() { dead_ = true; }
// Associar el bus una sola vegada (propietat externa, p.ex.
// `EntityManager`). Entitats que no publiquen events (Torch, trampes
// estàtiques de moment) el poden ignorar.
@@ -162,6 +170,7 @@ class Entity {
bool collides_{false};
bool interactable_{false};
int height_{0};
bool dead_{false};
SDL_FlipMode flip_{SDL_FLIP_NONE};
EventBus* bus_{nullptr};
};