feat(player): resol el solapament en aterrar damunt d'un altre jugador
This commit is contained in:
1 parent
a64f33fe43
commit
c4caa9021e
2 files changed
+82
-2
No files matched your search
@@ -401,6 +401,17 @@ class Player : public AnimatedSprite {
|
||||
// `applyMovement` puga disparar la resolució del solapament PvP).
|
||||
auto integrateJump(float delta_time) -> bool;
|
||||
|
||||
// En aterrar, si la hit-box del jugador solapa amb la d'un altre,
|
||||
// separa els dos sense ficar-los dins d'un mur. Algoritme:
|
||||
// 1. Calcula la direcció centre→centre i la magnitud de
|
||||
// solapament (MTV axis-aligned).
|
||||
// 2. Empenta l'altre cap a fora; si no cap (mur al darrere),
|
||||
// reverteix i empenta el saltador cap al sentit oposat.
|
||||
// 3. Si tampoc cap, es deixa l'estat com està (overlap residual);
|
||||
// a la pràctica aquest cas és molt rar i el usuari ja ha
|
||||
// acceptat que no és crític.
|
||||
void resolveLandingOverlap();
|
||||
|
||||
// Estat del gir en curs. Mentre `turning_remaining_ms_ > 0`, el facing/
|
||||
// flip es manté forçat a `intermediate_cardinal_` i l'animació es força
|
||||
// a `stand` encara que el moviment continuï. En esgotar-se el timer,
|
||||
|
||||
Reference in new issue
Block a user