Le funzioni possono avere più di un parametro, consentendo che più argomenti (pezzi di informazione) vengano passati nella funzione. Un esempio potrebbe essere assegnare un giocatore a una squadra. Qui avresti bisogno di un parametro per passare il giocatore e di un parametro per passare quale squadra assegnargli.
Per impostare più parametri, separa i nomi dei parametri con una virgola.
local function assignTeam(playerName, whichTeam)
end
Esercizio con più parametri
Per esercitarti a lavorare con più parametri, crea una funzione che ordina oggetti in spazzatura o riciclaggio.
- Il primo parametro sarà la spazzatura, che sarà distrutta.
- Il secondo parametro sarà per il riciclaggio, che sarà reso scintillante e nuovo di nuovo.
Imposta la funzione
Prima imposta la funzione con più parametri e poi testa il tuo lavoro.
- Crea un nuovo script in ServerScriptService.
- Codifica una nuova funzione chiamata sortGarbage() con due parametri, trash e recyclable.
- In fondo allo script, chiama la funzione.
- Controlla rapidamente il codice finora utilizzando un'istruzione print all'interno della funzione.
local function sortGarbage(trash, recyclable)
print("test spazzatura")
end
sortGarbage()
Usa più parametri
All'interno della funzione, i parametri possono essere usati in modo simile alle variabili. In questo esempio, trash viene distrutto e poi recyclable riceve scintille utilizzando un Particle Emitter.
Elimina l'istruzione print e utilizza Instance.new() per creare un nuovo Particle Emitter come mostrato. Questo verrà utilizzato per dare scintillii ai materiali riciclabili.
local function sortGarbage(trash,recyclable)-- Crea un nuovo Particle Emitterlocal sparkle = Instance.new("ParticleEmitter")endsortGarbage()Distruggi ciò che viene passato attraverso il parametro trash come se trash fosse qualsiasi altra variabile.
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- Distruggi la spazzaturatrash:Destroy()endsortGarbage()Esegui il parent del Particle Emitter al riciclabile.
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- Distruggi la spazzatura e rendi lucidi i materiali riciclabilitrash:Destroy()sparkle.Parent = recyclableendsortGarbage()
Passa valori attraverso i parametri
È tempo di portare fuori la spazzatura! Con i parametri impostati, le funzioni sono pronte per ricevere informazioni.
Crea due oggetti utilizzando parti di base per rappresentare le cose che potresti gettare via. Uno deve essere spazzatura e uno riciclabile. Assicurati che abbiano nomi unici.
In cima allo script, aggiungi variabili per gli oggetti che hai creato. Queste saranno i tuoi argomenti.
local Workspace = game:GetService("Workspace")local cementBlock = Workspace.Cementlocal glassBottle = Workspace.GlassBottleIn fondo allo script, dove viene chiamato sortGarbage(), passa ogni argomento.
local Workspace = game:GetService("Workspace")-- Oggetti da utilizzare come argomentilocal cementBlock = Workspace.CementBlocklocal glassBottle = Workspace.GlassBottle--Distrugge la spazzatura e pulisce i materiali riciclabililocal function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")trash:Destroy()sparkle.Parent = recyclableend-- Passa gli argomentisortGarbage(cementBlock, glassBottle)Testa il tuo codice. L'oggetto passato per primo verrà distrutto. Il secondo oggetto brillerà.
Ordine dei parametri
Tipicamente, gli argomenti sono abbinati ai parametri in base all'ordine in cui vengono passati. Ad esempio, il primo argomento è utilizzato per il primo parametro. Il secondo argomento è utilizzato per il secondo.
Nel nostro esempio, ci sono due parametri. Qualunque cosa venga passata per prima sarà sempre spazzatura, e la seconda sarà sempre riciclabile.
--Distrugge la spazzatura e pulisce i materiali riciclabili
local function sortGarbage(trash,recyclable)
local sparkle = Instance.new("ParticleEmitter")
trash:Destroy()
sparkle.Parent = recyclable
end
--Va in ordine. Il cemento è distrutto e la bottiglia di vetro viene riciclata
sortGarbage(cementBlock, glassBottle)
--La bottiglia di vetro è distrutta e il cemento viene riciclato
sortGarbage(glassBottle, cementBlock)
Se passassi solo un argomento, quell'argomento verrebbe trattato come spazzatura. Se passassi tre argomenti, non succederebbe nulla al terzo argomento perché non c'è un terzo parametro.
Riepilogo
I parametri sono segnaposto attraverso i quali i valori possono essere passati alle funzioni. Gli argomenti sono i valori che vengono passati attraverso il segnaposto. Puoi creare più parametri separando i loro nomi con delle virgole. Quando chiami le funzioni, l'ordine in cui i valori vengono passati nella funzione ricevente determina quale parametro vengono utilizzati.