Comandos/function

De Minecraft Wiki
Ir para: navegação, pesquisa
function
Visibilidade

Visível

Restrições

Nenhuma

Executa comandos encontrados no arquivo de função correspondente.

Na Edição Java, executa uma função ou todas as funções em uma tag de um datapack.
Na Edição Bedrock, executa uma função de um pacote de complementos.

Sintaxe

  • Edição Java
function <name>
  • Edição Bedrock
function <name: filepath>

Argumentos

Edição Java<name>: function
Edição Bedrock: name: filepath: CommandFilePath

Na Edição Java, must be a namespaced ID, which refers to a single function, or one prefixed with a #, which refers to a function tag. Na Edição Bedrock, must be of the format path/to/function/file, which refers to a function located at [behavior_pack]/functions/path/to/function/file.mcfunction.

Resultado

ComandoGatilhoEdição JavaEdição Bedrock
qualqueros argumentos não são especificados corretamente não analisável falha
se as funções/tags de função especificadas não existem falham
sucesso Executa a(s) função(ões) por meio do executor do comando que executou o comando /function.

Saída

ComandoEdiçãoSituaçãoContagem de sucesso/execute store succeess .../execute store result ...
qualquerEdição JavaAo falhar000
On successa soma do número de todos os comandos executados na(s) função(ões) mais 1 (este comando em si)1o número de comandos executados (com êxito ou não) mais o número de funções incorporadas chamadas por uma função.
Edição BedrockAo falhar0N/AN/A
Ao sucesso1N/AN/A

Na Edição Java:[1][2]

A contagem de sucesso é a soma das contagens de sucesso de todos os comandos executados na função/funções mais 1 (este comando em si).
Por exemplo,
foo:bar1
function foo:bar2
foo:bar2
function foo:bar3
foo:bar3
say oi
A contagem de sucesso de Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. é 1 (um comando em foo:bar3) + 1 (este comando em si) = 2.
A contagem de sucesso de Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. é 2 (de cima) + 1 (este comando em si) = 3.
A contagem de sucesso de Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. é 3 (de cima) + 1 (este comando em si) = 4.
A mensagem de saída exibida no chat retorna o número de comandos executados (não o número de comandos bem-sucedidos) mais o número de funções incorporadas chamadas por uma função.
A contagem de saída do bate-papo de Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. é 1(um comando em foo:bar3).
A contagem de saída do bate-papo de Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. é 1 (um comando em foo:bar2) + 1 (um comando em foo:bar3) + 1 (uma função embutida ) = 3.
A contagem de saída do bate-papo de Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. é 1 (um comando em foo:bar1) + 1 (um comando em foo:bar2) + 1 (um comando em foo:bar3) + 2 (duas funções embutidas) = 5.
Se for bem sucedido, Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. sempre retorna 1. No entando, retorna 0.
Se for bem-sucedido, o valor de retorno de Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'. é o mesmo que a contagem de saída do chat. Caso contrário, retorna 0.

Exemplos

  • Na Edição Java:
    • Para executar uma função localizada em data/custom/functions/example/test.mcfunction num pacote de dados carregado: Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'.
    • Para executar todas as funções em uma tag de função localizada em data/custom/tags/functions/example/test.json: Erro em Lua em Módulo:Command na linha 133: invalid value (nil) at index 1 in table for 'concat'.
    • Para executar uma função se houver uma ovelha dentro de um raio de 2 blocos: /execute if entity @e[type=sheep,distance=..2] run function custom:example/test
    • Para executar uma função, a menos que o executor seja um jogador: /execute unless entity @s[type=player] run function custom:example/test

História

Edição Java
1.12 pre1 Adicionado /.
1.13 17w49b / agora aceita tags como argumento.
Removido argumentos [if/unless] em favor de /execute [if/unless].
Edição Bedrock
1.8.0 beta 1.8.0.8 Adicionado /.

Veja Também

  • /tag – Para executar a função em lote, a cada tique ou no recarregamento do servidor.

Referências