Existe-t-il un moyen de cibler la flèche à partir d'un arc OP par bloc de commande?

J'essaie de faire une piste d'effets pour une arme spécifique dans MC, un arc avec puissance 120. Je veux utiliser un bloc de commande pour cibler n'importe quelle flèche avec les dommages qu'elle devrait faire (63) et appeler une piste de potions éclaboussantes.

Je veux aussi tuer toutes les entités fléchées qui ont inGround=True

Y a-t-il un moyen de le faire ou dois-je proposer quelque chose d'autre?

Tentative:

 /execute @e[type=Arrow,damage=63,inGround=0] ~ ~ ~ summon ThrownPotion ~ ~ ~ {Potion:{id:potion,Damage:8197}} /kill @e[type=Arrow,inGround=True] 

Chaque malheureusement affecte toutes les flèches. Est-ce même possible?

Les sélecteurs de cible ne supportent pas l'entrée directe de données NBT. Vous devez d'abord attribuer une étiquette à la cible en utilisant /scoreboard , puis cibler l'entité en fonction de son étiquette.

Conditions préalables:

Objectif de conserver la valeur.

 /scoreboard objectives add SpecialArrow dummy 

Commandes d'horloge:

Les opérations suivantes doivent être exécutées dans un ordre numérique sur une horloge.

  1. Affectez un score basé sur les données NBT de la flèche. Notez que vous devez déclarer correctement les types d'étiquettes; Dans ce cas, "dommage" a un type d'étiquette de double , donc vous devez inclure une décimale, tandis que "inGround" a un type d' byte , de sorte que sa valeur est ajoutée avec un "b". La commande attribue un score de 1 si la flèche a un dommage particulier et ne se trouve pas dans le sol.

     /scoreboard players set @e[type=Arrow] SpecialArrow 1 {damage:63.0,inGround:0b} 
  2. Effectuez les commandes que vous souhaitez, en ciblant les flèches avec un score SpecialArrow exactement 1.

     /execute @e[type=Arrow,score_SpecialArrow_min=1,score_SpecialArrow=1] ~ ~ ~ summon ThrownPotion ~ ~ ~ {Potion:{id:potion,Damage:8197}} 
  3. Ensuite, le score est réglé sur 2 si cette flèche particulière est maintenant dans le sol.

     /scoreboard players set @e[type=Arrow] SpecialArrow 2 {damage:63.0,inGround:1b} 
  4. Et enfin, la commande / kill, le ciblage basé sur le score.

     /kill @e[type=Arrow,score_SpecialArrow_min=2]