Cosmic Strike
 
Cargando...
Buscando...
Nada coincide
PowerUpMotion.cs
Ir a la documentación de este archivo.
1
9
10using UnityEngine;
11
17public class PowerUpMotion : MonoBehaviour
18{
19 // ========== PARÁMETROS DE CAÍDA ==========
20
24 [Header("Caída aleatoria")]
25 [Tooltip("Velocidad mínima de caída")]
26 public float minFallSpeed = 1f;
27
31 [Tooltip("Velocidad máxima de caída")]
32 public float maxFallSpeed = 3f;
33
34 // ========== PARÁMETROS DE ROTACIÓN ==========
35
39 [Header("Rotación aleatoria")]
40 [Tooltip("Velocidad mínima de rotación (grados/seg)")]
41 public float minRotationSpeed = -90f;
42
46 [Tooltip("Velocidad máxima de rotación (grados/seg)")]
47 public float maxRotationSpeed = 90f;
48
49 // ========== VARIABLES INTERNAS ==========
50
54 private float fallSpeed;
55
59 private float rotationSpeed;
60
61 // ========== MÉTODOS UNITY ==========
62
66 void Start()
67 {
68 fallSpeed = Random.Range(minFallSpeed, maxFallSpeed);
70
71 // Alternamos signo para variar el sentido de giro
72 if (Random.value < 0.5f) rotationSpeed *= -1f;
73 }
74
78 void Update()
79 {
80 // 1) Movimiento descendente global
81 transform.Translate(Vector3.down * fallSpeed * Time.deltaTime, Space.World);
82
83 // 2) Rotación local en Z
84 transform.Rotate(0f, 0f, rotationSpeed * Time.deltaTime, Space.Self);
85 }
86
91 private void OnBecameInvisible()
92 {
93 Destroy(gameObject);
94 }
95}
Componente que hace que un Power-Up caiga con una velocidad aleatoria dentro de un rango y rote conti...
float minFallSpeed
Velocidad mínima a la que el Power-Up cae verticalmente (unidades por segundo).
void Update()
Aplica el movimiento hacia abajo y la rotación en cada frame.
float maxRotationSpeed
Velocidad máxima de rotación en grados por segundo.
void Start()
Inicializa la velocidad de caída y rotación con valores aleatorios dentro del rango especificado.
float minRotationSpeed
Velocidad mínima de rotación en grados por segundo (puede ser negativa).
void OnBecameInvisible()
Método llamado automáticamente cuando el objeto deja de ser visible por cualquier cámara....
float maxFallSpeed
Velocidad máxima de caída vertical.
float fallSpeed
Velocidad aleatoria final de caída determinada al instanciar el Power-Up.
float rotationSpeed
Velocidad aleatoria final de rotación determinada al instanciar el Power-Up.