Ripetere il codice con while loop

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Molte cose nella computer science o nello sviluppo dei giochi di solito si ripetono. Ad esempio, un'app potrebbe aggiornare il contenuto in un feed ogni pochi secondi, o un gioco potrebbe ricompensare i giocatori un premio ogni giorno che accedono. Per completare questo comportamento, i codici spesso usano loop .

In computer science, a loop è un pattern di codifica che ripetisce una serie di istruzioni, spesso fino a quando non viene soddisfatta una condizione specifica. Per praticare questo, codicherai una parte che cambia colori indefinitamente. Le lezioni successive mostreranno come fermare il looping.

Configurazione della parte e dello script

Usa qualsiasi progetto Roblox per questo esercizio. Quando hai finito, questa parte può essere utilizzata come un modo per decorare un Ambiente.

  1. Crea una nuova parte con un nome descrittivo. Questa lezione usa LoopingPart .

  2. In ServerScriptService , aggiungi uno script nuovo chiamato LoopingScript.

  3. Nel script, elimina Hello World e scrivi un commento che dichiara lo scopo di questo script.


    -- Changes the color of LoopingPart every few seconds

Uso delle variabili per memorizzare una parte

Le variabili possono anche contenere riferimenti a oggetti oltre alle stringhe. Ad esempio, quando uno script conosce il riferimento a una parte, lo script può cambiarlo.

Invece di digitare workspace.NameOfYourPart over e over, quella intera linea può essere memorizzata all'interno di una variabile locale. Le variabili locali vengono create facendo clic su local e poi sul nome della variabile.

Ad esempio: local nameOfVariable .

  1. Sotto il Commentare, crea una variabile locale digitando local loopingPart .


    -- Cambia il colore di LoopingPart ogni pochi secondi
    local loopingPart
  2. Imposta la variabile sulla parte ripetitiva facendo clic su = workspace.LoopingPart sulla stessa linea. Ricorda che l'operatore = imposta il valore di una variabile a qualsiasi valore a destra di essa.


    -- Cambia il colore di LoopingPart ogni pochi secondi
    local loopingPart = workspace.LoopingPart

Mentre Loops

Prima di creare il while loop per la parte che cambia colore, vale la pena spiegare la sua sintassi. Un while loop ha tre componenti:

  • La parola chiave while .
  • Una condizione, sempre dopo la parola chiave.
  • Istruzioni, tra le parole chiave do e end.

In loop, le condizioni possono essere una varietà di dichiarazioni logiche. Alcuni esempi potrebbero essere se due numeri sono uguali. Un loop si eseguirà se la sua condizione è vera.

Nota nello screenshot seguente, la condizione è vera, il che significa che questo loop si eseguirà per sempre. In lezioni successive, inizierai a codificare condizioni specifiche che si fermano.


while true do
print("This loop is running")
end

Codice a while loop

Successivamente, creerai il while loop per la parte che cambia colore.

  1. Nella prossima riga, scrivi while true do . Quindi, premi Inserisci per completare automaticamente e aggiungere la parola end .


    -- Cambia il colore di loopingPart ogni pochi secondi
    local loopingPart = workspace.LoopingPart
    -- Codice di looping
    while true do
    end

Aggiungere Codice in Loop

Con il mentre loop creato, istruzioni possono essere aggiunte per cambiare il colore della parte nel tempo. All'interno del loop, aggiungi una linea di codice per ogni colore. Ogni colore userà i valori RGB, un modo di archiviare i colori come numeri in computer science.

  1. Tra while true do e end, imposta la proprietà Colore della parte su Color3.fromRGB() .


    local loopingPart = workspace.LoopingPart
    while true do
    loopingPart.Color = Color3.fromRGB()
    end
  2. Impostare il colore può essere fatto utilizzando un raccoglitore di colori in Studio. Per farlo, fai clic con il pulsante sinistro all'interno del () accanto a fromRGB . Quindi, fai clic sull'Iconadella ruota dei colori. Una volta impostato il colore desiderato, premi OK per aggiungere automaticamente il valore del colore nel codice.


    local loopingPart = workspace.LoopingPart
    while true do
    loopingPart.Color = Color3.fromRGB(82, 227, 255)
    end

Fare in modo che lo script abbia finito

Se aggiungi una seconda riga di codice che cambia colore in questo momento, cambierebbe il colore del Mattonein modo da potresti nemmeno vedere il primo colore andare via. Per fare in modo che lo script aspetti prima di eseguire la prossima riga di codice, usa una funzione task.wait() .

  1. Dopo aver cambiato il colore del mattone, digita task.wait(3) . Qualsiasi numero posto all'interno del () è il numero di secondi che lo script aspetterà.


    local loopingPart = workspace.LoopingPart
    while true do
    loopingPart.Color = Color3.fromRGB(82, 227, 255)
    task.wait(3)
    end
  2. Sotto la funzione di attesa, ripetere lo stesso processo di aggiungere un nuovo colore. Finiscilo con una funzione di attesa aggiuntiva.


    while true do
    loopingPart.Color = Color3.fromRGB(82, 227, 255)
    task.wait(3)
    loopingPart.Color = Color3.fromRGB(177, 52, 255)
    task.wait(3)
    end
  3. Prova il codice e vedi se i colori cambiano.

Note di risoluzione dei problemi A questo punto, se la parte che cambia colore non funziona come previsto, prova uno dei seguenti metodi di seguito. Problema : I colori vengono saltati

  • Assicurati di avere una funzione di attesa tra ogni cambiamento di colore, specialmente nell'ultima riga.

  • Assicurati che tutto il cambiamento di colore e il codice di attesa sia tra le sezioni while true do e end. Problema : La parte è ancora grigia o non cambia colore come previsto

  • Assicurati che tutti i valori RGB abbiano numeri da 0 a 255, siano interi o decimali e siano separati da virgole.

  • I numeri all'interno del () di una funzione di attesa dovrebbero essere maggiori di 1. È possibile che se un'attesa è troppo breve, potresti non vedere quel colore.

Completa lo script del ciclo di colorazione


-- Crea una variabile per memorizzare la parte
local loopingPart = workspace.LoopingPart
-- Codice di looping
while true do
-- Cambia il colore di loopingPart
loopingPart.Color = Color3.fromRGB(82, 227, 255)
-- Attendere 3 secondi prima della prossima istruzione
task.wait(3)
loopingPart.Color = Color3.fromRGB(177, 52, 255)
task.wait(3)
end

Panoramica

I loop sono un elemento comune nella maggior parte dei linguaggi del computer. Vengono utilizzati per ripetere istruzioni, a volte fino a quando non vengono soddisfatte condizioni specifiche. In questo articolo, il while loop viene utilizzato per ripetere le istruzioni per sempre. Per creare un while loop che si ripetisce per sempre, utilizzare la sintassi seguente, assicurandosi di includere istruzioni tra il do e il end dei pulsanti.


while true do
-- Istruzioni
end