feat(bullet): debris en trencar-se amb so HIT mogut des d'enemy.herir()
This commit is contained in:
@@ -80,26 +80,10 @@ void Bullet::disparar(const Vec2& position, float angle, uint8_t owner_id) {
|
||||
}
|
||||
|
||||
void Bullet::update(float /*delta_time*/) {
|
||||
if (!is_active_) {
|
||||
return;
|
||||
}
|
||||
|
||||
// El movimiento real lo hace PhysicsWorld::update() (integración).
|
||||
// Aquí solo lógica de estado: detectar salida del PLAYAREA i desactivar.
|
||||
// Sense marge de seguretat: la bala mor quan la seva aresta toca el border visual
|
||||
// (centre a BULLET_RADIUS del límit). El MARGE_SEGURETAT de getSafePlayAreaBounds
|
||||
// és per a spawn d'enemics, no per a desactivació de bales.
|
||||
float min_x;
|
||||
float max_x;
|
||||
float min_y;
|
||||
float max_y;
|
||||
Constants::getPlayAreaBounds(min_x, max_x, min_y, max_y);
|
||||
constexpr float R = Defaults::Entities::BULLET_RADIUS;
|
||||
|
||||
if (body_.position.x < min_x + R || body_.position.x > max_x - R ||
|
||||
body_.position.y < min_y + R || body_.position.y > max_y - R) {
|
||||
desactivar();
|
||||
}
|
||||
// No-op: la desactivació per fora-de-zona viu a
|
||||
// Systems::Collision::desactivateOutOfBoundsBullets() perquè així té accés
|
||||
// al DebrisManager i pot generar el "trencament" visual de la bala alhora.
|
||||
// El moviment l'integra PhysicsWorld; postUpdate sincronitza center_ i prev_position_.
|
||||
}
|
||||
|
||||
void Bullet::postUpdate(float /*delta_time*/) {
|
||||
|
||||
Reference in New Issue
Block a user