refactor(anim): direccions cardinals (north/south/east) en YAML i codi
This commit is contained in:
1 parent
1d43a77800
commit
9dc7ff0da3
9 files changed
+189
-240
No files matched your search
@@ -430,13 +430,15 @@ class Player : public AnimatedSprite {
|
||||
|
||||
// Direcció "cap on mira" el jugador. Governa quin conjunt d'animacions
|
||||
// s'aplica (lateral, amunt, avall) i si el sprite es flipeja o no. Els
|
||||
// moviments purament horitzontals o diagonals prenen `SIDE` (prevalença
|
||||
// lateral), els purament verticals fan `UP`/`DOWN`. En aturar-se es
|
||||
// preserva l'última orientació perquè la versió stand coincideixi.
|
||||
enum class Facing : std::uint8_t { SIDE,
|
||||
UP,
|
||||
DOWN };
|
||||
Facing facing_{Facing::SIDE};
|
||||
// moviments purament horitzontals o diagonals prenen `EAST` (prevalença
|
||||
// lateral; el flip horitzontal converteix l'animació EAST en la
|
||||
// simètrica oest), els purament verticals fan `NORTH`/`SOUTH`. En
|
||||
// aturar-se es preserva l'última orientació perquè la versió stand
|
||||
// coincideixi.
|
||||
enum class Facing : std::uint8_t { EAST,
|
||||
NORTH,
|
||||
SOUTH };
|
||||
Facing facing_{Facing::EAST};
|
||||
|
||||
// Cardinal complet (N/S/E/W) usat per a la detecció de girs de 180°.
|
||||
// El parell (Facing, flip) només té 3+1 estats; aquesta enum n'afegeix
|
||||
@@ -553,8 +555,8 @@ class Player : public AnimatedSprite {
|
||||
void enterAttacking(Cardinal facing);
|
||||
|
||||
// Cardinal que correspon al `(facing_, flip_)` actual del sprite —
|
||||
// la direcció cap on mira el jugador. Si `facing_ == SIDE` el
|
||||
// resultat depèn del flip; UP/DOWN són trivials. Mai retorna NONE.
|
||||
// la direcció cap on mira el jugador. Si `facing_ == EAST` el
|
||||
// resultat depèn del flip; NORTH/SOUTH són trivials. Mai retorna NONE.
|
||||
[[nodiscard]] auto currentFacingCardinal() const -> Cardinal;
|
||||
|
||||
// Activa l'estat HURT: el jugador queda projectat amb velocitat
|
||||
|
||||
Reference in new issue
Block a user