function
| Nivel de permiso requerido |
|
|---|---|
| Restricciones |
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 formatpath/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[]
| Comando | Provoca | Java Edition | Bedrock Edition |
|---|---|---|---|
| cualquiera | los argumentos no están especificados correctamente | No es ejecutable | unparseable |
| las funciones especificadas o etiquetas de función no existen | Falla | Falla | |
| éxito |
Salida[]
| Comando | Edición | Situación | Contador de éxitos | /execute store success ... | /execute store result ... |
|---|---|---|---|---|---|
| cualquiera | Java Edition | En caso de fallo | 0 | 0 | 0 |
| En caso de éxito cuando se ejecuta no mediante una función | el número de todos los comandos ejecutados en la(s) función(es) más' 1 (este comando en sí) | 1 | el 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ón | N/A | 1 | 0 | ||
| Bedrock Edition | En caso de fallo | 0 | N/A | N/A | |
| En éxito | 1 | N/A | N/A |
- 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:bar3es 1 (un comando en foo:bar3) + 1 (este comando en sí) = 2. - El recuento de éxito de
/function foo:bar2es 2 (desde arriba) + 1 (este comando en sí) = 3. - El recuento de éxito de
/function foo:bar1es 3 (desde arriba) + 1 (este comando en sí) = 4.
- foo:bar1
- 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:bar3es 1 (un comando en foo:bar3). - El recuento de salida del chat de
/function foo:bar2es 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:bar1es 1 (un comando en foo:bar1) + 1 (un comando en foo:bar2) + 1 (un comando en foo:bar3 ) + 2 (dos funciones integradas) = 5.
- El recuento de salida del chat de
- Si tiene éxito,
/execute store Successsiempre devuelve 1. De lo contrario, devuelve 0. - Si tiene éxito, el valor de retorno de
/ejecutar resultado de la tiendaes 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.mcfunctionen 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
- Para ejecutar una función ubicada en
custom:storage:/function custom:example/test with custom:storage
Historial[]
| Java Edition | |||||
|---|---|---|---|---|---|
| 1.12 | pre1 | Se agregó /function. | |||
| 1.13 | 17w49b | /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.2 | 23w31a | Se agregaron argumentos de función. | |||
| Bedrock Edition | |||||
| 1.8.0 | beta 1.8.0.8 | Se agregó /function. | |||
Ver también[]
/tag– Para ejecutar la función por lotes, cada tic o en la (re)carga del servidor.