Notte di sopravvivenza
Fa parte della sezione Creare veri giochi del percorso Unity di Coddy. Lezione 59 di 60.
Un sopravvissuto si trova in un campo buio e i pipistrelli gli danno la caccia per tutta la notte: ne arriva uno nuovo ogni paio di secondi da uno dei quattro angoli del campo. Ogni pipistrello vola dritto verso il sopravvissuto e il primo che lo raggiunge pone fine alla notte. Un orologio in alto conta i secondi che mancano all'alba: resisti fino ad allora e vinci. Un pulsante Pausa blocca tutto e, quando la notte finisce, Gioca di nuovo ne avvia una nuova.
Lo script Player, che fa camminare il sopravvissuto con l'azione Move, è già scritto. Scrivi GameManager e Bat.
Sfida
DifficileInizia la Notte di sopravvivenza.
GameManager: un singletonInstance,public enum State { Playing, Paused, Won, Lost }epublic State state.- Mentre è in stato Playing, mostra
Dawn in 12con un conto alla rovescia basato sunightLength(arrotondato per eccesso) e genera un pipistrello in punti di generazione casuali ognispawnEverysecondi.Lose()imposta lo stato Lost. Bat: mentre è in stato Playing, vola verso il giocatore allaspeed, mantenendo la stessa altezza; quando è entroreach, chiamaLose().
Premi «Gioca»: arrivano i pipistrelli. Poi premi «Verifica».
Provalo tu
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;
}
Tutte le lezioni di Creare veri giochi
1Testo sullo schermo
Canvas e testoMostra il punteggioFormattare i numeriUn timer per il conto alla rovesciaRiepilogo: tachimetro2Pulsanti e schermate
Pulsanti e onClickLambdaCollegare nell'InspectorPannelli attivi e disattiviBarre della saluteRiepilogo: negozio degli upgrade5Salvare con PlayerPrefs
Salvare un numeroCaricare con un valore predefinitoPunteggio massimoSalvare le impostazioniRiepilogo: monete in banca8Controller del personaggio
CharacterController.MoveGravità manualeSaltoSpingere gli oggettiMuoviti dove guardiRiepilogo: doppio salto3Il gestore del gioco
Uno script gestisce il giocoIl SingletonStati di giocoSelezionare lo statoRiepilogo: gestore del round6Progetto: Runner infinito
Tre corsieOstacoli in arrivo9Il nuovo sistema di input
Due sistemi di inputTastiera e mousePremuto in questo frameAzioni di inputRiepilogo: cambio di inputEsercitati da solo: Playground Unity