Menu
CoddyTech

Noche de supervivencia

Parte de la sección Creación de juegos reales del Journey de Unity de Coddy. Lección 59 de 60.

Un superviviente está en un campo oscuro y los murciélagos vienen a por él durante toda la noche; aparece uno nuevo cada dos segundos aproximadamente desde una de las cuatro esquinas del campo. Cada murciélago vuela directamente hacia el superviviente, y el primero que lo alcanza pone fin a la noche. Un reloj en la parte superior cuenta los segundos que faltan para el amanecer: aguanta hasta entonces y ganarás. Un botón «Pausa» lo congela todo y, cuando termina la noche, «Jugar» de nuevo empieza una nueva.

El script Player, que mueve al superviviente con la acción Move, ya está escrito. Escribe GameManager y Bat.

challenge icon

Desafío

Difícil

Inicia Survival Night.

  1. GameManager: un singleton Instance, public enum State { Playing, Paused, Won, Lost } y public State state.
  2. Mientras estés en Playing, muestra Dawn in 12 con una cuenta regresiva de nightLength (redondeado hacia arriba) y genera un murciélago en puntos de aparición aleatorios cada spawnEvery segundos. Lose() establece Lost.
  3. Bat: mientras estés en Playing, vuela hacia el jugador a speed, a la misma altura; al estar a una distancia menor que reach, llama a Lose().

Pulsa «Jugar»: llegan murciélagos. Después, pulsa «Comprobar».

Pruébalo tú mismo

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using TMPro;

public class GameManager : MonoBehaviour
{
    public float nightLength = 15f;
    public float spawnEvery = 2f;
    public GameObject batPrefab;
    public Transform[] spawnPoints;
    public TMP_Text dawnText;
    public Button pauseButton;
    public GameObject pausePanel;
    public GameObject endPanel;
    public TMP_Text endText;
    public Button restartButton;
}

Todas las lecciones de Creación de juegos reales

Practica por tu cuenta: Playground de Unity