Befehl/schedule

Aus Minecraft Wiki
Zur Navigation springen Zur Suche springen
/schedule
Operator-Level
benötigt
  • 2 ‌[Nur JE]
  • 1 ‌[Nur BE]
Einschränkungen

Nur Befehle erlauben

/schedule führt eine Funktion mit einer bestimmten Verzögerung aus. Dadurch lassen sich Funktionen zu einem anderem Zeitpunkt ausführen als sie aufgerufen wurden. Ferner lassen sie sich so auch in einem Intervall wiederholen.

Syntax[Bearbeiten | Quelltext bearbeiten]

Zur Eingabe eines Befehls siehe Befehl#Eingabehilfe.

  • Java Edition
/schedule function <Funktion> <Zeit> [append|replace]
/schedule clear <Funktion>
  • Bedrock Edition
/schedule on_area_loaded add <von: x y z> <bis: x y z> <Funktion: Dateipfad>
/schedule on_area_loaded add circle <Zentrum: x y z> <Radius: int> <Funktion: Dateipfad>
/schedule on_area_loaded add tickingarea <Name: Text> <Funktion: Dateipfad>

Argumente[Bearbeiten | Quelltext bearbeiten]

Parameter-Argumente[Bearbeiten | Quelltext bearbeiten]

<Funktion>

Funktion ist der Name und Dateipfad einer Funktion.
In der Java Edition muss es sich um eine Namensraum-ID oder einen mit einem # vorangestellten ID handeln, der während der Befehlsausführung in eine Funktion oder einen Funktions-Alias aufgelöst wird. In der Bedrock Edition muss es das Format path/to/function/file haben, das während der Befehlsausführung in eine Funktion unter [behavior_pack]/functions/path/to/function/file.mcfunction aufgelöst wird.

<Zeit>

Zeit ist eine Zeitangabe, mit welcher Verzögerung die Funktion ausgeführt werden soll.
Es muss sich um eine Gleitkommazahl mit einfacher Genauigkeit handeln, der eine Minecraft-Zeiteinheit angehängt ist. Zu den Einheiten gehören:
d: ein Spieltag, 24.000 Gameticks;
s: eine Sekunde, 20 Gameticks;
t (Standard und wegzulassen): ein einzelner Gametick; die Standardeinheit.
Die Zeit wird nach der Einheitenumrechnung in Gametick auf die nächste Ganzzahl eingestellt. Beispiel: .5d entspricht 12000 Gameticks. Ein Minecraft-Tag dauert 24000 Ticks, 1200 Sekunden oder 20 Minuten. In einer Sekunde werden 20 Ticks durchgeführt.

<von: x y z bis: x y z>[Nur Bedrock Edition]

Gibt die Koordinaten der gegenüberliegenden Ecken eines rechteckigen Bereichs an, der zum Definieren eines geladenen Bereichs verwendet wird.
Muss eine dreidimensionale Koordinate sein, die aus <X>, <Y> und <Z> besteht, von denen jede eine Gleitkommazahl mit einfacher Genauigkeit oder eine Tilde- und Zirkumflex-Notation sein muss.

Für x und z werden Zahlen kleiner als -30.000.000 oder größer als 30.000.000 als -30.000.000 bzw. 30.000.000 behandelt.

<Zentrum x y z>[Nur Bedrock Edition]

Gibt die Koordinaten des Mittelpunkts eines kreisförmigen Bereichs an, der zur Definition eines geladenen Bereichs verwendet wird.
Muss eine dreidimensionale Koordinate sein, die aus <X>, <Y> und <Z> besteht, von denen jeder eine Gleitkommazahl mit einfacher Genauigkeit oder eine Tilde- und Zirkumflex-Notation sein muss. Für x und z werden Zahlen kleiner als -30.000.000 oder größer als 30.000.000 als -30.000.000 bzw. 30.000.000 behandelt.

<Radius: int>[Nur Bedrock Edition]

Gibt den Radius eines kreisförmigen geladenen Bereichs als Anzahl der Abschnitte vom Mittelpunkt bis zum Rand des Kreises an.

Muss eine 32-Bit-Ganzzahl sein (von -2147483648 (-231) bis 2147483647 (231-1)). Der Wert sollte zwischen 0 und 2.147.483.647 (einschließlich) liegen.

<Name: Wort>[Nur Bedrock Edition]

Gibt den Namen eines Ticking-Bereichs an, führt die Funktion aus, wenn dieser hinzugefügt wird.
Es muss entweder ein einzelnes Wort (ohne Leerzeichen) oder eine Zeichenfolge in Anführungszeichen sein.

Befehls-Argumente[Bearbeiten | Quelltext bearbeiten]

clear

