Las funciones pueden tener más de un parámetro, lo que permite que se pasen múltiples argumentos (piezas de información) a la función. Un ejemplo podría ser asignar un jugador a un equipo. Aquí necesitarías un parámetro para pasar al jugador y un parámetro para pasar a qué equipo asignarlos.
Para configurar múltiples parámetros, separa los nombres de los parámetros con una coma.
local function assignTeam(playerName, whichTeam)
end
Practica con múltiples parámetros
Para practicar trabajando con múltiples parámetros, crea una función que clasifique objetos en basura o reciclaje.
- El primer parámetro será la basura, que será destruida.
- El segundo parámetro será para reciclaje, que será vuelto brillante y nuevo de nuevo.
Configura la función
Primero configura la función con múltiples parámetros y luego prueba tu trabajo.
- Crea un nuevo script en ServerScriptService.
- Codifica una nueva función llamada sortGarbage() con dos parámetros, trash y recyclable.
- Al final del script, llama a la función.
- Verifica rápidamente el código hasta ahora utilizando una declaración print dentro de la función.
local function sortGarbage(trash, recyclable)
print("garbage test")
end
sortGarbage()
Usa múltiples parámetros
Dentro de la función, los parámetros pueden ser utilizados de forma similar a las variables. En este ejemplo, trash se destruye y luego recyclable recibe chispas utilizando un Emisor de Partículas.
Elimina la declaración print y utiliza Instance.new() para crear un nuevo Emisor de Partículas como se muestra. Esto se utilizará para dar un brillo a los reciclables.
local function sortGarbage(trash,recyclable)-- Crear un nuevo Emisor de Partículaslocal sparkle = Instance.new("ParticleEmitter")endsortGarbage()Destruye lo que se pase a través del parámetro de basura de la misma manera que si la basura fuera cualquier otra variable.
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- Destruir la basuratrash:Destroy()endsortGarbage()Asigna el Emisor de Partículas al reciclable.
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- Destruir la basura y hacer que los reciclables brillentrash:Destroy()sparkle.Parent = recyclableendsortGarbage()
Pasar valores a través de parámetros
¡Es hora de sacar la basura! Con los parámetros configurados, las funciones están listas para recibir información.
Crea dos objetos utilizando partes básicas para representar cosas que podrías tirar. Uno debería ser basura y uno reciclable. Asegúrate de que tengan nombres únicos.
En la parte superior del script, añade variables para los objetos que creaste. Estos serán tus argumentos.
local Workspace = game:GetService("Workspace")local cementBlock = Workspace.Cementlocal glassBottle = Workspace.GlassBottleAl final del script, donde se llama a sortGarbage(), pasa cada argumento.
local Workspace = game:GetService("Workspace")-- Objetos a usar como argumentoslocal cementBlock = Workspace.CementBlocklocal glassBottle = Workspace.GlassBottle-- Destruye la basura y limpia los reciclableslocal function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")trash:Destroy()sparkle.Parent = recyclableend-- Pasa los argumentossortGarbage(cementBlock, glassBottle)Prueba tu código. El objeto pasado primero será destruido. El segundo objeto brillará.
Orden de los parámetros
Típicamente, los argumentos se emparejan con los parámetros según el orden en que se pasan. Por ejemplo, el primer argumento se utiliza para el primer parámetro. El segundo argumento se utiliza para el segundo.
En nuestro ejemplo, hay dos parámetros. Lo que se pase primero siempre será basura, y el segundo siempre será reciclable.
-- Destruye la basura y limpia los reciclables
local function sortGarbage(trash,recyclable)
local sparkle = Instance.new("ParticleEmitter")
trash:Destroy()
sparkle.Parent = recyclable
end
-- Va en orden. El cemento es destruido y la botella de vidrio es reciclada
sortGarbage(cementBlock, glassBottle)
-- La botella de vidrio es destruida y el bloque de cemento es reciclado
sortGarbage(glassBottle, cementBlock)
Si solo pasas un argumento, ese argumento se tratará como basura. Si pasas tres argumentos, nada sucederá con el tercer argumento porque no hay un tercer parámetro.
Resumen
Los parámetros son marcadores de posición a través de los cuales se pueden pasar valores a las funciones. Los argumentos son los valores que se pasan a través del marcador de posición. Puedes crear múltiples parámetros separando sus nombres con comas. Al llamar a las funciones, el orden en que se pasan los valores a la función receptora determina qué parámetro se utiliza.