Notizie
Gioco
Guide
Download
Versioni
/function
COMANDI BLOCCHI COMANDI E MAPPE TRUCCHI · LIVELLO 2 Aggiunto in 1.14 o precedente

/function comando in Minecraft

/function esegue in ordine tutti i comandi di un file .mcfunction di un pacchetto di dati, con lo stesso esecutore e la stessa posizione di chi la chiama. Trasforma lunghe catene di comandi in file leggibili e passa argomenti alle funzioni macro. Un tag di funzioni ne avvia diverse con una sola chiamata.

Sintassi

/function <name> [<arguments>|with]
ArgomentoAccettaA cosa serve
nameFunzioneID della funzione o del tag di funzioni, per esempio mypack:start o #minecraft:load.
argumentsfacoltativoComposto NBTCompound con i valori delle macro, per esempio {name:"Alex",count:3}.
sourcefacoltativoCoordinate del blocco (x y z)Da dove arrivano i valori macro: coordinate di un blocco, un'entità o l'ID di un contenitore, secondo la parola chiave.
pathfacoltativoPercorso NBTPercorso NBT facoltativo nella sorgente; il compound che vi si trova diventa l'insieme degli argomenti macro.
Tutte le 8 forme
  • /function <name>
  • /function <name> <arguments>
  • /function <name> with block <source>
  • /function <name> with block <source> <path>
  • /function <name> with entity <source>
  • /function <name> with entity <source> <path>
  • /function <name> with storage <source>
  • /function <name> with storage <source> <path>

Esempi

Eseguire una funzione

/function mypack:start

Esegue una volta, in ordine, tutti i comandi di data/mypack/function/start.mcfunction.

Java 26.3

Passare un argomento macro

/function mypack:greet {name:"Alex"}

In greet.mcfunction la riga macro $say Ciao $(name) diventa say Ciao Alex.

Java 26.3

Leggere argomenti da un contenitore

/function mypack:greet with storage mypack:data player

Prende i valori macro dal compound player del contenitore mypack:data.

Java 26.3

Rieseguire le funzioni di load

/function #minecraft:load

Esegue tutte le funzioni del tag minecraft:load, quelle che di solito partono dopo il caricamento.

Java 26.3

Una funzione per ogni giocatore

/execute as @a at @s run function mypack:check

La funzione gira una volta per giocatore, con @s e ~ ~ ~ riferiti a quel giocatore.

Java 26.3
Componi il tuo comando

Compila i campi, poi copia il comando.

Generatore di comandi

Dove si trovano le funzioni

Una funzione è un file di testo in data/<namespace>/function/<nome>.mcfunction dentro un pacchetto di dati, richiamato come namespace:nome. Scrivi un comando per riga, senza la barra iniziale; le righe che iniziano con # sono commenti. I tag di funzioni #minecraft:load e #minecraft:tick avviano le loro funzioni dopo il caricamento e a ogni tick di gioco. Dopo aver modificato un file usa /reload e controlla con /datapack che il pacchetto sia attivo.

Macro e argomenti

Una riga che inizia con $ è una riga macro: ogni $(chiave) viene sostituita prima dell'esecuzione. Passa i valori come compound, per esempio {name:"Alex"}, oppure leggili dai dati NBT con with entity, with block o with storage. Se manca una chiave, la chiamata si ferma con «Argomento ... mancante per la funzione ...». Le funzioni macro non si possono rinviare con /schedule.

Consigli

  • Racchiudi la chiamata in /execute: execute as @a at @s run function mypack:check esegue il file una volta per giocatore.
  • /return termina una funzione in anticipo e le dà un valore.
  • Una sola riga errata impedisce di caricare l'intero file e il gioco segnala «Funzione sconosciuta». Il registro del gioco indica la riga sbagliata.
  • Le funzioni girano di base con il livello di permesso 2; sui server lo cambia function-permission-level in server.properties.

✓ Verificato nella Java Edition 26.3 · aggiornato il 2 novembre 2026

/function: FAQ

I comandi in un file di funzione iniziano con la barra?

No, scrivi ogni comando senza barra. Le righe che iniziano con # sono commenti, quelle con $ sono righe macro.

Come eseguo una funzione a ogni tick?

Aggiungila al tag di funzioni minecraft:tick, nel file data/minecraft/tags/function/tick.json del tuo pacchetto. Tienila leggera: gira 20 volte al secondo.

Come si usa /function?

Scrivilo in chat con i trucchi attivi: /function <name> [<arguments>|with].

Chi può usare /function?

Trucchi attivi o operatore di livello 2.

Comandi correlati