2 votes

N'afficher le titre de la région que pour les joueurs entrant/sortant de la zone dans l'édition Bedrock ?

J'ai ajouté une région créative à mon monde de survie et lorsque les joueurs entrent/sortent de cette région, je veux afficher un titre et un sous-titre comme suit :

Home base title displayed.

C'est assez facile à faire avec la fonction title et une commande bloc de commande mais j'ai du mal à faire en sorte que le titre ne s'affiche que pour les joueurs qui entrent/sortent de la zone.

Actuellement, j'essaie d'enchaîner bloc de commande pour accomplir cette tâche, mais je ne suis pas opposé à la création d'une fonction pour cela, puisque c'est l'objectif final de toute façon ( Cependant, j'ai d'abord besoin de la méthode du bloc de commande, car mon pack de comportement n'est pas encore prêt. ). La configuration actuelle est la suivante :

# Block 1 (Repeat, Unconditional, Always Active)
tag @a[r=64] add "home"

# Block 2 (Chain, Conditional, Always Active)
gamemode creative @a[r=70,tag="home"]

# Block 3 (Chain, Conditional, Always Active)
tag @a[r=70,tag="home"] add "home-title"

# Block 4 (Chain, Conditional, Always Active)
title @a[r=70,tag="home-title"] subtitle "This is a safe space."

# Block 5 (Chain, Conditional, Always Active)
title @a[r=70,tag="home-title"] title "Home Base"

Il existe trois autres bloc de commande qui sont responsables du processus de sortie, et qui sont tous réglés sur :

  • Répéter
  • Inconditionnel
  • Toujours actif

Leurs ordres sont les suivants :

# Block 1
tag @a[rm=65] remove "home"

# Block 2
tag @a[rm=65] remove "home-title"

# Block 3
gamemode survival @a[rm=65]

J'ai pensé que pour les joueurs qui possèdent déjà le domicile Cependant, ce n'est pas vrai et, avec le recul, cela n'aurait jamais pu l'être puisque tous les blocs restants ont un impact sur tous les joueurs dans un rayon de 64 blocs.


Comment puis-je ajuster ma configuration pour m'assurer que seuls les joueurs qui entrent/sortent de la zone verront le titre/sous-titre avec bloc de commande s ?

<em>Bonus : Peut-on le faire en une seule fonction ?</em>

2voto

Penguin Points 4911

Je ne comprends pas très bien votre question, mais je pense que votre problème est que vous ne voulez pas :

tag @a[r=64] add "home"

de renvoyer un succès s'ils ont déjà un domicile. Si c'est le cas, il suffit de remplacer cette commande par :

execute @a[r=64,tag=!home] tag @s add "home"

2voto

Taco タコス Points 2674

Réponse de @Penguin m'a aidé à trouver la réponse dont j'avais besoin, alors allez voter pour leur réponse !


J'ai rencontré quelques problèmes avec mon installation. Le premier était que j'ajoutais le home-title avant d'afficher le titre, de sorte que tous les utilisateurs disposent toujours de la balise home-title étiquette. Même avec @Penguin L'ajout de l'opérateur "not" par la Commission européenne ! dans ma chaîne logique, tous les utilisateurs voyaient toujours le titre.

J'ai dû modifier l'ordre d'exécution des commandes, en plus d'ajouter l'opérateur not pour que cela fonctionne :

#Block 1 (Repeat, Unconditional, Always Active)
tag @a[r=64,tag=!"home"] add "home"

#Block 2 (Chain, Conditional, Always Active)
gamemode creative @a[r=75,tag="home"]

#Block 3 (Chain, Conditional, Always Active)
title @a[r=75,tag=!"home-title"] subtitle "This is a safe space."

#Block 4 (Chain, Conditional, Always Active)
title @a[r=75,tag=!"home-title"] title "Home Base"

#Block 5 (Chain, Conditional, Always Active)
tag @a[r=75,tag="home"] add "home-title"

Avec cette configuration, seuls les joueurs entrant dans la zone verront le titre, alors que les joueurs déjà présents dans la zone ne le verront pas.

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