Noc przetrwania
Część sekcji Tworzenie prawdziwych gier ścieżki Unity w Coddy. Lekcja 59 z 60.
Ocalały stoi na ciemnym polu, a przez całą noc nadlatują po niego nietoperze — co kilka sekund nowy, z jednego z czterech rogów pola. Każdy nietoperz leci prosto na ocalałego, a pierwszy, który do niego dotrze, kończy noc. Zegar u góry odlicza sekundy do świtu: przetrwaj do tego czasu, a wygrasz. Przycisk Pauza zatrzymuje wszystko, a gdy noc się kończy, przycisk Zagraj ponownie rozpoczyna nową.
Skrypt Player, który porusza ocalałym za pomocą akcji Move, jest już napisany. Napisz GameManager i Bat.
Wyzwanie
TrudnyRozpocznij Noc przetrwania.
GameManager: singletonInstance,public enum State { Playing, Paused, Won, Lost }orazpublic State state.- Gdy gra jest w stanie Playing, wyświetlaj
Dawn in 12i odliczaj czasnightLength(zaokrąglając w górę), a także cospawnEverysekund umieszczaj nietoperza w losowym punkcie odradzania.Lose()ustawia stan Lost. Bat: gdy gra jest w stanie Playing, leć w stronę gracza z prędkościąspeed, na tej samej wysokości; gdy znajdziesz się w odległości mniejszej niżreach, wywołajLose().
Naciśnij „Graj”: pojawią się nietoperze. Następnie naciśnij „Sprawdź”.
Spróbuj swoich sił
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;
}
Wszystkie lekcje w sekcji Tworzenie prawdziwych gier
1Tekst na ekranie
Canvas i tekstWyświetlanie wynikuFormatowanie liczbOdliczanie czasuPowtórka: prędkościomierz2Przyciski i ekrany
Przyciski i onClickLambdyPodłączanie w InspectorzeWłączanie i wyłączanie paneliPaski zdrowiaPodsumowanie: sklep z ulepszeniami5Zapisywanie za pomocą PlayerPrefs
Zapisz liczbęWczytywanie z wartością domyślnąNajlepszy wynikZapisz ustawieniaPodsumowanie: monety w bankuPoćwicz samodzielnie: Edytor online Unity