Cosmic Strike
 
Cargando...
Buscando...
Nada coincide
Referencia de la clase HomingMovement

Componente que permite que un enemigo se dirija constantemente hacia el jugador. Si no se asigna un Transform manualmente, busca automáticamente uno con la etiqueta "Player". Gira para mirar al jugador y se mueve en esa dirección con la velocidad especificada. Más...

+ Diagrama de herencia de HomingMovement
+ Diagrama de colaboración de HomingMovement:

Atributos públicos

float speed = 3f
 Velocidad de movimiento del enemigo hacia el jugador (en unidades por segundo).
 
Transform playerTransform
 Transform del jugador al que se dirigirá el enemigo. Si no se asigna en el Inspector, se buscará automáticamente por el tag "Player".
 

Métodos privados

void Start ()
 Método llamado al iniciar el objeto. Verifica si se ha asignado el jugador manualmente y, si no es así, intenta localizarlo automáticamente por su tag.
 
void Update ()
 Lógica de movimiento de persecución del jugador. Se ejecuta en cada frame, orientando el objeto hacia el jugador y desplazándolo en su dirección.
 

Descripción detallada

Componente que permite que un enemigo se dirija constantemente hacia el jugador. Si no se asigna un Transform manualmente, busca automáticamente uno con la etiqueta "Player". Gira para mirar al jugador y se mueve en esa dirección con la velocidad especificada.

Definición en la línea 15 del archivo HomingMovement.cs.

Documentación de funciones miembro

◆ Start()

void HomingMovement.Start ( )
inlineprivate

Método llamado al iniciar el objeto. Verifica si se ha asignado el jugador manualmente y, si no es así, intenta localizarlo automáticamente por su tag.

Definición en la línea 39 del archivo HomingMovement.cs.

40 {
41 // Si no se asignó en Inspector, buscamos el GameObject con tag "Player"
42 if (playerTransform == null)
43 {
44 GameObject playerGO = GameObject.FindGameObjectWithTag("Player");
45 if (playerGO != null)
46 playerTransform = playerGO.transform;
47 else
48 Debug.LogWarning("HomingMovement: no se encontró ningún GameObject con tag 'Player'.");
49 }
50 }
Transform playerTransform
Transform del jugador al que se dirigirá el enemigo. Si no se asigna en el Inspector,...

Hace referencia a playerTransform.

◆ Update()

void HomingMovement.Update ( )
inlineprivate

Lógica de movimiento de persecución del jugador. Se ejecuta en cada frame, orientando el objeto hacia el jugador y desplazándolo en su dirección.

Definición en la línea 56 del archivo HomingMovement.cs.

57 {
58 if (playerTransform == null) return;
59
60 // 1) Calculamos la dirección normalizada hacia el jugador
61 Vector2 direction = ((Vector2)playerTransform.position - (Vector2)transform.position).normalized;
62
63 // 2) Calculamos el ángulo en grados hacia la dirección objetivo
64 // (el -90° es necesario si el sprite está orientado hacia "arriba" por defecto)
65 float angle = Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg - 90f;
66 transform.rotation = Quaternion.Euler(0f, 0f, angle);
67
68 // 3) Movemos el objeto en dirección "up", que ahora está alineada hacia el jugador
69 // Usamos Space.Self para mover según la rotación del objeto
70 transform.Translate(Vector3.up * speed * Time.deltaTime, Space.Self);
71 }
float speed
Velocidad de movimiento del enemigo hacia el jugador (en unidades por segundo).

Hace referencia a playerTransform y speed.

Documentación de datos miembro

◆ playerTransform

Transform HomingMovement.playerTransform

Transform del jugador al que se dirigirá el enemigo. Si no se asigna en el Inspector, se buscará automáticamente por el tag "Player".

Definición en la línea 31 del archivo HomingMovement.cs.

Referenciado por Start() y Update().

◆ speed

float HomingMovement.speed = 3f

Velocidad de movimiento del enemigo hacia el jugador (en unidades por segundo).

Definición en la línea 24 del archivo HomingMovement.cs.

Referenciado por Update().


La documentación de esta clase está generada del siguiente archivo: