/execute @a x y z /fill x y z x y z redstone_block
Voici vos anciens essais. Je suppose que vous testiez pour des joueurs aux coordonnées (1, 2, 3) en faisant :
/execute @a 1 2 3
Mais non. Que font exactement les coordonnées après @a
? Regardons.
D'après le Minecraft Wiki :
Syntaxe
execute
Et que font les coordonnées ?
Spécifie la position à partir de laquelle exécuter la commande. Les coordonnées spécifiées avec la notation tilde et caret sont relatives à la cible, et non à la position de l'exécution de la commande.
Votre commande dit à Minecraft de faire ceci :
_Dire à tous les joueurs d'exécuter la commande suivante aux coordonnées x, y, z : fill x1 y1 z1 x2 y2 z2 redstone_block
_.
Évidemment ce n'est pas ce que vous voulez.
Pour filtrer les joueurs en fonction de leur position, de leurs propriétés, de leur distance, etc., vous devez modifier @a
pour inclure des arguments, qui filtreront votre sélection vers les bons joueurs.
Les arguments vont entre crochets (optionnels) après @a
. Par exemple : @a[ARGS]
Nous utiliserons les arguments x
, y
et z
pour sélectionner une position, et l'argument r
pour indiquer à quelle distance le joueur doit être.
/testfor @a[x=1,y=2,z=3,r=5]
Par exemple, cette commande réussira si un joueur est détecté dans un rayon de 5 blocs de (1, 2, 3).
Il vous suffit de placer un bloc de commande en chaîne après cela, configuré en mode conditionnel, avec la commande que vous voulez exécuter, comme votre /fill
ou un /setblock
.