23 [Header(
"Configuración de Disparo Enemigo")]
24 [Tooltip(
"El enemigo podrá disparar si está activo")]
30 [Tooltip(
"Prefab del proyectil que instanciará")]
36 [Tooltip(
"Puntos de disparo (transform hijos posicionados en cada cañón)")]
42 [Tooltip(
"Cadencia de disparo en segundos")]
72 GameObject bullet = Instantiate(
78 Rigidbody2D rb = bullet.GetComponent<Rigidbody2D>();
81 rb.linearVelocity = fp.up * rb.linearVelocity.magnitude;
Controla el sistema de disparo de un enemigo. Permite que dispare proyectiles desde uno o varios punt...
void Shoot()
Instancia un proyectil en cada firePoint, respetando su rotación. Si el proyectil tiene un componente...
bool canShoot
Indica si el enemigo puede disparar. Debe estar activado para que el disparo ocurra.
float nextFireTime
Próximo instante de tiempo en el que el enemigo podrá volver a disparar.
float fireRate
Tiempo entre disparos consecutivos, en segundos.
GameObject bulletPrefab
Prefab del proyectil que se instanciará al disparar.
Transform[] firePoints
Transformaciones hijas que actúan como puntos de disparo (cañones).
void Update()
Método llamado una vez por frame. Comprueba si se puede disparar y llama a Shoot si se cumplen las co...