If i else
Część sekcji Podstawy skryptów w Unity ścieżki Unity w Coddy. Lekcja 6 z 85.
Typ bool przechowuje jedną z dwóch wartości: true lub false. Czy drzwi są otwarte? Czy gracz stoi na ziemi? Czy gra się skończyła?
bool gameOver = false;Instrukcja if wykonuje zawarte w niej wiersze tylko wtedy, gdy jej warunek jest prawdziwy, a instrukcja else wykonuje zawarte w niej wiersze, gdy tak nie jest. Nawiasy klamrowe { } obejmują wiersze należące do każdej z tych części:
if (gameOver)
{
transform.position = new Vector3(0, -2, 0);
}
else
{
transform.position = new Vector3(0, 2, 0);
}Gdy gra się kończy, ten kod chowa obiekt poza zasięgiem wzroku, a gdy gra trwa, utrzymuje go na górze. Taki kod umieszcza się wewnątrz metody, na przykład Update(), nigdy za ostatnim } klasy.
Unity również odpowiada na pytania za pomocą wartości bool. Input.GetKey(KeyCode.Space) ma wartość true, gdy gracz przytrzymuje spację, a przez resztę czasu ma wartość false, więc Update() może sprawdzać to w każdej klatce.
Wyzwanie
ŁatwyPrzytrzymanie spacji powinno podnosić bramę.
- Poniżej dwóch komentarzy w
Update()napiszif (open), a w nawiasach klamrowych umieśćtransform.position = new Vector3(0, 3, 0);. - Za nim napisz
else, a w nawiasach klamrowych umieśćtransform.position = new Vector3(0, 1, 0);.
Naciśnij „Graj”, kliknij grę i przytrzymaj spację: brama się podniesie i opadnie, gdy puścisz klawisz. Następnie naciśnij „Sprawdź”.
Spróbuj swoich sił
using UnityEngine;
public class Gate : MonoBehaviour
{
void Update()
{
bool open = Input.GetKey(KeyCode.Space);
// Jeśli open ma wartość true, przesuń bramę do (0, 3, 0).
// W przeciwnym razie przesuń ją do (0, 1, 0).
}
}
Wszystkie lekcje w sekcji Podstawy skryptów w Unity
1Podstawy C# w Unity
Witaj, UnityZmienneLiczby dziesiętne wymagają fTekst w konsoliZmienne, które pamiętająIf i elsePorównywanie liczbPowtórka: Zbieracz monet4Wejście
Naciśnięty, przytrzymany, zwolnionyOsiePrzyciski z nazwamiPrzyciski myszyPowtórka: naładowany skok7Pętle i metody
Powtarzaj za pomocą forPętle wewnątrz pętliNapisz metodęMetody, które zwracają wynikTablicePowtórka: schody10Wyszukiwanie obiektów
Wyszukiwanie po nazwieTagiWyszukiwanie po typieReferencje lepsze niż wyszukiwanieNull w UnityPowtórka: najbliższa moneta13Projekt: Unikaj bloków
BiegaczBloki z nieba2Wpraw to w ruch
Umieść sześcianPoruszaj w każdej klatceObracaj co sekundęSteruj za pomocą klawiszyPodsumowanie: Prowadź sześcian5Wektory
Dodawanie wektorówKierunkiPrzestrzeń lokalna i globalnaPrędkość po przekątnejOdległość między obiektamiVector3 to strukturaPodsumowanie: pilot drona8Obiekty gry i komponenty
Referencje w InspectorzePobieranie komponentuBrakujące komponentyDodawanie komponentuRequireComponentPokazywanie i ukrywaniePowtórka: włącznik światłaPoćwicz samodzielnie: Edytor online Unity