Múltiplos Parâmetros e Argumentos

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

As funções podem realmente ter mais de um parâmetro, permitindo que vários argumentos (peças de informação) sejam passados para a função. Um exemplo de jogo pode estar atribuindo um jogador a uma Equipe. Aqui você precisaria de um parâmetro para passar no jogador e um parâmetro para passar em qual equipe atribuí-los.

Para configurar vários parâmetros, separe os nomes dos parâmetros com uma vírgula.


local function assignTeam(playerName, whichTeam)
end

Praticar com Parâmetros Múltiplos

Para praticar o trabalho com vários parâmetros, crie uma função que classifica os objetos do seu jogo em lixo ou reciclagem.

  • O primeiro parâmetro será lixo, que será destruído.
  • O parâmetro segundo será para reciclagem, que será feita brilhante e nova novamente.

Configurar a função

Primeiro configure a função com vários parâmetros e depois teste seu trabalho.

  1. Crie um novo script em ServerScriptService .
  2. Crie uma nova função chamada sortGarbage() com dois parâmetros, trash e recyclable.
  3. Na parte inferior do script, chame a função.
  4. Verifique rapidamente o código até agora usando uma instrução de impressão dentro da função.

local function sortGarbage(trash, recyclable)
print("garbage test")
end
sortGarbage()

Usando Múltiplos Parâmetros

Dentro da função, os parâmetros podem ser usados de forma semelhante às variáveis. Neste exemplo, trash é destruído e então recyclable é dado brilhos usando um Emissor de Partículas.

  1. Apague a declaração de impressão e use Instance.new () para criar um novo Emissor de Partículas como mostrado. Isso será usado para dar brilho aos recicláveis.


    local function sortGarbage(trash,recyclable)
    -- Crie um novo Emissor de Partículas
    local sparkle = Instance.new("ParticleEmitter")
    end
    sortGarbage()
  2. Destrua qualquer coisa que seja passada através do parâmetro lixo, como se o lixo fosse qualquer outra variável.


    local function sortGarbage(trash,recyclable)
    local sparkle = Instance.new("ParticleEmitter")
    -- Destrua o lixo
    trash:Destroy()
    end
    sortGarbage()
  3. Parente do Emissor de Partículas ao reciclável.


    local function sortGarbage(trash,recyclable)
    local sparkle = Instance.new("ParticleEmitter")
    -- Destrua o lixo e faça os recicláveis brilhantes
    trash:Destroy()
    sparkle.Parent = recyclable
    end
    sortGarbage()

Passando Valores Através de Parâmetros

Hora de tirar o lixo! Com os parâmetros configurados, as funções estão prontas para receber informações.

  1. Crie dois objetos usando partes básicas para representar coisas que você pode jogar fora. Um deve ser lixo e outro reciclável. Certifique-se de que eles tenham nomes únicos.

  2. Na parte superior do script, adicione variáveis para os objetos que você criou. Estes serão seus argumentos.


    local cementBlock = workspace.Cement
    local glassBottle = workspace.GlassBottle
  3. Na parte inferior do script, onde sortGarbage() é chamado, passe em cada argumento.


    -- Objetos para usar como argumentos
    local cementBlock = workspace.CementBlock
    local glassBottle = workspace.GlassBottle
    --Destrói lixo e limpa recicláveis
    local function sortGarbage(trash,recyclable)
    local sparkle = Instance.new("ParticleEmitter")
    trash:Destroy()
    sparkle.Parent = recyclable
    end
    -- Passe nos argumentos
    sortGarbage(cementBlock, glassBottle)
  4. Teste seu código. O objeto passado no primeiro será destruído. O segundo objeto brilhará.

Ordem dos Parâmetros

Normalmente, os argumentos são correspondidos a parâmetros com base na ordem em que foram passados. Por instância, o primeiro argumento é usado para o primeiro parâmetro. O segundo argumento é usado para o segundo.

No nosso exemplo, existem dois parâmetros. O que quer que seja passado no primeiro sempre será lixo, e o segundo sempre será reciclável.


--Destrói lixo e limpa recicláveis
local function sortGarbage(trash,recyclable)
local sparkle = Instance.new("ParticleEmitter")
trash:Destroy()
sparkle.Parent = recyclable
end
--Vai em ordem. O cimento é destruído e a garrafa de vidro é reciclada
sortGarbage(cementBlock, glassBottle)
--A Garrafa de Vidro é destruída e o Bloco de Cimento é reciclado
sortGarbage(glassBottle, cementBlock)

Se você passasse em apenas um argumento, esse argumento seria tratado como lixo. Se você passasse em três argumentos, nada aconteceria ao terceiro argumento porque não há terceiro parâmetro.

Resumo

Parâmetros são espaços reservados através dos quais os valores podem ser passados para funções. Argumentos são os valores que são passados através do espaço reservado. Você pode criar vários parâmetros separando seus nomes com vírgulas. Ao chamar funções, a ordem em que os valores são passados para a função de recebimento determina qual parâmetro é usado.