Punkty kontrolne
Część sekcji Tworzenie prawdziwych gier ścieżki Unity w Coddy. Lekcja 50 z 56.
Wyzwanie
ŚredniUpadek w otchłań powinien kosztować niewiele, a nie całą próbę. Zachowaj wszystko z wcześniejszych lekcji. Na trasie stoją dwa czerwone słupki: Checkpoint1 i Checkpoint2, każdy z wyzwalaczem i skryptem Checkpoint.
W Player:
- Pole
fallY, którego wartość ustawia Inspector (-5), oraz punkt odrodzenia, który na początku znajduje się tam, gdzie zaczyna gracz. - Publiczna metoda
SetCheckpoint(Vector3 point), która ustawiapointjako punkt odrodzenia. - Gdy gracz spadnie poniżej
fallY, przenieś go z powrotem do punktu odrodzenia i wyzeruj jegovelocity. Samo ustawienietransform.positionnie wystarczy: następneMovekontrolera rozpoczyna się od miejsca, w którym fizyka widziała gracza po raz ostatni, i cofa przeniesienie. Wyłącz kontroler (controller.enabled = false) na czas przenoszenia gracza i włącz go ponownie po zakończeniu.
W Checkpoint:
- Gdy gracz (obiekt ze skryptem
Player) po raz pierwszy wejdzie w wyzwalacz, ustaw pozycję punktu kontrolnego jako punkt odrodzenia gracza, zmień kolor słupka na zielony (Color.green) i zapisz w loguCheckpoint reached. - Ponowne wejście nic nie robi, więc wcześniejszy punkt kontrolny nigdy nie ustawi ponownie punktu odrodzenia.
Naciśnij Play, dotrzyj do punktu kontrolnego i skocz w otchłań, a następnie kliknij Check.
Spróbuj swoich sił
using UnityEngine;
public class Checkpoint : MonoBehaviour
{
// W późniejszej lekcji zostanie to uzupełnione: flaga, która zmienia miejsce, w którym pojawiasz się ponownie po upadku.
}
Wszystkie lekcje w sekcji Tworzenie prawdziwych gier
1Tekst na ekranie
Canvas i tekstWyświetlanie wynikuFormatowanie liczbOdliczanie czasuPowtórka: prędkościomierz4Sceny i poziomy
Wczytaj scenęUruchom poziom ponownieNastępny poziomZachowaj między scenamiPodsumowanie: wybór poziomu10Projekt: platformówka 3D
TrasaRuchome platformy2Przyciski 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 banku