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 (pedaços de informação) sejam passados para a função. Um exemplo de jogo pode ser atribuir um jogador a uma Equipe. Aqui você precisaria de um parâmetro para passar no jogador e um parâmetro para passar na qual equipe atribuir.

Para definir vários parâmetros, separe os nomes dos parâmetros com um ponto-vírgula.


local function assignTeam(playerName, whichTeam)
end

Prática com Múltiplos Parâmetros

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

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

Configurar a Função

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

  1. Crie um novo script em ServerScriptService .
  2. Código 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 declaraçã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, parâmetros podem ser usados semelhantes a variáveis. Neste exemplo, trash é destruído e então recyclable é dado brilhos usando um Emissor de Particulas.

  1. Exclua a declaração de impressão e use o Instance.new() para criar um novo Particle Emitter como mostrado. Isso será usado para dar brilho aos recicláveis.


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


    local function sortGarbage(trash,recyclable)
    local sparkle = Instance.new("ParticleEmitter")
    -- Destrua o lixo
    trash:Destroy()
    end
    sortGarbage()
  3. Parent o Emitter de Particulas para o reciclável.


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

Passing Valores através de Parâmetros

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

  1. Crie dois objetos usando peças básicas para representar coisas que você pode jogar fora. Um deve ser lixo e um reciclável. Certifique-se de que eles têm nomes únicos.

  2. No topo do script, adicione variáveis para os objetos que você criou. Essas 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 primeiro objeto passado será destruído. O segundo objeto brilhará.

Ordenar Por Parâmetros

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

No nosso exemplo, há dois parâmetros. Seja qual for o primeiro a ser passado 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
--Vá em ordem. O cimento é destruído e a garrafa de vidro é reciclada
sortGarbage(cementBlock, glassBottle)
--O vidro é destruído e o bloco de cimento é reciclado
sortGarbage(glassBottle, cementBlock)

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

Visão Geral

Os parâmetros são ponteiros através dos quais os valores podem ser passados em funções. Os argumentos são os valores que são passados através do ponteiro. Você pode criar vários parâmetros ao separar seus nomes com vírgulas. Ao chamar funções, a ordem que os valores são passados para a função de destino determina qual parâmetro eles estão usando.