Gibt die zu löschende Funktion an. Sollte eine Namensraum-ID (minecraft: kann nicht weggelassen werden) oder ein Funktions-Alias (minecraft: kann nicht weggelassen werden) sein.
Muss eine Zeichenfolge sein. Und es ist eine gierige Phrase (nimmt den Rest des Befehls als Zeichenfolgenargument).

append

append ermöglicht mehrere Zeitpläne zu unterschiedlichen Zeiten.

replace

replace ersetzt einfach die geplante Zeit der aktuellen Funktion (Standard).

Eigenschaften[Bearbeiten | Quelltext bearbeiten]

Führt man den Befehl als Spieler aus, so erhält man im Chat die Nachricht, wie groß die Verzögerung ist und wann zur absoluten Spielzeit die Funktion ausgeführt wird.

Hat man als Spieler eine geplante verzögerte Ausführung einer Funktion gelöscht, so erhält man im Chat die Nachricht, welche Funktion (ID als Namen) entfernt wurde.

Führt man den Befehl kurz hintereinander aus, mit großer Verzögerung, so wird die vorherige Verzögerung durch die aktuelle überschrieben. Die Funktion wird dadurch nicht doppelt ausgeführt.

Wenn man den Befehl mit clear ausführt, bevor der Zeitpunkt erreicht ist, bei der eine vorher geplante Funktion ausgeführt werden sollte, so wird der Aufruf der geplanten Funktion unterdrückt.

Ausgabe[Bearbeiten | Quelltext bearbeiten]

BefehleAuslöserJava EditionBedrock Edition
BeliebigDer Befehl ist unvollständig oder ein Argument wurde nicht korrekt angegeben. Unparsbar Unparsbar
Die angegebene Funktion oder das angegebene Funktions-Alias existiert nicht. Fehlschlag Fehlschlag
/schedule function ...<Zeit> ist 0. N/A
Angegebene <Funktion> existiert nicht.
/schedule clear ...Zeitplan für <Funktion> kann nicht gefunden werden.
/schedule on_area_loaded add <von: x y z> <bis: x y z> ...
/schedule on_area_loaded add circle ...
Mehr als 2.147.483.647 Chunks sind angegeben. N/A Fehlschlag
/schedule on_area_loaded circle add ...Radius: int ist kleiner als 0.
Beliebigerfolgreich

Rückgabe[Bearbeiten | Quelltext bearbeiten]

BefehleEditionSituationErfolgszähler/execute store success .../execute store result ...
BeliebigJava EditionBei Fehlschlag000
/schedule function ...Bei Erfolg11Das Spiel-Tick, das die Funktion bei Modulo 2147483647 ausführen soll
/schedule clear ...Bei Erfolg11die Anzahl der Zeitpläne, die gelöscht werden.
Bedrock EditionBei Fehlschlag0N/AN/A
Bei Erfolg1N/AN/A

Beispiele[Bearbeiten | Quelltext bearbeiten]

Befehl Beispiel
/schedule ... replace /schedule function wiki:zeitplan 30t
Führt die Funktion "wiki:zeitplan" nach 30 Ticks aus. Ohne hierbei explizit replace anzugeben.
/schedule function wiki:minute 30s replace
Führt die Funktion "wiki:minute" in einer halben Minute nach ausführen des Befehls aus.
/schedule ... append /schedule function wiki:tick 150t append
Plant die Funktion "wiki:tick" nach 150 Ticks ein, hierbei wird eine bereits in Planung liegende Funktion "wiki:tick" nicht ersetzt.
/schedule function wiki:zusatz 3s append
/schedule function wiki:zusatz 5s append
/schedule function wiki:zusatz 8s append

Es werden gleich drei Funktionen "wiki:zusatz" zeitlich voneinander verzögert eingeplant. Sie werden nach 3, 5 und 8 Sekunden ausgeführt.

/schedule clear /schedule clear wiki:zeitplan
Die eingeplante Funktion "wiki:zeitplan" wird aus der Einplanung entfernt, sodass sie nicht mehr ausgeführt wird.
/schedule ... schedule /schedule function wiki:zyklus 5s
Befindet sich in der Funktion "wiki:zyklus" der gleiche Befehl /schedule function wiki:zyklus 5s den man auch zum Einplanen der Funktion ausführt, hat man einen Zyklus vorliegen. Die Funktion wird nach 5 Sekunden ausgeführt, wobei sie sich selbst erneut für 5 Sekunden einplant. Dies endet nicht, es sei denn man nutzt /schedule clear wiki:zyklus.

Geschichte[Bearbeiten | Quelltext bearbeiten]

Versionsgeschichte der Java Edition
Vollversion 1.14 (18w43a)
  • Der Befehl /schedule wird hinzugefügt
Vollversion 1.15 (19w38a)
  • Neue Syntax /schedule ... [append|replace]
  • Neuer Parameter /schedule clear <Funktion>, um existierende, verzögert auszuführende, Funktionen zu entfernen.