Negli esperimenti, ci sono spesso molte relazioni di causa ed effetto. Ad esempio:
- Se un giocatore guadagna 10 punti, allora vince la partita.
- Se un giocatore ha un potenziamento, allora può correre super veloce.
- Se un giocatore dice "Buon Compleanno" in chat, allora cadono coriandoli.
Gli script usano dichiarazioni condizionali per gestire questi tipi di situazioni. Le dichiarazioni condizionali sono righe di codice che vengono eseguite solo se determinate condizioni sono vere. Un tipo di dichiarazione condizionale è una dichiarazione if/then. In Luau, il modello di sintassi per le dichiarazioni if appare così:
sintassi if thenif "qualcosa accade" then-- Fai accadere qualcos'altroend
I blocchi di codice che usano le condizioni sono strutture di controllo. Le strutture di controllo sono come diagrammi di flusso in forma di codice e possono avere diverse dichiarazioni condizionali.
Pratica delle dichiarazioni if
Questi passaggi mostrano come creare uno script che cambia il colore di una parte se una dichiarazione è vera.
In ServerScriptService, crea un nuovo script e chiamalo TruthChecker. Aggiungi un commento appropriato allo script.
-- Cambia la parte se una condizione è veraCrea una nuova parte chiamata LieDetector.
Formattazione delle dichiarazioni if
Le condizioni possono assumere varie forme ma sono spesso semplici affermazioni come equazioni matematiche. Ad esempio, se 1+1 è uguale a 2, allora esegui del codice. Come le normali equazioni matematiche, le condizionali possono usare operatori come più (+) o minore di (<) per valutare le affermazioni.
Un operatore particolare di cui prestare attenzione è ==; sta per "è uguale a." Quindi l'affermazione 2 + 2 == 4 può essere letta come "due più due è uguale a quattro". Fai molta attenzione a non confonderlo con =, che assegna nuovi valori agli oggetti come le variabili.
Imposta la condizionale vuota. Nello script, digita if then, e premi Enter per completare automaticamente la condizionale. La parola chiave then sarà sottolineata perché il codice è incompleto.
if then-- codice vuotoendDopo la parola chiave if, digita un'affermazione vera come 3 + 3 == 6.
if 3 + 3 == 6 then-- codice vuotoendAll'interno della condizionale, fai riferimento alla parte che hai chiamato LieDetector e cambia la proprietà Color della parte in verde.
if 3 + 3 == 6 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endTesta il tuo codice. Se tre più tre è uguale a sei, la parte diventerà verde.
Controlla una condizione falsa
Ora, cambia intenzionalmente l'affermazione per vedere cosa succede quando l'equazione matematica è falsa.
Nella dichiarazione if, cambia l'equazione in qualcosa di inaccurato, come 3 + 3 >= 10.
if 3 + 3 >= 10 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endOra prova il tuo codice. La parte non dovrebbe diventare verde per un'affermazione falsa.
Operatori matematici
La tabella sottostante elenca alcuni operatori Luau comuni. Maggiori informazioni sugli operatori possono essere trovate su Operatori Luau.
| Simbolo | Significato |
|---|---|
| + | Addizione |
| - | Sottrazione |
| * | Moltiplicazione |
| / | Divisione |
Operatori di confronto
- == : È uguale a.
- ~= : Non è uguale a.
- < o > vengono usati per minore o maggiore, rispettivamente.
- <= o >= vengono usati per minore/maggiore o uguale a, rispettivamente.
Variabili e proprietà
Le dichiarazioni condizionali sono utilizzate anche per valutare lo stato delle proprietà e delle variabili. I seguenti passaggi controllano se una variabile è stata assegnata con successo un valore.
Elimina tutto il codice e copia il seguente frammento nello script. Testalo, e apparirà un nuovo errore in Output.
local mysteryPart = workspace.MysteryPart-- Valuta come vero se MysteryPart è stato assegnato con successoif mysteryPart thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endInserisci una nuova parte nello spazio di lavoro chiamata MysteryPart. Testa di nuovo, e LieDetector dovrebbe diventare verde.
Esplora come le proprietà possano essere valutate con le condizioni. Tieni MysteryPart, ma ancora una volta, elimina il tuo codice e copia il blocco di codice qui sotto.
local mysteryPart = workspace.MysteryPart-- Valuta come vero se MysteryPart è completamente opacoif mysteryPart.Transparency == 0 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)mysteryPart.Transparency = .2endProva il codice, e se MysteryPart ha la trasparenza predefinita di 0, diventerà spettrale mentre LieDetector diventa verde.
Riepilogo
Le dichiarazioni condizionali controllano se un'affermazione è accurata, e se sì, eseguono del codice. Le dichiarazioni if sono un tipo molto comune di dichiarazione condizionale. Usano il modello "Se questo è vero, allora fai quello."
I blocchi di codice che utilizzano dichiarazioni condizionali sono chiamati strutture di controllo. Le strutture di controllo possono contenere più dichiarazioni condizionali.
Oltre a valutare se semplici affermazioni matematiche sono fattuali, le condizionali vengono utilizzate anche per controllare lo stato delle variabili e delle proprietà.