Minecraft Wiki
function
Nivel de permiso
requerido
  • 2 ‌[Solo JE]
  • 1 ‌[Solo BE]
Restricciones

Truco solamente‌[Solo BE]

Ejecuta comandos encontrados en el archivo de función correspondiente con el contexto de ejecución del comando (ejecutor, posición de ejecución, ángulos, etc.) del comando /function.

En Java Edition, ejecuta una función o todas las funciones en una etiqueta desde un paquete de datos.
En Bedrock Edition, Ejecuta una función desde un paquete de comportamientos.

Sintaxis[]

  • Java Edition
function <name> [<arguments>|with (block <sourcePos>|entity <source>|storage <source>) [<path>]]
  • Bedrock Edition
function <name: filepath>

Argumentos[]

JE<name>: function
BE: name: filepath: CommandFilePath

En Java Edition, must be a resource location, which refers to a single function, or one prefixed with a #, which refers to a function tag. En Bedrock Edition, must be of the format path/to/function/file, which refers to a function located at [behavior_pack]/functions/path/to/function/file.mcfunction.

JE: <arguments>: nbt_compound_tag

Must be a compound NBT in SNBT format.

JE: <sourcePos>: block_pos

It must be a block position composed of <x>, <y> and <z>, each of which must be an integer or a tilde and caret notation.

JE: <source>: entity (EN entity <target> mode)

Must be a player name, a target selector or a UUID.

JE: <source>: resource_location (EN storage <target> mode)

Must be a resource location.

JE: <path>: nbt_path

Must be an NBT path.

Resultado[]

ComandoProvocaJava EditionBedrock Edition
cualquieralos argumentos no están especificados correctamente No es ejecutable unparseable
las funciones especificadas o etiquetas de función no existen Falla Falla
éxito

Salida[]

ComandoEdiciónSituaciónContador de éxitos/execute store success .../execute store result ...
cualquieraJava EditionEn caso de fallo000
En caso de éxito cuando se ejecuta no mediante una funciónel número de todos los comandos ejecutados en la(s) función(es) más' 1 (este comando en sí)1el número de comandos ejecutados (ya sea con éxito o no) 'más el número de funciones integradas.
Sobre el éxito al ejecutarse en una funciónN/A10
Bedrock EditionEn caso de fallo0N/AN/A
En éxito1N/AN/A

En Java Edition:[1][2]

El recuento de éxitos es la suma de los recuentos de éxito de todos los comandos ejecutados en la función/funciones más 1 (este comando en sí).
Por ejemplo,
foo:bar1
function foo:bar2
foo:bar2
function foo:bar3
foo:bar3
say hi
El recuento de éxito de /function foo:bar3 es 1 (un comando en foo:bar3) + 1 (este comando en sí) = 2.
El recuento de éxito de /function foo:bar2 es 2 (desde arriba) + 1 (este comando en sí) = 3.
El recuento de éxito de /function foo:bar1 es 3 (desde arriba) + 1 (este comando en sí) = 4.
El mensaje de salida que se muestra en el chat devuelve la cantidad de comandos ejecutados (no la cantidad de comandos que tuvieron éxito) más la cantidad de funciones integradas llamadas por una función.
El recuento de salida del chat de /function foo:bar3 es 1 (un comando en foo:bar3).
El recuento de salida del chat de /function foo:bar2 es 1 (un comando en foo:bar2) + 1 (un comando en foo:bar3) + 1 (una función integrada) = 3 .
El recuento de salida del chat de /function foo:bar1 es 1 (un comando en foo:bar1) + 1 (un comando en foo:bar2) + 1 (un comando en foo:bar3 ) + 2 (dos funciones integradas) = 5.
Si tiene éxito, /execute store Success siempre devuelve 1. De lo contrario, devuelve 0.
Si tiene éxito, el valor de retorno de /ejecutar resultado de la tienda es el mismo que el recuento de salida del chat. De lo contrario, devuelve 0.

Ejemplos[]

  • En Java Edition:
    • Para ejecutar una función ubicada en data/custom/functions/example/test.mcfunction en un paquete de datos cargado: /function custom:example/test
    • Para ejecutar todas las funciones en una etiqueta de función ubicada en data/custom/tags/functions/example/test.json: /function #custom:example/test
    • Para ejecutar una función si hay una oveja dentro de un radio de 2 cuadras: /ejecutar si entidad @e[tipo=oveja,distancia=..2] ejecutar función personalizada:ejemplo/prueba
    • Para ejecutar una función a menos que el ejecutor sea un jugador: /ejecutar a menos que la entidad @s[tipo=jugador] ejecute la función personalizada:ejemplo/prueba
    • Para ejecutar una macro de función con argumentos a=42, b="ejemplo": /función personalizada:ejemplo/prueba {a: 42, b: "ejemplo"}
    • Para ejecutar una macro de función con argumentos del almacenamiento
custom:storage: /function custom:example/test with custom:storage

Historial[]

Java Edition
1.12pre1Se agregó /function.
1.1317w49b/function ahora acepte las etiquetas de función como argumento.
Se eliminaron los argumentos [if/unless] a favor de /execute [if/unless].
Java Edition Próximamente
1.20.223w31aSe agregaron argumentos de función.
Bedrock Edition
1.8.0beta 1.8.0.8Se agregó /function.

Ver también[]

  • /tag – Para ejecutar la función por lotes, cada tic o en la (re)carga del servidor.

Referencias[]