Il y a beaucoup plus de commandes que ce que je prévoyais à l'origine, mais ce qui suit devrait fonctionner.
Tout d'abord, vous aurez besoin de 3 objectifs pour cela. Les deux premiers ont déjà été mis en place, mais avec un type différent :
/scoreboard objectives add TalkVillBlue dummy
/scoreboard objectives add TalkVillGreen dummy
/scoreboard objectives add TalkVill stat.talkedToVillager
Ensuite, sur une horloge, exécutez les commandes suivantes dans l'ordre :
/scoreboard players tag @e[type=Villager,name=Green] add VillTalkedTo {Offers:{}}
/scoreboard players tag @e[type=Villager,name=Blue] add VillTalkedTo {Offers:{}}
/execute @e[tag=VillTalkedTo,name=Green] ~ ~ ~ /scoreboard players add @p[score_TalkVill_min=1] TalkVillGreen 1
/execute @e[tag=VillTalkedTo,name=Blue] ~ ~ ~ /scoreboard players add @p[score_TalkVill_min=1] TalkVillBlue 1
/execute @e[tag=VillTalkedTo,name=Green] ~ ~ ~ /summon Villager ~ ~ ~ {Tags:[NewVill],CustomName:"Green"}
/execute @e[tag=VillTalkedTo,name=Blue] ~ ~ ~ /summon Villager ~ ~ ~ {Tags:[NewVill],CustomName:"Blue"}
/execute @e[tag=VillTalkedTo] ~ ~ ~ /teleport @e[tag=NewVill,c=1] ~ ~ ~ ~ ~
/tp @e[tag=VillTalkedTo] ~ -500 ~
/kill @e[tag=VillTalkedTo]
/scoreboard players tag @e[tag=VillTalkedTo] remove VillTalkedTo
/scoreboard players set @a[score_TalkVill_min=1] TalkVill 0
Il s'agit de :
1&2. Marquez tous les villageois avec lesquels des échanges ont eu lieu (et donc leurs Offers
générée) avec VillTalkedTo
3&4. Incrémente les villageois qui viennent de parler au joueur qui vient d'interagir avec eux. TalkVillGreen
o TalkVillBlue
score
5&6. Resoumonez-les (car ils sont sur le point de mourir), c'est ici que vous devrez mettre les tags spécifiques à ces villageois si vous en avez d'autres que leur nom.
7. Téléporter le villageois nouvellement convoqué vers soi, afin de le faire pivoter correctement.
8&9. Téléportez les villageois verts/bleus qui ont parlé dans le vide, puis tuez-les.
10&11. Réinitialisation des étiquettes et des scores utilisés, prêt à détecter à nouveau.