Menu
CoddyTech

Punkty kontrolne

Część sekcji Tworzenie prawdziwych gier ścieżki Unity w Coddy. Lekcja 50 z 56.

challenge icon

Wyzwanie

Średni

Upadek 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 ustawia point jako punkt odrodzenia.
  • Gdy gracz spadnie poniżej fallY, przenieś go z powrotem do punktu odrodzenia i wyzeruj jego velocity. Samo ustawienie transform.position nie wystarczy: następne Move kontrolera 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 logu Checkpoint 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