Das offizielle Minecraft Wiki twittert hier: Wiki-Twitter  –  Chatte im Wiki-Discord  – Noch keinen Server gefunden? Es gibt einen Wiki-Server

Befehl/testfor

Aus Minecraft Wiki
Wechseln zu: Navigation, Suche
Dieser Artikel enthält Inhalte über Funktionen, die möglicherweise in der zukünftigen Version 1.13 entfernt werden.
Diese Funktionen sind noch in der aktuellen Vollversion 1.12.2, jedoch nicht mehr in einem zukünftigen Update enthalten.
Nutzbarkeit

 Spieler

nein

 Cheat

ja

 Server

ja

 Befehlsblock

ja

/testfor prüft, ob ein Objekt (Spieler, Kreatur, Fahrzeug etc.) eine Bedingung erfüllt.

Syntax[Bearbeiten]

/testfor <Spieler oder Objekt> [<NBT-Daten>]

  • Spieler oder Objekt ist der Name eines Spielers oder eine Zielauswahl. Wenn Spieler oder Objekt der Name eines Spielers ist, ist die Testbedingung erfüllt, wenn der Spieler im Spiel ist.
  • NBT-Daten sind weitere Daten des Objektes im NBT-Format. NBT-Daten funktionieren nur zusammen mit Spieler oder Objekt. /testfor funktioniert im Gegensatz zu anderen Befehlen nur, wenn in den NBT-Daten alle Zahlen das korrekte Datentyp-Kennzeichen haben und alle ID-Namen den minecraft-Namensraum. Eine ausführliche Beschreibung der NBT-Daten steht hier. Das Inventar eines Spielers kann mit oder ohne Slot-Eigenschaft getestet werden. Mit Slot muss der Gegenstand in einem bestimmten Slot sein, ohne Slot muss er nur irgendwo im Spielerinventar sein.

Zur Eingabe eines Befehls siehe Befehl#Eingabe.

Eigenschaften[Bearbeiten]

Falls der Befehl in einem Befehlsblock hinterlegt ist, gibt dieser im Erfolgsfall ein Signal über einen Redstone-Komparator aus. Ansonsten erscheint für jedes gefundene Objekt eine Meldung im Chat (sofern nicht per Befehl /gamerule deaktiviert)

Beispiele[Bearbeiten]

/testfor oyo123
  Von einem Spieler verwendet zeigt das an, ob der Spieler oyo123 auf dem Server anwesend ist - nützlich insbesondere, wenn mehr Spieler auf dem Server anwesend sind, als in der Spielerauflistung angezeigt werden kann. In einem Befehlsblock eingegeben sendet dieser nur dann ein Signal aus, wenn oyo123 auf dem Server anwesend ist. Das Signal könnte den Zugang zu einem Bereich öffnen, der von oyo123 überwacht wird (was er nur kann, wenn er anwesend ist). Eine andere Schreibweise für denselben Befehl wäre /testfor @a[name=oyo123].

/testfor @p[r=3,team=Crafter]
  In einem Befehlsblock eingegeben sendet dieser ein Signal aus, wenn der Spieler, der in einem Umkreis von 3 Blöcken dem Befehlsblock am nächsten steht, zum Team "Crafter" gehört. Wenn der Befehlsblock z.B. zwischen einem Knopf und einer Eisentür geschaltet ist, kann die Tür nur von Teammitgliedern geöffnet werden, oder wenn ein Teammitglied in der Nähe steht.

/testfor @p[x=100,y=65,z=-80,r=5,score_Ziel15=1]
  In einem Befehlsblock eingegeben sendet dieser ein Signal aus, wenn der Spieler, der in einem Umkreis von 5 Blöcken der Position 100/65/-80 am nächsten steht, das mit dem Befehl /scoreboard definierte Ziel15 erreicht hat. Mit der Positionsangabe kann die Position des Spielers unabhängig von der Position des Befehlsblocks geprüft werden.

/testfor @a {playerGameType:1}
  Prüft alle Spieler und liefert ein Signal, wenn mindestens einer im Kreativmodus ist.

/testfor @p {Inventory:[{id:"minecraft:diamond_sword"}]}
  Prüft den nächstgelegenen Spieler und liefert ein Signal, wenn er irgendwo in seinem Inventar ein Diamantschwert hat. Der ID-Name muss hier korrekt geschrieben werden, d.h. mit dem Namensraum "minecraft:".

/testfor @p {Inventory:[{Slot:6b,id:"minecraft:diamond_sword"}],SelectedItemSlot:6}
  Prüft den nächstgelegenen Spieler und liefert ein Signal, wenn er in seinem Inventar in der Schnellzugriffsleiste in Slot 7 (intern beginnt die Zählung mit 0, daher "Slot:6b", wobei das "b" einen Byte-Wert kennzeichnet) ein Diamantschwert hat und diesen Slot auch ausgewählt hat ("SelectedItemSlot:6" steht ohne "b", weil es ein Int-Wert ist). Der ID-Name muss hier korrekt geschrieben werden, d.h. mit dem Namensraum "minecraft:".

/testfor @p {SelectedItem:{id:"minecraft:diamond_sword"} }
  Prüft den nächstgelegenen Spieler und liefert ein Signal, wenn er ein Diamantschwert in der Hand hält.

/testfor @p {SelectedItem:{} }
  Prüft den nächstgelegenen Spieler und liefert ein Signal, wenn er irgendeinen Gegenstand in der Hand hält.

/testfor @p {Inventory:[{Slot:1b}]}
  Prüft den nächstgelegenen Spieler und liefert ein Signal, wenn er in Slot 1 seines Inventars (das ist der zweite Schnellzugriffsleistenplatz, die Zählung beginnt bei 0) irgendeinen Gegenstand hat.

/testfor @e[type=chicken,r=20] {OnGround:0b}
  Prüft alle Hühner (@e[type=chicken]) im Umkreis von 20 Blöcken (r=20), ob mindestens eines davon in der Luft ist ("OnGround:0b", wobei "b" den Byte-Wert kennzeichnet).

/testfor @e[type=commandblock_minecart,r=5] {Command:"/testfor @p[r=15]"}
  Prüft, ob sich eine Befehlsblocklore im Umkreis von fünf Blöcken von der Befehlsquelle, mit dem Befehl /testfor @p[r=15] ausgestattet, befindet. Der Befehl in der Befehlsblocklore sucht nach einem Spieler in einem Radius von 15 Metern.

/testfor @a[r=5,name=oyo123]
  Prüft, ob sich in einem Umkreis von 5 Blöcken der Spieler oyo123 befindet. Diese Prüfung kann zwischen einen Signalgeber und einem Signalempfänger geschaltet werden, damit nur ein bestimmter Spieler eine Funktion auslösen kann, z. B. eine Tür öffnen.

/testfor @p {DataVersion:1139}
  Erkennt, ob der Spieler die Welt in der Vollversion 1.12 geöffnet hat. Jedoch kann damit nicht erkannt werden, ob der Spieler eine höhere oder niedrigere Version spielt, falls der Befehl fehlschlägt.

Geschichte[Bearbeiten]

Promotional Content