3 votes

Comment tester la présence d'un élément nommé dans un cadre d'éléments ? (1.16.1)

Je veux faire un puzzle 7x7. Je voudrais savoir comment je peux utiliser /execute (ou une autre commande) pour vérifier la présence d'une carte remplie nommée Map#26 dans un cadre aux coordonnées (-26, 74 -100).

Edit : Ok, j'ai changé d'endroit.

execute if entity @e[type=minecraft:item_frame,nbt={Item:{id:"minecraft:filled_map"}}] run say jeff

La commande ci-dessus s'exécute s'il y a une carte remplie dans un cadre d'élément n'importe où. Une fois qu'une carte se trouve dans un cadre d'élément, la commande dira jeff.

Ce que j'essaie de comprendre, c'est une commande qui s'exécute s'il y a une carte remplie nommée dans un cadre d'objet à un cadre d'objet spécifique. Une fois qu'il y a une carte dans ce cadre d'élément, la commande dira joe. "

A titre d'exemple

execute s'il existe un cadre d'élément avec une carte remplie nommée Map#24 à -26, 74, -100 courir dire joe.

Edit : Quelques succès ont été enregistrés avec cette commande.

execute if entity @e[type=minecraft:item_frame,nbt={Item:{id:"minecraft:filled_map",tag:{display:{Name:'{"text":"Map#24"}'}}}}] run say jeff

La commande ci-dessus dit jeff s'il existe une carte nommée Map#24 dans un cadre. Le problème, c'est que ce cadre peut se trouver n'importe où. Jusqu'à présent, la seule chose que j'ai essayée est cette commande :

execute if entity @e[x=-39.5,y=63.5,z=21.96875,type=minecraft:item_frame,nbt={Item:{id:"minecraft:filled_map",tag:{display:{Name:'{"text":"Map#24"}'}}}}] run say jeff

Mais cette commande n'a pas fonctionné pour un lieu spécifique. Merci de m'aider.

2voto

Richie Frame Points 1800

Le NBT est votre meilleur ami dans ce domaine.

Détection de la position du cadre de l'élément

N'essayez pas d'utiliser les arguments du sélecteur de cible x , y et z . Ceux-ci pourraient avoir des parties décimales et ne fonctionneront certainement pas.

Utilisez plutôt les balises NBT TileX , TileY et TileZ . Ils représentent l'emplacement d'un bloc et sont des nombres entiers.

/execute if entity @e[type=item_frame,nbt={TileX:12,TileY:23,TileZ:34}] run say Item frame in correct position.

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X