PROGRAMACIÓN
Top-down 2D en Unity
Tepp: Variables
Tepp es nuestro personaje jugable. Creamos una variable para la velocidad de movimiento (speed) y accedemos con una variable al Animator del personaje (anim). Creamos también una variable de tipo Int para el número de golpes que podrá absorber nuestro personaje antes de tener que reiniciar el nivel, junto con una variable para acceder al panel de "Game Over".
![variablestepp_edited_edited.jpg](https://static.wixstatic.com/media/654995_e1f6fdf7c36b4d739ac13c7e18633121~mv2.jpg/v1/fill/w_123,h_88,al_c,q_80,usm_0.66_1.00_0.01,blur_2,enc_auto/654995_e1f6fdf7c36b4d739ac13c7e18633121~mv2.jpg)
![mov2_edited.jpg](https://static.wixstatic.com/media/654995_e39ea23b15464dbda1492ef2f4bcee74~mv2.jpg/v1/fill/w_123,h_61,al_c,q_80,usm_0.66_1.00_0.01,blur_2,enc_auto/654995_e39ea23b15464dbda1492ef2f4bcee74~mv2.jpg)
Movimiento del personaje
Con sistema de Vector3 junto a una variable de tipo float para la velocidad (speed), usamos la función Translate para desplazar a el personaje en 4 ejes (arriba, izquierda, derecha, abajo). Accedemos también al Animator (anim) y a sus variables para ejecutar las animaciones correspondientes según el valor de dirección, además de un bool para activar la animación de movimiento y desactivarla al quedarnos quietos.
Muerte del personaje
Usamos la función OnTriggerEnter2D para programar la muerte del personaje cuando recibe 3 golpes de misiles enemigos. Cada impacto resta (1) a la variable de tipo Int (health). Al llegar a 0 activa la pantalla "Game Over" con un botón para reiniciar el nivel.
![death_edited_edited.jpg](https://static.wixstatic.com/media/654995_87628c287c694af3bf9c8017edfbc5ac~mv2.jpg/v1/fill/w_123,h_81,al_c,q_80,usm_0.66_1.00_0.01,blur_2,enc_auto/654995_87628c287c694af3bf9c8017edfbc5ac~mv2.jpg)
![bunnyvariables_edited_edited.jpg](https://static.wixstatic.com/media/654995_470687f3f34e436bbb01f061948059b7~mv2.jpg/v1/fill/w_123,h_69,al_c,q_80,usm_0.66_1.00_0.01,blur_2,enc_auto/654995_470687f3f34e436bbb01f061948059b7~mv2.jpg)
Conejito: Variables
Nuestro enemigo vital es un adorable conejito rabioso.
Actúa como una torreta: gira hacia el personaje para fijar su objetivo y dispara un proyectil (misilePrefab/misileObject).
Si el personaje le impacta con un ataque, queda atrapado dentro de una burbuja.
Ataque y muerte del enemigo
Cuando el personaje entra en el área empieza un contador (timer). Cuando el contador llega a el tiempo indicado en su valor (TimeToAttack), lanza un proyectil. Después, reiniciamos el contador.
​
Empleamos la función OnTriggerEnter2D para programar la muerte, destruyendo al gameObject original y sustituyéndolo por un cadáver (corpsePrefab) que esté en idle y no pueda volver a atacar al personaje.
![atac2buny_edited.jpg](https://static.wixstatic.com/media/654995_82f9ff0ae54d4951974e817627b11991~mv2.jpg/v1/fill/w_123,h_77,al_c,q_80,usm_0.66_1.00_0.01,blur_2,enc_auto/654995_82f9ff0ae54d4951974e817627b11991~mv2.jpg)