W doświadczeniach często istnieje wiele powiązań przyczynowo-skutkowych. Na przykład:
- Jeśli gracz zdobędzie 10 punktów, to wygrywa grę.
- Jeśli gracz ma power-up, to może biegać super szybko.
- Jeśli gracz powie "Szczęśliwego Urodzin", to sypie się confetti.
Skrypty używają instrukcji warunkowych do obsługi tych typów sytuacji. Instrukcje warunkowe to linie kodu, które wykonują się tylko wtedy, gdy pewne warunki są prawdziwe. Jednym z rodzajów instrukcji warunkowych jest instrukcja if/then. W Luau wzorzec składni dla instrukcji if wygląda tak:
składnia if thenif "coś się wydarzy" then-- Zrób coś innegoend
Fragmenty kodu używające warunków to struktury kontrolne. Struktury kontrolne są jak diagramy przepływu w formie kodu i mogą mieć kilka instrukcji warunkowych.
Praktyka z instrukcją if
Te kroki pokazują, jak stworzyć skrypt, który zmienia kolor części, jeśli warunek jest prawdziwy.
W ServerScriptService utwórz nowy skrypt i nazwij go TruthChecker. Dodaj odpowiedni komentarz do skryptu.
-- Zmienia część, jeśli warunek jest prawdziwyUtwórz nową część nazwą LieDetector.
Formatuj instrukcje if
Warunki mogą mieć różne formy, ale często są prostymi zdaniami, takimi jak równania matematyczne. Na przykład, jeśli 1+1 równa się 2, to wykonaj jakiś kod. Jak zwykłe równania matematyczne, warunki mogą używać operatorów, takich jak plus (+) lub mniejszy niż (<), aby ocenić zdania.
Jednym szczególnym operatorem, którego warto być świadomym, jest ==; oznacza "jest równy." Więc zdanie 2 + 2 == 4 można odczytać jako "dwa plus dwa równa się cztery". Uważaj, aby nie pomylić go z =, który przypisuje nowe wartości do obiektów, takich jak zmienne.
Skonfiguruj pusty warunek. W skrypcie wpisz if then, a następnie naciśnij Enter, aby autouzupełnić warunek. Słowo kluczowe then będzie podkreślone, ponieważ kod jest niekompletny.
if then-- pusty kodendPo słowie kluczowym if wpisz prawdziwe zdanie, takie jak 3 + 3 == 6.
if 3 + 3 == 6 then-- pusty kodendWewnątrz warunku odwołaj się do części, którą nazwałeś LieDetector i zmień właściwość Color części na zielony.
if 3 + 3 == 6 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endPrzetestuj swój kod. Jeśli trzy plus trzy równa się sześciu, część zmieni kolor na zielony.
Sprawdź fałszywy warunek
Teraz celowo zmień zdanie, aby zobaczyć, co się stanie, gdy równanie matematyczne jest fałszywe.
W instrukcji if zmień równanie na coś niepoprawnego, na przykład 3 + 3 >= 10.
if 3 + 3 >= 10 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endPrzetestuj teraz swój kod. Część nie powinna zmienić koloru na zielony dla fałszywego zdania.
Operatory matematyczne
Tabela poniżej zawiera kilka powszechnych operatorów Luau. Więcej informacji o operatorach można znaleźć na stronie Operatory Luau.
| Symbol | Znaczenie |
|---|---|
| + | Dodawanie |
| - | Odejmowanie |
| * | Mnożenie |
| / | Dzielenie |
Operatory porównania
- == : jest równy.
- ~= : nie jest równy.
- < lub > używane są odpowiednio do oznaczenia mniejszy lub większy niż.
- <= lub >= używane są do oznaczenia mniejszy/równy lub większy/równy.
Zmienne i właściwości
Instrukcje warunkowe są również używane do oceny statusu właściwości i zmiennych. Poniższe kroki sprawdzają, czy zmienna została poprawnie przypisana.
Usuń cały kod i skopiuj następujący fragment do skryptu. Przetestuj go, a nowy błąd pojawi się w Output.
local mysteryPart = workspace.MysteryPart-- Ocenia jako prawdziwe, jeśli MysteryPart został pomyślnie przypisanyif mysteryPart thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endWstaw nową część do obszaru roboczego o nazwie MysteryPart. Przetestuj ponownie, a LieDetector powinien zmienić kolor na zielony.
Zbadaj, jak właściwości mogą być oceniane za pomocą warunków. Zachowaj MysteryPart, ale ponownie usuń swój kod i skopiuj poniższy kod.
local mysteryPart = workspace.MysteryPart-- Ocenia jako prawdziwe, jeśli MysteryPart jest całkowicie nieprzezroczystyif mysteryPart.Transparency == 0 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)mysteryPart.Transparency = .2endPrzetestuj kod, a jeśli MysteryPart ma domyślną przezroczystość równą 0, stanie się przezroczysty, podczas gdy LieDetector zmieni kolor na zielony.
Podsumowanie
Instrukcje warunkowe sprawdzają, czy dane zdanie jest prawdziwe, a jeśli tak, to wykonują jakiś kod. Instrukcje if są bardzo powszechnym rodzajem instrukcji warunkowych. Używają wzorca "Jeśli to jest prawda, to zrób to."
Fragmenty kodu używające instrukcji warunkowych nazywane są strukturami kontrolnymi. Struktury kontrolne mogą zawierać wiele instrukcji warunkowych.
Oprócz oceny, czy proste zdania matematyczne są prawdziwe, instrukcje warunkowe są również używane do sprawdzania statusu zmiennych i właściwości.