fix(hazard): aterrar damunt d'un Hole salta el LANDING_STUN
This commit is contained in:
1 parent
4da50571eb
commit
3e5217066f
5 files changed
+80
-5
No files matched your search
@@ -1,5 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <SDL3/SDL.h>
|
||||
|
||||
#include <cstddef>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
@@ -74,6 +76,16 @@ class EntityManager {
|
||||
// reflecteixi l'estat del frame actual.
|
||||
void checkPlayerCollisions(const std::vector<Player*>& players);
|
||||
|
||||
// Cerca la primera entitat que (a) sigui decal de sòl
|
||||
// (`is_floor_decal_=true`), (b) admeti triggers d'àrea
|
||||
// (`triggers_on_overlap_=true`), i (c) la seva caixa de col·lisió
|
||||
// solape amb el rect donat. Pensat per a `Player::integrateJump`,
|
||||
// que la consulta a l'aterratge per detectar caigudes sobre Hole
|
||||
// (i en el futur pinchos plans, plaques de pressió, charcos...) i
|
||||
// saltar-se el LANDING_STUN normal. Retorna `nullptr` si no hi ha
|
||||
// cap match — el caller usa el camí d'aterratge habitual.
|
||||
[[nodiscard]] auto findFloorTriggerAt(const SDL_FRect& rect) const -> const Entity*;
|
||||
|
||||
// Fan-out del hook de pintat: per a cada sarcòfag, cridar
|
||||
// notifyTilePainted. Les entitats no-sarcòfag ho ignoren per defecte
|
||||
// (veure Entity::notifyTilePainted). Invocat com a reacció a
|
||||
|
||||
Reference in new issue
Block a user