4 votes

Faire pivoter une entité pour qu'elle regarde au même endroit que le joueur

J'essaie de faire en sorte qu'un socle d'armure marqué soit au même endroit que le joueur, mais je ne trouve pas le moyen de le faire.

Par exemple, si le joueur regarde dans la direction du bloc (x, y, y), le Stand Armor doit regarder le bloc (x, y, z).

Pour l'instant, j'ai écrit la commande suivante, mais elle ne fait tourner le socle de l'armure que dans la même direction que le joueur, elle ne le fait pas regarder au même endroit :

/execute as @e[tag=my_armor_stand] at @s rotated as @p run teleport @s ~ ~ ~ ~ ~

Si cela doit prendre plus d'une commande, c'est également possible.

1 votes

Il s'agit d'un duplicata de gaming.stackexchange.com/q/362586/171580 . Je le fermerais bien comme tel, mais pour une raison quelconque, ce n'est pas possible tant qu'il y a une prime. Pourquoi avez-vous mis une prime ? Une simple recherche sur Google aurait pu résoudre votre problème ET vous faire économiser 100 points.

0 votes

@FabianRöling Je ne pense pas que ce soit le cas, parce qu'ils essaient de reproduire la direction dans laquelle un joueur regarde avec un support d'armure, alors que l'autre question est de déterminer ce qui bloc qu'un joueur regarde.

0 votes

@Corsaka Non, c'est exactement ça. pas ce qu'ils veulent. L'exemple de commande inclus dans la question ferait ce que vous avez décrit, mais ils veulent que le support d'armure regarde plutôt le même bloc.

2voto

Sam Hill Points 460
  1. Invoque un socle d'armure avec une étiquette spécifique, invulnérable et sans gravité.
    • summon minecraft:armor_stand ~ ~ ~ {Invulerable:1b,NoGravity:1b,Tags:["tag1"]}
  2. À chaque tic, téléportation du socle d'armure à la position relative du joueur.
    • execute as @p at @s anchored eyes run tp @e[tag=tag1] ^ ^ ^2
  3. A chaque tick, téléportez votre propre Stand d'Armure pour faire face au nouveau.
    • execute as @e[tag=tag2] at @s run tp @s ~ ~ ~ facing @e[tag=tag1,limit=1]
  4. Une fois que vous avez terminé, tuez l'Armor Stand.
    • kill @e[tag=tag1]

Veillez à remplacer tag1 et tag2 par vos noms de balises réels.

Edit : Pour regarder le bloc, vous voulez envoyer un support d'armure différent tag3 du joueur et lorsqu'elle touche un bloc, téléportez votre tag2 l'armure se trouve en face de l'emplacement de celle-ci. Puis répétez le processus en envoyant tag3 et la téléportation tag2 pour y faire face jusqu'à ce que vous ayez terminé. C'est ce qu'on appelle le raycasting

0 votes

C'est assez compliqué. Si je comprends bien la question, il suffit de lancer un rayon jusqu'à ce que vous touchiez le bloc, puis de faire pivoter le socle de l'armure une fois. Si vous utilisez des fonctions, vous n'avez même pas besoin d'entités fictives.

0 votes

Oh oui, tu as raison.

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