Vollversion | |||||||||
---|---|---|---|---|---|---|---|---|---|
1.15 (19w38a) |
|
||||||||
1.16 (20w12a) |
|
||||||||
1.19 |
|
||||||||
1.19.3 (23w06a) |
|
||||||||
1.20 (23w18a) |
|
||||||||
1.20.5 |
|
||||||||
1.21 |
|
||||||||
1.21.2 |
|
||||||||
1.21.5 |
|
Prädikate: Unterschied zwischen den Versionen
(Neu: Aus dem englischen Wiki kopiert) Markierung: Neuanlage |
(25w10a) |
||
(33 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Exklusiv|Java}} |
|||
{{Unvollständig|Datenquelle ergänzen und Datenstruktur übersetzen}} |
|||
'''Prädikate''' sind Bedingungen die ein <code>true</code> (wahr) oder <code>false</code> (falsch) zurückgeben. Sie sind JSON-Strukturen, die an mehreren verschiedenen Stellen in [[Datenpaket]]en zu finden sind. Sie werden mit verschiedenen Mitteln aufgerufen, um Bedingungen innerhalb der Welt zu prüfen. |
|||
'''Prädikate''' beinhalten Eigenschaften für Bedingungen die man im Selektor der [[Zielauswahl]] <code>@e[predicate=...]</code> oder mit dem {{b|/execute if{{!}}unless predicate ...}} verwenden kann. Sie werden in Datenpaketen angelegt und es gibt keine Standard-Prädikatdateien, man kann sich also keine Vorlage holen um eigene zu erstellen, stattdessen benötigt man die Datenstruktur. |
|||
'''Prädikatdateien''' sind eigenständige Datenpaketdateien, die ein oder mehrere Prädikate enthalten. Prädikate können auch auf andere Weise definiert werden. |
|||
== Datenquelle == |
|||
''Fehlt'' |
|||
Dieser Artikel beschreibt, wie Prädikate definiert und aufgerufen werden, und beschreibt auch die JSON-Struktur eines Prädikats. |
|||
<!-- Das Inhaltsverzeichnis (TOC = Table Of Content) wird hier ohne führende Kapitelnummerierung und ohne Auflistung der Abschnitte mit 4 (oder mehr) Gleichzeichen angezeigt. --> |
|||
<div class="toc-nonumbers toc-hidelevel3">__TOC__</div> |
|||
== Definition == |
|||
{{HA|Datenpaket}} |
|||
<div class="treeview"> |
|||
* {{JSON|ordner|<''Name des Datenpakets''>}} |
|||
** {{JSON|datei|pack.mcmeta}}: Die [[Datenpaket#Definitionsdatei|Definitionsdatei]]. |
|||
** {{JSON|ordner|data}} |
|||
*** {{JSON|ordner|<''namensraum''>}} |
|||
**** {{JSON|ORDNER|predicate}}: Eigene Prädikate. |
|||
***** {{JSON|datei|<''datei''>.json}}: Eine Prädikat-Datei. |
|||
</div> |
|||
== Verwendung == |
|||
Prädikate und Prädikatdateien können auf verschiedene Weise von anderen Datenpaketdateien aus aufgerufen werden: |
|||
=== Befehle === |
|||
[[Befehl]]e oder [[Funktion]]en können Prädikatdateien auf zwei Arten aufrufen: |
|||
* [[Zielauswahl]]: Das Selektorargument <code>@e[predicate=...]</code> prüft Prädikatdateien als Filter für die Objektauswahl. Die Prädikatdatei wird einmal pro Objekt aufgerufen, die gefiltert werden muss, und zwar jedes Mal am Standort des Objekt. |
|||
* {{b|/execute}}: Ein Unterbefehl, <code>/execute if predicate</code>, kann eine Prädikatdatei aufrufen, um entweder ein Ergebnis zurückzugeben oder zu entscheiden, ob mit einer Unterbefehlskette fortgefahren werden soll. Die Prädikatdatei wird einmal an der aktuellen kontextuellen Ausführungsposition aufgerufen. |
|||
=== Andere Prädikate === |
|||
Der Bedingungstyp <code>minecraft:reference</code> ruft eine Prädikatdatei auf und gibt das Ergebnis an den Aufrufer zurück. |
|||
=== Vorhandensein in anderen Dateien === |
|||
Zusätzlich zu Prädikatdateien werden Prädikate selbst an anderen Stellen in anderen Datenpaketdateien verwendet, wie z. B. [[Fortschrittsdefinition|Fortschritte]], [[Beutetabellen]] und [[Verzauberungsdefinition|Verzauberungen]]. |
|||
== Datenstruktur == |
== Datenstruktur == |
||
=== Prädikatbasisdaten === |
|||
<div class="treeview"> |
<div class="treeview"> |
||
* {{NBT|compound}} |
* {{NBT|compound}} Die namenlose Wurzel-Eigenschaft. |
||
** {{NBT|string|condition}}: |
** {{NBT|string|condition}}: Die Bedingungen. |
||
** Teile der Bedingung, siehe unten. |
|||
** Other parts of the condition, specified below. |
|||
</div> |
</div> |
||
=== Liste der Prädikate === |
|||
The possible values for {{NBT|string|condition}} and associated extra contents: |
|||
<div style="column-count:4> |
|||
*{{GL|redstone-verstärker|all_of|link=#all_of}} |
|||
*{{GL|redstone-komparator|any_of|link=#any_of}} |
|||
*{{BL|eichenholztreppe|block_state_property|link=#block_state_property}} |
|||
*{{GL|eisenaxt|damage_source_properties|link=#damage_source_properties}} |
|||
*{{GL|diamantstiefel|enchantment_active_check|link=#enchantment_active_check}} |
|||
*{{OL|zombie|entity_properties|link=#entity_properties}} |
|||
*{{OL|shulker|entity_scores|link=#entity_scores}} |
|||
*{{BL|redstone-fackel|inverted|link=#inverted}} |
|||
*{{GL|totem-der-unsterblichkeit|killed_by_player|link=#killed_by_player}} |
|||
*{{OL|verwüster|location_check|link=#location_check}} |
|||
*{{GL|holzhacke|match_tool|link=#match_tool}} |
|||
*{{BL|werfer|random_chance|link=#random_chance}} |
|||
*{{GL|verzaubertes-buch|random_chance_with_enchanted_bonus|link=#random_chance_with_enchanted_bonus}} |
|||
*{{BL|endertruhe|reference|link=#reference}} |
|||
*{{BL|tnt|survives_explosion|link=#survives_explosion}} |
|||
*{{BL|truhe|table_bonus|link=#table_bonus}} |
|||
*{{GL|uhr|time_check|link=#time_check}} |
|||
*{{GL|erfahrungsfläschchen|value_check|link=#value_check}} |
|||
*{{GL|pulverschneeeimer|weather_check|link=#weather_check}} |
|||
</div> |
|||
==== all_of (Und-Verknüpfung) ==== |
|||
{{Anker|all_of|Und-Verknüpfung}} |
|||
<div class="treeview"> |
<div class="treeview"> |
||
* ''' |
* '''all_of''' - Verbindet die Bedingungen der Parameter <code>terms</code> als ein "UND". |
||
**{{NBT|list|terms}}: |
**{{NBT|list|terms}}: Eine Liste der Bedingungen für die Teilnahme mit "UND". |
||
***{{NBT|compound}} |
***{{NBT|compound}} Eine Bedingung. |
||
</div> |
|||
==== any_of (Oder-Verknüpfung) ==== |
|||
* '''block_state_property''' - Check properties of a [[block state]]. |
|||
{{Anker|any_of|Oder-Verknüpfung}} |
|||
** {{NBT|string|block}}: A block ID. Test will fail if the block doesn't match. |
|||
<div class="treeview"> |
|||
** {{NBT|compound|properties}}: ''(Optional)'' A map of block property names to values. All values are strings. Test will fail if the block doesn't match. |
|||
* '''any_of''' - Verbindet die Bedingungen der Parameter <code>terms</code> als ein "ODER". |
|||
**{{NBT|list|terms}}: Eine Liste der Bedingungen für die Teilnahme mit "ODER". |
|||
***{{NBT|compound}} Eine Bedingung. |
|||
</div> |
|||
==== block_state_property (Blockzustandseigenschaften) ==== |
|||
* '''damage_source_properties''' - Check properties of damage source. |
|||
{{Anker|block_state_property|Blockzustandseigenschaften}} |
|||
**{{NBT|boolean|is_explosion}} |
|||
<div class="treeview"> |
|||
**{{NBT|boolean|is_projectile}} |
|||
* '''block_state_property''' - Überprüft den [[Blockzustand]]. |
|||
**{{NBT|boolean|is_fire}} |
|||
** {{NBT|string|block}}: Eine Block-Namens-ID. Der Test wird fehlschlagen wenn der Block nicht die entsprechende Namens-ID hat. |
|||
**{{NBT|boolean|is_lightning}} |
|||
** {{NBT|compound|properties}}: ''(Optional)'' Eine Zuordnung von Blockzuständen mit Variablen. Alle Variablen sind Strings. Der Test wird fehlschlagen wenn der Block nicht die entsprechenden Namens-IDs hat. |
|||
**{{NBT|boolean|is_magic}} |
|||
*** {{NBT|string|''name''}}: Ein Blockzustand und ein exakter Wert. Der Wert ist eine Zeichenfolge. |
|||
**{{NBT|boolean|bypasses_magic}}: This is only true for starvation |
|||
*** {{NBT|compound|''name''}}: Ein Blockzustandsname und ein passender Bereichswert. |
|||
**{{NBT|boolean|bypasses_invulnerability}}: This is only true for void damage |
|||
**{{NBT| |
**** {{NBT|string|min}}: Der Mindestwert. |
||
**** {{NBT|string|max}}: Der Höchstwert. |
|||
**{{NBT|compound|source_entity}}: The source cause of the damage. For example if a skeleton shoots a player with an arrow, the skeleton is the source entity. |
|||
</div> |
|||
**{{NBT|compound|direct_entity}}: The direct cause of the damage. For example if a skeleton shoots a player with an arrow, the arrow is the direct entity. |
|||
==== damage_source_properties (Schadensquelleneigenschaften) ==== |
|||
* '''entity_properties''' - Test properties of an entity. |
|||
{{Anker|damage_source_properties|Schadensquelleneigenschaften}} |
|||
** {{NBT|string|entity}}: Specifies the entity to check for the condition. Set to <code>this</code> to use the entity that died or the player that gained the advancement, opened the container or broke the block, <code>killer</code> for the killer, or <code>killer_player</code> for a killer that is a player. |
|||
<div class="treeview"> |
|||
** {{NBT|compound|predicate}}: Predicate applied to location, uses same structure as advancements. |
|||
* '''damage_source_properties''' - Überprüft die Eigenschaften der [[Schaden]]squelle. |
|||
*** {{NBT|compound|flags}}: Predicate Flags to be checked. |
|||
** {{Lade Daten|Bedingung/Schadensart|nbt=predicate:|Prädikat angewendet auf die Schadensart, nutzt dieselbe Struktur wie Fortschritte.}} |
|||
**** {{NBT|bool|is_on_fire}}: Test whether the entity is or is not on fire. |
|||
</div> |
|||
**** {{NBT|bool|is_sneaking}}: Test whether the entity is or is not sneaking. |
|||
**** {{NBT|bool|is_sprinting}}: Test whether the entity is or is not sprinting. |
|||
**** {{NBT|bool|is_swimming}}: Test whether the entity is or is not swimming. |
|||
**** {{NBT|bool|is_baby}}: Test whether the entity is or is not a baby variant. |
|||
==== enchantment_active_check (Verzauberungsüberprüfung) ==== |
|||
* '''entity_scores''' - Test the [[scoreboard]] scores of an entity. |
|||
{{Anker|enchantment_active_check|Verzauberungsüberprüfung}} |
|||
** {{NBT|string|entity}}: Specifies the entity to check for the condition. Set to <code>this</code> to use the entity that died or the player that gained the advancement, opened the container or broke the block, <code>killer</code> for the killer, or <code>killer_player</code> for a killer that is a player. |
|||
<div class="treeview"> |
|||
** {{NBT|compound|scores}}: Scores to check. All specified scores must pass for the condition to pass. |
|||
* '''enchantment_active_check''' - Überprüft, ob die [[Verzauberung]] aktiv war. Erfordert den aktiven Status der Verzauberung, der vom Beutekontext bereitgestellt wird, und schlägt immer fehl, wenn er nicht bereitgestellt wird. Es ist daher nur vom Beutekontext <code>enchanted_location</code> aus verwendbar. |
|||
*** {{NBT|int|A score}}: Key name is the objective while the value is the exact score value required for the condition to pass. |
|||
** {{NBT|bool|active}}: Ob geprüft werden soll, ob eine aktive (<code>true</code>) oder inaktive (<code>false</code>) Verzauberung vorliegt. |
|||
*** {{NBT|compound|A score}}: Key name is the objective while the value specifies a range of score values required for the condition to pass. |
|||
</div> |
|||
**** {{NBT|int|min}}: Minimum score. |
|||
**** {{NBT|int|max}}: Maximum score. |
|||
==== entity_properties (Objekteigenschaften) ==== |
|||
* '''inverted''' - Inverts condition from parameter term. |
|||
{{Anker|entity_properties|Objekteigenschaften}} |
|||
** {{NBT|compound|term}}: The condition to be negated. |
|||
<div class="treeview"> |
|||
* '''entity_properties''' - Testeigenschaften einer [[Kreatur]] oder [[Objekt]]. |
|||
** {{NBT|string|entity}}: Gibt die Kreatur an, die geprüft werden soll für die Bedingung. Wenn es auf <code>this</code> gesetzt ist, um die Kreatur zu verwenden, die gestorben ist, oder den Spieler, der den Fortschritt erlangt hat, den Behälter geöffnet oder den Block abgebaut hat, <code>killer</code> für den Killer oder <code>killer_player</code> für einen Killer, der ein Spieler ist . |
|||
** {{Lade Daten|Bedingung/Wesen|nbt=predicate:|Prädikat angewendet auf die Kreatur, nutzt dieselbe Struktur wie Fortschritte.}} |
|||
</div> |
|||
==== entity_scores (Objekt-Punktestände) ==== |
|||
* '''killed_by_player''' - Test if a <code>killer_player</code> entity is available. |
|||
{{Anker|entity_scores|Objekt-Punktestände}} |
|||
** {{NBT|bool|inverse}}: If true, the condition passes if <code>killer_player</code> is ''not'' available. |
|||
<div class="treeview"> |
|||
* '''entity_scores''' - Überprüft den [[Befehl/scoreboard|Punktestand]] eines Objekts. |
|||
** {{NBT|string|entity}}: Gibt das Objekt an, das überprüft werden soll für die Bedingung. Wenn <code>this</code> angegeben ist, um das Objekt zu verwenden, die gestorben ist, oder den Spieler, der den Fortschritt erlangt hat, den Behälter geöffnet oder den Block abgebaut hat, <code>killer</code> für den Killer oder <code>killer_player</code> für einen Killer, der ein Spieler ist. |
|||
** {{NBT|compound|scores}}: Alle Punktestände die überprüft werden sollen. Alle spezifischen Punktestände müssen für die Bedingung passen um zu bestehen. |
|||
*** {{NBT|compound|Ein Punkte-Ziel}}: Schlüsselname ist das Punkte-Ziel (objective) solange die Variablen speziell einen Bereich von score-Variablen für die Bedingung benötigen um zu bestehen. |
|||
**** {{NBT|compound}}{{NBT|int|min}}: Mindestpunktzahl. |
|||
**** {{NBT|compound}}{{NBT|int|max}}: Höchstpunktzahl. |
|||
*** {{NBT|int|Ein Punkte-Ziel}}: Schlüsselname ist das Punkte-Ziel (objective) solange die Variablen im exakten Bereich liegen, wie die Bedingung es vorgibt. |
|||
</div> |
|||
==== inverted (Invertierung) ==== |
|||
* '''location_check''' - Checks if the current location matches. |
|||
{{Anker|inverted|Invertierung}} |
|||
** {{NBT|int|offsetX}} - optional offsets to location |
|||
<div class="treeview"> |
|||
** {{NBT|int|offsetY}} - optional offsets to location |
|||
* '''inverted''' - Negiert die Bedingung im Parameter <code>term</code>. |
|||
** {{NBT|int|offsetZ}} - optional offsets to location |
|||
** {{NBT|compound| |
** {{NBT|compound|term}}: Die zu negierende Bedingung. |
||
</div> |
|||
==== killed_by_player (Tötung durch Spieler) ==== |
|||
* '''match_tool''' - Checks tool. |
|||
{{Anker|killed_by_player|Tötung durch Spieler}} |
|||
** {{NBT|compound|predicate}}: Predicate applied to item, uses same structure as advancements. |
|||
<div class="treeview"> |
|||
* '''killed_by_player''' - Testet ob <code>attacking_player</code>-Spieler verfügbar ist. |
|||
</div> |
|||
==== location_check (Standortüberprüfung) ==== |
|||
* '''random_chance''' - Test if a random number 0.0–1.0 is less than a specified value. |
|||
{{Anker|location_check|Standortüberprüfung}} |
|||
** {{NBT|float|chance}}: Success rate as a number 0.0–1.0. |
|||
<div class="treeview"> |
|||
* '''location_check''' - Überprüft, ob der aktuelle Standort übereinstimmt. |
|||
** {{NBT|int|offsetX}} - Optional Versatz des Standorts. |
|||
** {{NBT|int|offsetY}} - Optional Versatz des Standorts. |
|||
** {{NBT|int|offsetZ}} - Optional Versatz des Standorts. |
|||
** {{Lade Daten|Bedingung/Standort|nbt=predicate:|Prädikat angewendet auf Standort, nutzt dieselbe Struktur wie Fortschritte.}} |
|||
</div> |
|||
==== match_tool (Werkzeugüberprüfung) ==== |
|||
* '''random_chance_with_looting''' - Test if a random number 0.0–1.0 is less than a specified value, affected by the level of [[Looting]] on the <code>killer</code> entity. |
|||
{{Anker|match_tool|Werkzeugüberprüfung}} |
|||
** {{NBT|float|chance}}: Base success rate. |
|||
<div class="treeview"> |
|||
** {{NBT|float|looting_multiplier}}: Looting adjustment to the base success rate. Formula is <code>chance + (looting_level * looting_multiplier)</code>. |
|||
* '''match_tool''' - Überprüft ein [[Werkzeug]]. |
|||
** {{Lade Daten|Bedingung/Gegenstand|nbt=predicate:|Prädikat wird auf einen Gegenstand angewendet, verwendet dieselbe Datenstruktur wie bei Fortschritten.}} |
|||
</div> |
|||
==== random_chance (Zufallschance) ==== |
|||
* '''reference''' - Test if another referred condition (predicate) passes. |
|||
{{Anker|random_chance|Zufallschance}} |
|||
** {{NBT|string|name}}: The [[Namensraum]] ID of the condition (predicate) referred to. Cyclic reference will cause a parsing failure. |
|||
<div class="treeview"> |
|||
* '''random_chance''' - Prüft, ob eine Zufallszahl zwischen 0.0 und 1.0 kleiner als ein angegebener Wert ist. |
|||
** {{NBT|float}}{{NBT|compound|chance}}: Erfolgsquote als Zahl 0.0–1.0. |
|||
</div> |
|||
==== random_chance_with_enchanted_bonus (Zufallschance mit verzauberter Beute) ==== |
|||
* '''survives_explosion''' - Returns true with 1/explosion radius probability. |
|||
{{Anker|random_chance_with_enchanted_bonus|Zufallschance mit verzauberter Beute}} |
|||
<div class="treeview"> |
|||
* '''random_chance_with_enchanted_bonus''' - Generiert eine Zufallszahl zwischen 0,0 und 1,0 und prüft, ob sie kleiner ist als der Wert, der anhand der Stufe einer bestimmten Verzauberung ermittelt wurde. Erfordert eine <code>attacker</code>-Kreatur, die durch den [[Beutekontext]] bereitgestellt wird. Wenn sie nicht bereitgestellt wird, wird die Verzauberungsstufe als 0 betrachtet. |
|||
** {{NBT|float|unenchanted_chance}}: Die Erfolgsrate, die verwendet werden soll, wenn die Verzauberung nicht vorhanden ist; 0,0–1,0. |
|||
** {{NBT|float}}{{NBT|compound|enchanted_chance}}: [[Verzauberungsdefinition#Stufenbasierter Wert|Stufenbasierter Wert]]. Die Erfolgsrate basierend auf dem Level, wenn die Verzauberung vorhanden ist; 0,0–1,0. |
|||
** {{NBT|string|enchantment}}: Eine Verzauberung (eine ID). Die Verzauberung, deren Level für die Wahrscheinlichkeitsberechnung verwendet werden soll. Wenn die Verzauberung nicht vorhanden ist, wird <code>0</code> als Level verwendet. |
|||
</div> |
|||
==== reference (Verknüpfung) ==== |
|||
* '''table_bonus''' - Passes with probability picked from table, indexed by enchantment level. |
|||
{{Anker|reference|Verknüpfung}} |
|||
** {{NBT|int|enchantment}}: Id of enchantment. |
|||
<div class="treeview"> |
|||
** {{NBT|list|chances}}: List of probabilities for enchantment level, indexed from 0. |
|||
* '''reference''' - Überprüft ob eine andere referenzierte Bedingung (<code>predicate</code>) besteht. |
|||
** {{NBT|string|name}}: Der [[Namensraum]] ID von der Bedingung (<code>predicate</code>) referenziert wurde. Zyklisch referenziert führt zu einen Fehler. |
|||
</div> |
|||
==== survives_explosion (Explosionsüberleben) ==== |
|||
* '''time_check''' - Checks the current time |
|||
{{Anker|survives_explosion|Explosionsüberleben}} |
|||
** {{NBT|int|value}}: The time value in ticks. |
|||
<div class="treeview"> |
|||
* '''survives_explosion''' - Gibt <code>true</code> mit einer Wahrscheinlichkeit von <code>1/Explosionsradius</code> zurück. |
|||
</div> |
|||
==== table_bonus (Beutetabellenbonus) ==== |
|||
{{Anker|table_bonus|Beutetabellenbonus}} |
|||
<div class="treeview"> |
|||
* '''table_bonus''' - Besteht mit der Wahrscheinlichkeit ausgewählt aus Beutetabelle, ausgehend von Verzauberungsstufe. |
|||
** {{NBT|string|enchantment}}: ID der Verzauberung. |
|||
** {{NBT|list|chances}}: Liste der Wahrscheinlichkeiten für die Verzauberungsstufe, ausgehend von 0. |
|||
</div> |
|||
==== time_check (Zeitüberprüfung) ==== |
|||
{{Anker|time_check|Zeitüberprüfung}} |
|||
<div class="treeview"> |
|||
* '''time_check''' - Prüft die aktuelle Uhrzeit. |
|||
** {{NBT|compound|value}} |
** {{NBT|compound|value}} |
||
*** {{NBT|int|max}}: |
*** {{NBT|compound}}{{NBT|int|max}}: Maximalwert. |
||
*** {{NBT|int|min}}: |
*** {{NBT|compound}}{{NBT|int|min}}: Minimalwert. |
||
** {{NBT|int|value}}: Die Zeit in Ticks. |
|||
** {{NBT|int|period}}: If present, time will be modulo-divided by this value (for example, if set to 24000, value will operate on a time period of days). |
|||
** {{NBT|int|period}}: Falls vorhanden wird die Zeit durch Modulo-Division (%= , Rest der Division von) um diesen Wert (Als Beispiel, falls auf 24000 gesetzt wurde, Wert wird auf eine Zeit gesetzt in Periode von Minecraft-Tagen). |
|||
</div> |
|||
==== value_check (Wertüberprüfung) ==== |
|||
* '''tool_enchantment''' - Test the tool's enchantments. |
|||
{{Anker|value_check|Wertüberprüfung}} |
|||
** {{NBT|list|enchantments}}: List of enchantments the tool must have. |
|||
<div class="treeview"> |
|||
*** {{NBT|compound}} An enchantment. |
|||
* '''value_check''' - Prüft einen Wertebereich. |
|||
**** {{NBT|string|enchantment}}: The enchantment [[Namensraum]] ID. |
|||
** {{NBT|int}}{{NBT|compound|value}}: [[Beutetabellen#Zahlenanbieter|Darstellung von Wertebereichen]]. Der Wert, der überprüft werden soll. |
|||
**** {{NBT|compound|levels}}: The level this enchantment has to be. |
|||
** {{NBT|compound|range}}: Der Bereich, in dem der Wert geprüft wird. |
|||
*** {{NBT|int}}{{NBT|compound|min}}: Minimal-Wert. |
|||
*** {{NBT|int}}{{NBT|compound|max}}: Maximal-Wert. |
|||
** {{NBT|int|range}}: Der genaue Wert, der überprüft werden soll. |
|||
</div> |
|||
==== weather_check (Wetterüberprüfung) ==== |
|||
* '''weather_check ''' - Checks for a current weather state |
|||
{{Anker|weather_check|Wetterüberprüfung}} |
|||
** {{NBT|boolean|raining}}: If true, the condition evaluates to true only if it's raining. |
|||
<div class="treeview"> |
|||
** {{NBT|boolean|thundering}}: If true, the condition evaluates to true only if it's thundering. |
|||
* '''weather_check ''' - Prüft auf einen aktuellen [[Wetter]]zustand. |
|||
** {{NBT|boolean|raining}}: Wenn <code>true</code>, wird die Bedingung nur dann als <code>true</code> ausgewertet, wenn es regnet. |
|||
** {{NBT|boolean|thundering}}: Wenn <code>true</code>, wird die Bedingung nur dann als <code>true</code> ausgewertet, wenn es gewittert. |
|||
</div> |
</div> |
||
== Beispiele == |
|||
{|class="wikitable" |
|||
! Eigenschaft |
|||
! Beispiel |
|||
|- |
|||
| <code>entity_properties</code> |
|||
| |
|||
:<code>data/wiki/predicate/eisenhand.json</code> |
|||
<syntaxhighlight lang="json"> |
|||
{ |
|||
"condition": "minecraft:entity_properties", |
|||
"entity": "this", |
|||
"predicate": { |
|||
"equipment": { |
|||
"mainhand": { |
|||
"items": "minecraft:iron_sword" |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</syntaxhighlight> |
|||
:Überprüft ob die Kreatur ein Eisenschwert in der Hand hält. In Kombination mit den unteren Befehl wird jeder Kreatur, die ein Eisenschwert in der Hand hält, es entfernt. |
|||
:<code>/clear @e[predicate=wiki:eisenhand] minecraft:iron_sword</code> |
|||
|- |
|||
| <code>location_check</code> |
|||
| |
|||
:<code>data/wiki/predicate/hexenhuette.json</code> |
|||
<syntaxhighlight lang="json"> |
|||
{ |
|||
"condition": "minecraft:location_check", |
|||
"predicate": { |
|||
"biomes": "minecraft:swamp", |
|||
"structures": "minecraft:swamp_hut", |
|||
"dimension": "minecraft:overworld" |
|||
} |
|||
} |
|||
</syntaxhighlight> |
|||
:Überprüft ob sich die Kreatur im Sumpf, in der Boundingbox der Sumpfhütte befindet. In Kombination mit den unteren Befehl wird jeder Kreatur, außer der Hexe die sich in der Boundingbox der Sumpfhütte befindet der Statuseffekt Vergiftung gegeben. |
|||
:<code>/effect give @e[predicate=wiki:hexenhuette,type=!minecraft:witch] minecraft:poison</code> |
|||
|- |
|||
| <code>weather_check</code> |
|||
| |
|||
:<code>data/wiki/predicate/wetter.json</code> |
|||
<syntaxhighlight lang="json"> |
|||
{ |
|||
"condition": "minecraft:weather_check", |
|||
"raining": true, |
|||
"thundering": false |
|||
} |
|||
</syntaxhighlight> |
|||
:Überprüft, ob es regnet. In Kombination mit den unteren Befehlen wird das Regenwetter immer auf 1000 Sekunden gesetzt. |
|||
:<code>/execute if predicate wiki:wetter run weather rain 1000</code> |
|||
|} |
|||
== Externe Links == |
|||
*Siehe [https://misode.github.io/predicate/ misode.github.io] |
|||
== Geschichte == |
== Geschichte == |
||
{{Geschichtlich |
{{Geschichtlich |
||
|group1= {{ver|1.15|19w38a}} |
|group1= {{ver|1.15|19w38a}} |
||
|list1= *Prädikate innerhalb von [[Datenpaket]]en hinzugefügt |
|list1= *Prädikate innerhalb von [[Datenpaket]]en hinzugefügt. |
||
|group2= {{ver|1.16|20w12a}} |
|||
|list2= *Unterprädikat „<code>fishing_hook</code>“ zum Kreatur-Prädikat hinzugefügt, um die Eigenschaften des Angelhakens zu prüfen. |
|||
|group3= {{ver|1.19}} |
|||
|list3= |
|||
{{Geschichtlich |
|||
|untergruppe=1 |
|||
|group1= {{ver|version|22w11a}} |
|||
|list1= *Unter <code>location_check</code> wird das Feld <code>feature</code> in <code>structure</code> umbenannt. |
|||
|group2= {{ver|version|22w14a}} |
|||
|list2= *Die Felder <code>player</code>, <code>fishing_hook</code>, <code>lightning_bolt</code> und <code>catType</code> werden durch <code>type_specific</code> ersetzt. |
|||
*<code>type_specific</code> hat einen Feld <code>type</code> (einen von <code>player</code>, <code>fishing_hook</code>, <code>lightning_bolt</code> und <code>cat</code>) und dieselben Felder wie die entfernten Felder. |
|||
}} |
|||
|group4= {{ver|1.19.3|23w06a}} |
|||
|list4= *Die Felder <code>is_projectile</code>, <code>is_explosion</code>, <code>bypasses_armor</code>, <code>bypasses_invulnerability</code>, <code>bypasses_magic</code>, <code>is_fire</code>, <code>is_magic</code>, <code>is_lightning</code> werden aus <code>damage_source_properties</code> entfernt. |
|||
*Ein neues Array <code>tags</code> wird zu <code>damage_source_properties</code> hinzugefügt. Jeder Eintrag hat zwei Felder: |
|||
**<code>id</code>: Die ID eines Schadenstyp-Tags. |
|||
**<code>expected</code>: Ob der Schaden das Tag haben soll oder nicht, damit das Prädikat übereinstimmt. |
|||
|group5= {{ver|1.20|23w18a}} |
|||
|list5= *Bedingung <code>alternative</code> wird in <code>any_of</code> umbenannt. |
|||
*Neue Bedingung <code>all_of</code> hinzugefügt, die nur erfüllt ist, wenn alle Unterbedingungen erfüllt sind, mit derselben Syntax wie <code>any_of</code>. |
|||
|group6= {{ver|1.20.5}} |
|||
|list6= |
|||
{{Geschichtlich |
|||
|untergruppe=1 |
|||
|group1= {{ver|version|24w09a}} |
|||
|list1= *Das Prädikatformat für Gegenstände wird aktualisiert: |
|||
**Das Feld „<code>tag</code>“ wird entfernt. |
|||
**Das Feld „<code>items</code>“ unterstützt jetzt einen einzelnen Eintrag, ein mit Hash-Präfix versehenes Element-Tag oder eine Liste von Elementen. |
|||
*„<code>potion</code>“ wird in „<code>potions</code>“ umbenannt und unterstützt einen einzelnen Eintrag, ein mit Hash-Präfix versehenes Trank-Tag oder eine Liste von Tränken. |
|||
**Das Prädikat „<code>nbt</code>“ wird in „<code>custom_data</code>“ umbenannt und entspricht jetzt der Komponente „<code>minecraft:custom_data</code>“. |
|||
**Ein neues optionales Feld „<code>components</code>“ entspricht genauen Komponenten. |
|||
*Das Prädikatformat für Blöcke wird aktualisiert: |
|||
**Das Feld „<code>tag</code>“ wird entfernt. |
|||
**Das Feld „<code>blocks</code>“ unterstützt jetzt einen einzelnen Eintrag, ein mit Hash-Präfix versehenes Block-Tag oder eine Liste von Blöcken. |
|||
*Das Format für Flüssigkeits-Prädikate wird aktualisiert: |
|||
**Das Feld „<code>tag</code>“ wird entfernt. *<code>fluid</code> wird in <code>fluids</code> umbenannt und unterstützt einen einzelnen Eintrag, ein mit Hash-Präfix versehenes Fluid-Tag oder eine Liste von Fluiden. |
|||
*Das Kreaturtyp-Prädikatformat wird aktualisiert: |
|||
**Das Feld <code>type</code> unterstützt jetzt einen einzelnen Eintrag, ein mit Hash-Präfix versehenes Entity-Typ-Tag oder eine Liste von Entity-Typen. |
|||
*Das Standort-Prädikatformat wird aktualisiert: |
|||
**<code>biome</code> wird in <code>biomes</code> umbenannt und unterstützt einen einzelnen Eintrag, ein mit Hash-Präfix versehenes Biom-Tag oder eine Liste von Biomen. |
|||
**<code>structure</code> wird in <code>structures</code> umbenannt und unterstützt einen einzelnen Eintrag, ein mit Hash-Präfix versehenes Struktur-Tag oder eine Liste von Strukturen. |
|||
|group2= {{ver|version|24w10a}} |
|||
|list2= *Es wird das Kreatur-Unterprädikat <code>slots</code> hinzugefügt, die verwendet werden, um einzelne oder mehrere [[Inventarplatz|Slots]] einer beliebigen Kreatur zu prüfen. |
|||
|group3= {{ver|version|24w11a}} |
|||
|list3= *Kreatur-Unterprädikat <code>any</code> entfernt. |
|||
*Komponentenspezifische Gegenstandsprädikateigenschaften werden in ein separates Feld <code>predicates</code> verschoben. |
|||
*Das Format der [[Gegenstands-Unterprädikate]] wird aktualisiert: |
|||
**Einige Felder des Gegenstandsprädikats werden in eine Karte in einem optionalen Feld <code>predicates</code> verschoben. |
|||
**Die Felder <code>enchantments</code>, <code>stored_enchantments</code>, <code>potions</code>, <code>custom_data</code> werden jeweils in die Unterprädikate <code>minecraft:enchantments</code>, <code>minecraft:stored_enchantments</code>, <code>minecraft:potion_contents</code>, <code>minecraft:custom_data</code> verschoben. |
|||
**Das Feld <code>durability</code> wird zum Prädikat <code>damage</code> erweitert. |
|||
**Prädikate <code>enchantments</code>, <code>stored_enchantments</code>, <code>potion_contents</code>, <code>damage</code> erfordern, dass passende Komponenten vorhanden sind. |
|||
}} |
|||
|group7= {{ver|1.21}} |
|||
|list7= |
|||
{{Geschichtlich |
|||
|untergruppe=1 |
|||
|group1= {{ver|version|24w18a}} |
|||
|list1= *<code>random_chance_with_looting</code> wird in <code>random_chance_with_enchanted_bonus</code> umbenannt, das Feld <code>chance</code> wird von einem Float in einen Level-basierten Wert geändert, das Feld <code>looting_multiplier</code> wird entfernt und ein Feld <code>enchantment</code> wird hinzugefügt. |
|||
*Das Feld <code>chance</code> von <code>random_chance</code> wird von einem Float in einen Zahlenanbieter geändert. |
|||
*Ein Feld <code>can_see_sky</code> wird zu Standortprädikaten hinzugefügt. |
|||
*<code>enchantment</code> wird in den [[Gegenstands-Unterprädikate]]n <code>minecraft:enchantments</code> in <code>enchantments</code> umbenannt; akzeptiert mehrere mögliche Verzauberungen oder Aliase. |
|||
*Änderungen am Kreaturprädikat: |
|||
**Flags <code>is_on_ground</code> und <code>is_flying</code> werden zum Flags-Unterprädikat hinzugefügt. |
|||
**Unterprädikat <code>movement</code> hinzugefügt. |
|||
**Unterprädikat <code>periodic_ticks</code> hinzugefügt. |
|||
*Beutekontext-Entitäten umbenannt: <code>killer</code> umbenannt in <code>attacker</code>; <code>direct_killer</code> umbenannt in <code>direct_attacker</code>; <code>killer_player</code> umbenannt in <code>attacking player</code>. |
|||
|group2= {{ver|version|24w19a}} |
|||
|list2= *Neues Feld <code>is_direct</code> in die Bedingung <code>damage_source_properties</code> hinzugefügt. |
|||
|group3= {{ver|version|24w21a}} |
|||
|list3= *[[Gegenstands-Unterprädikate|Gegenstands-Unterprädikat]] <code>jukebox_playable</code> hinzugefügt. |
|||
*Das Feld <code>gamemode</code> des <code>player</code>-Prädikats akzeptiert eine Liste von Spielmodi statt einer einzelnen Zeichenfolge. |
|||
*Der Ordner wird von {{JSON|ordner|predicates}} zu {{JSON|ordner|predicate}} geändert. |
|||
|group4= {{ver|version|1.21-pre1}} |
|||
|list4= *Die Prädikate werden von <code>chance</code> in <code>unenchanted_chance</code> und <code>enchanted_chance</code> in der Bedingung <code>random_chance_with_enchanted_bonus</code> aufgeteilt. |
|||
}} |
|||
|group8= {{ver|1.21.2}} |
|||
|list8= |
|||
{{Geschichtlich |
|||
|untergruppe=1 |
|||
|group1= {{ver|version|24w35a}} |
|||
|list1= *Neues Kreaturunterprädikat <code>minecraft:sheep</code> hinzugefügt: <code>sheared</code> und <code>color</code>. |
|||
|group2= {{ver|version|24w36a}} |
|||
|list2= *Ein neues Feld <code>input</code> im Unterprädikat <code>player</code> wird hinzugefügt, mit dem erkannt werden kann, welche Bewegungstasten der Spieler drückt. |
|||
**Es werden <code>forward</code>, <code>backward</code>, <code>left</code>, <code>right</code>, <code>jump</code>, <code>sneak</code> und <code>sprint</code> hinzugefügt. |
|||
|group3= {{ver|version|24w37a}} |
|||
|list3= *Kreaturunterprädikat <code>minecraft:salmon</code> hinzugefügt: <code>variant</code>. |
|||
|group4= {{ver|version|24w39a}} |
|||
|list4= *Das Objektunterprädikat <code>minecraft:boat</code> wird entfernt, da es für Boote keine gesonderten Varianten-Eigenschaften mehr gibt. |
|||
}} |
|||
|group9= {{ver|1.21.5}} |
|||
|list9= |
|||
{{Geschichtlich |
|||
|untergruppe=1 |
|||
|group1= {{ver|version|25w03a}} |
|||
|list1= *Dem Kreaturprädikat wird ein neues optionales Feld hinzugefügt: <code>components</code>. |
|||
*Mehrere Kreaturprädikate werden entfernt und durch eine Kombination aus dem Prädikat <code>components</code> und unterschiedlichen Kreaturkomponenten ersetzt. |
|||
*Das Feld <code>color</code> wird aus dem Unterprädikat <code>minecraft:sheep</code> entfernt. |
|||
|group2= {{ver|version|25w07a}} |
|||
|list2= *Das Kreaturprädikat <code>stepping_on</code> kann nur dann als <code>true</code> ausgewertet werden, wenn sich die Kreatur auf dem Boden befindet. |
|||
|group3= {{ver|version|25w10a}} |
|||
|list3= *Den Blockprädikaten werden neue optionale Felder hinzugefügt: <code>components</code> und <code>predicates</code>. |
|||
*Den Kreaturprädikaten werden neue optionale Felder hinzugefügt: <code>components</code> und <code>predicates</code>. |
|||
}} |
|||
}} |
}} |
||
Zeile 112: | Zeile 394: | ||
[[en:Predicate]] |
[[en:Predicate]] |
||
[[fr:Prédicat]] |
|||
[[ja:プレディケート]] |
|||
[[pt:Predicado]] |
|||
[[zh:谓词]] |
[[zh:谓词]] |
Aktuelle Version vom 9. März 2025, 11:23 Uhr
Dieser Inhalt ist nur für die Java Edition. |
Prädikate sind Bedingungen die ein true
(wahr) oder false
(falsch) zurückgeben. Sie sind JSON-Strukturen, die an mehreren verschiedenen Stellen in Datenpaketen zu finden sind. Sie werden mit verschiedenen Mitteln aufgerufen, um Bedingungen innerhalb der Welt zu prüfen.
Prädikatdateien sind eigenständige Datenpaketdateien, die ein oder mehrere Prädikate enthalten. Prädikate können auch auf andere Weise definiert werden.
Dieser Artikel beschreibt, wie Prädikate definiert und aufgerufen werden, und beschreibt auch die JSON-Struktur eines Prädikats.
Definition[Bearbeiten | Quelltext bearbeiten]

- <Name des Datenpakets>
- pack.mcmeta: Die Definitionsdatei.
- data
- <namensraum>
- predicate: Eigene Prädikate.
- <datei>.json: Eine Prädikat-Datei.
- predicate: Eigene Prädikate.
- <namensraum>
Verwendung[Bearbeiten | Quelltext bearbeiten]
Prädikate und Prädikatdateien können auf verschiedene Weise von anderen Datenpaketdateien aus aufgerufen werden:
Befehle[Bearbeiten | Quelltext bearbeiten]
Befehle oder Funktionen können Prädikatdateien auf zwei Arten aufrufen:
- Zielauswahl: Das Selektorargument
@e[predicate=...]
prüft Prädikatdateien als Filter für die Objektauswahl. Die Prädikatdatei wird einmal pro Objekt aufgerufen, die gefiltert werden muss, und zwar jedes Mal am Standort des Objekt. - Befehl
/execute
: Ein Unterbefehl,/execute if predicate
, kann eine Prädikatdatei aufrufen, um entweder ein Ergebnis zurückzugeben oder zu entscheiden, ob mit einer Unterbefehlskette fortgefahren werden soll. Die Prädikatdatei wird einmal an der aktuellen kontextuellen Ausführungsposition aufgerufen.
Andere Prädikate[Bearbeiten | Quelltext bearbeiten]
Der Bedingungstyp minecraft:reference
ruft eine Prädikatdatei auf und gibt das Ergebnis an den Aufrufer zurück.
Vorhandensein in anderen Dateien[Bearbeiten | Quelltext bearbeiten]
Zusätzlich zu Prädikatdateien werden Prädikate selbst an anderen Stellen in anderen Datenpaketdateien verwendet, wie z. B. Fortschritte, Beutetabellen und Verzauberungen.
Datenstruktur[Bearbeiten | Quelltext bearbeiten]
Prädikatbasisdaten[Bearbeiten | Quelltext bearbeiten]
- Die namenlose Wurzel-Eigenschaft.
- condition: Die Bedingungen.
- Teile der Bedingung, siehe unten.
Liste der Prädikate[Bearbeiten | Quelltext bearbeiten]
all_of (Und-Verknüpfung)[Bearbeiten | Quelltext bearbeiten]
- all_of - Verbindet die Bedingungen der Parameter
terms
als ein "UND".- terms: Eine Liste der Bedingungen für die Teilnahme mit "UND".
- Eine Bedingung.
- terms: Eine Liste der Bedingungen für die Teilnahme mit "UND".
any_of (Oder-Verknüpfung)[Bearbeiten | Quelltext bearbeiten]
- any_of - Verbindet die Bedingungen der Parameter
terms
als ein "ODER".- terms: Eine Liste der Bedingungen für die Teilnahme mit "ODER".
- Eine Bedingung.
- terms: Eine Liste der Bedingungen für die Teilnahme mit "ODER".
block_state_property (Blockzustandseigenschaften)[Bearbeiten | Quelltext bearbeiten]
- block_state_property - Überprüft den Blockzustand.
- block: Eine Block-Namens-ID. Der Test wird fehlschlagen wenn der Block nicht die entsprechende Namens-ID hat.
- properties: (Optional) Eine Zuordnung von Blockzuständen mit Variablen. Alle Variablen sind Strings. Der Test wird fehlschlagen wenn der Block nicht die entsprechenden Namens-IDs hat.
- name: Ein Blockzustand und ein exakter Wert. Der Wert ist eine Zeichenfolge.
- name: Ein Blockzustandsname und ein passender Bereichswert.
- min: Der Mindestwert.
- max: Der Höchstwert.
damage_source_properties (Schadensquelleneigenschaften)[Bearbeiten | Quelltext bearbeiten]
- damage_source_properties - Überprüft die Eigenschaften der Schadensquelle.
- predicate: Prädikat angewendet auf die Schadensart, nutzt dieselbe Struktur wie Fortschritte.
enchantment_active_check (Verzauberungsüberprüfung)[Bearbeiten | Quelltext bearbeiten]
- enchantment_active_check - Überprüft, ob die Verzauberung aktiv war. Erfordert den aktiven Status der Verzauberung, der vom Beutekontext bereitgestellt wird, und schlägt immer fehl, wenn er nicht bereitgestellt wird. Es ist daher nur vom Beutekontext
enchanted_location
aus verwendbar.- active: Ob geprüft werden soll, ob eine aktive (
true
) oder inaktive (false
) Verzauberung vorliegt.
- active: Ob geprüft werden soll, ob eine aktive (
entity_properties (Objekteigenschaften)[Bearbeiten | Quelltext bearbeiten]
- entity_properties - Testeigenschaften einer Kreatur oder Objekt.
- entity: Gibt die Kreatur an, die geprüft werden soll für die Bedingung. Wenn es auf
this
gesetzt ist, um die Kreatur zu verwenden, die gestorben ist, oder den Spieler, der den Fortschritt erlangt hat, den Behälter geöffnet oder den Block abgebaut hat,killer
für den Killer oderkiller_player
für einen Killer, der ein Spieler ist . - predicate: Prädikat angewendet auf die Kreatur, nutzt dieselbe Struktur wie Fortschritte.
- entity: Gibt die Kreatur an, die geprüft werden soll für die Bedingung. Wenn es auf
entity_scores (Objekt-Punktestände)[Bearbeiten | Quelltext bearbeiten]
- entity_scores - Überprüft den Punktestand eines Objekts.
- entity: Gibt das Objekt an, das überprüft werden soll für die Bedingung. Wenn
this
angegeben ist, um das Objekt zu verwenden, die gestorben ist, oder den Spieler, der den Fortschritt erlangt hat, den Behälter geöffnet oder den Block abgebaut hat,killer
für den Killer oderkiller_player
für einen Killer, der ein Spieler ist. - scores: Alle Punktestände die überprüft werden sollen. Alle spezifischen Punktestände müssen für die Bedingung passen um zu bestehen.
- Ein Punkte-Ziel: Schlüsselname ist das Punkte-Ziel (objective) solange die Variablen speziell einen Bereich von score-Variablen für die Bedingung benötigen um zu bestehen.
- min: Mindestpunktzahl.
- max: Höchstpunktzahl.
- Ein Punkte-Ziel: Schlüsselname ist das Punkte-Ziel (objective) solange die Variablen im exakten Bereich liegen, wie die Bedingung es vorgibt.
- Ein Punkte-Ziel: Schlüsselname ist das Punkte-Ziel (objective) solange die Variablen speziell einen Bereich von score-Variablen für die Bedingung benötigen um zu bestehen.
- entity: Gibt das Objekt an, das überprüft werden soll für die Bedingung. Wenn
inverted (Invertierung)[Bearbeiten | Quelltext bearbeiten]
- inverted - Negiert die Bedingung im Parameter
term
.- term: Die zu negierende Bedingung.
killed_by_player (Tötung durch Spieler)[Bearbeiten | Quelltext bearbeiten]
- killed_by_player - Testet ob
attacking_player
-Spieler verfügbar ist.
location_check (Standortüberprüfung)[Bearbeiten | Quelltext bearbeiten]
- location_check - Überprüft, ob der aktuelle Standort übereinstimmt.
- offsetX - Optional Versatz des Standorts.
- offsetY - Optional Versatz des Standorts.
- offsetZ - Optional Versatz des Standorts.
- predicate: Prädikat angewendet auf Standort, nutzt dieselbe Struktur wie Fortschritte.
match_tool (Werkzeugüberprüfung)[Bearbeiten | Quelltext bearbeiten]
- match_tool - Überprüft ein Werkzeug.
- predicate: Prädikat wird auf einen Gegenstand angewendet, verwendet dieselbe Datenstruktur wie bei Fortschritten.
random_chance (Zufallschance)[Bearbeiten | Quelltext bearbeiten]
- random_chance - Prüft, ob eine Zufallszahl zwischen 0.0 und 1.0 kleiner als ein angegebener Wert ist.
- chance: Erfolgsquote als Zahl 0.0–1.0.
random_chance_with_enchanted_bonus (Zufallschance mit verzauberter Beute)[Bearbeiten | Quelltext bearbeiten]
- random_chance_with_enchanted_bonus - Generiert eine Zufallszahl zwischen 0,0 und 1,0 und prüft, ob sie kleiner ist als der Wert, der anhand der Stufe einer bestimmten Verzauberung ermittelt wurde. Erfordert eine
attacker
-Kreatur, die durch den Beutekontext bereitgestellt wird. Wenn sie nicht bereitgestellt wird, wird die Verzauberungsstufe als 0 betrachtet.- unenchanted_chance: Die Erfolgsrate, die verwendet werden soll, wenn die Verzauberung nicht vorhanden ist; 0,0–1,0.
- enchanted_chance: Stufenbasierter Wert. Die Erfolgsrate basierend auf dem Level, wenn die Verzauberung vorhanden ist; 0,0–1,0.
- enchantment: Eine Verzauberung (eine ID). Die Verzauberung, deren Level für die Wahrscheinlichkeitsberechnung verwendet werden soll. Wenn die Verzauberung nicht vorhanden ist, wird
0
als Level verwendet.
reference (Verknüpfung)[Bearbeiten | Quelltext bearbeiten]
- reference - Überprüft ob eine andere referenzierte Bedingung (
predicate
) besteht.- name: Der Namensraum ID von der Bedingung (
predicate
) referenziert wurde. Zyklisch referenziert führt zu einen Fehler.
- name: Der Namensraum ID von der Bedingung (
survives_explosion (Explosionsüberleben)[Bearbeiten | Quelltext bearbeiten]
- survives_explosion - Gibt
true
mit einer Wahrscheinlichkeit von1/Explosionsradius
zurück.
table_bonus (Beutetabellenbonus)[Bearbeiten | Quelltext bearbeiten]
- table_bonus - Besteht mit der Wahrscheinlichkeit ausgewählt aus Beutetabelle, ausgehend von Verzauberungsstufe.
- enchantment: ID der Verzauberung.
- chances: Liste der Wahrscheinlichkeiten für die Verzauberungsstufe, ausgehend von 0.
time_check (Zeitüberprüfung)[Bearbeiten | Quelltext bearbeiten]
- time_check - Prüft die aktuelle Uhrzeit.
- value
- max: Maximalwert.
- min: Minimalwert.
- value: Die Zeit in Ticks.
- period: Falls vorhanden wird die Zeit durch Modulo-Division (%= , Rest der Division von) um diesen Wert (Als Beispiel, falls auf 24000 gesetzt wurde, Wert wird auf eine Zeit gesetzt in Periode von Minecraft-Tagen).
- value
value_check (Wertüberprüfung)[Bearbeiten | Quelltext bearbeiten]
- value_check - Prüft einen Wertebereich.
- value: Darstellung von Wertebereichen. Der Wert, der überprüft werden soll.
- range: Der Bereich, in dem der Wert geprüft wird.
- min: Minimal-Wert.
- max: Maximal-Wert.
- range: Der genaue Wert, der überprüft werden soll.
weather_check (Wetterüberprüfung)[Bearbeiten | Quelltext bearbeiten]
- weather_check - Prüft auf einen aktuellen Wetterzustand.
- raining: Wenn
true
, wird die Bedingung nur dann alstrue
ausgewertet, wenn es regnet. - thundering: Wenn
true
, wird die Bedingung nur dann alstrue
ausgewertet, wenn es gewittert.
- raining: Wenn
Beispiele[Bearbeiten | Quelltext bearbeiten]
Eigenschaft | Beispiel |
---|---|
entity_properties
|
{
"condition": "minecraft:entity_properties",
"entity": "this",
"predicate": {
"equipment": {
"mainhand": {
"items": "minecraft:iron_sword"
}
}
}
}
|
location_check
|
{
"condition": "minecraft:location_check",
"predicate": {
"biomes": "minecraft:swamp",
"structures": "minecraft:swamp_hut",
"dimension": "minecraft:overworld"
}
}
|
weather_check
|
{
"condition": "minecraft:weather_check",
"raining": true,
"thundering": false
}
|
Externe Links[Bearbeiten | Quelltext bearbeiten]
- Siehe misode.github.io
Geschichte[Bearbeiten | Quelltext bearbeiten]
[Einklappen] Versionen der Java Edition |
---|
[Einklappen] | |||||
---|---|---|---|---|---|
Ressourcen |
| ||||
Weltdaten | |||||
Spielwelt | |||||
Software | |||||
Speicherformate | |||||
Server | |||||
Historisch |