Mise à jour :

Fonctionnement

  1. Créez un objectif de scoreboard de type trigger.
  2. Activez-le pour les joueurs.
  3. Un joueur lance /trigger nom, ce qui augmente son score.
  4. Un bloc de commande voit le score, fait l'action réelle (comme une téléportation) et remet le score à 0.

Les joueurs ne peuvent changer que leur propre score, donc c'est une façon sûre de leur donner des actions.

Une commande « retour au lobby »

Préparation (un opérateur la lance une fois) :

/scoreboard objectives add lobby trigger

Dans un bloc de commande Répétition (Toujours actif) et des blocs Chaîne :

scoreboard players enable @a lobby
execute as @a[scores={lobby=1..}] run tp @s 0 64 0
scoreboard players set @a[scores={lobby=1..}] lobby 0

Maintenant, n'importe qui peut taper /trigger lobby pour aller en 0, 64, 0.

Pourquoi enable est nécessaire

Un trigger se désactive après une utilisation. Sans scoreboard players enable, le deuxième essai indique que le trigger n'est pas activé, c'est pourquoi la première ligne le réactive à chaque tick.

Menu cliquable dans le chat

VersionCommande
Java 1.21.5 et plus récent/tellraw @a {text:"[Retour au lobby]",color:"aqua",click_event:{action:"run_command",command:"/trigger lobby"}}
Java 1.21.4 et antérieur/tellraw @a {"text":"[Retour au lobby]","color":"aqua","clickEvent":{"action":"run_command","value":"/trigger lobby"}}

Un texte cliqué ne peut lancer que des commandes que le joueur pourrait taper lui-même, c'est pourquoi /trigger fonctionne pour tous.

Des choix avec des nombres

/trigger shop set 2

set fixe le score à un nombre, donc un seul trigger peut proposer plusieurs choix : shop=1 pour une épée, shop=2 pour un arc, traités avec execute as @a[scores={shop=2}] run ….

Problèmes courants

Vérifiez votre commande

Le Command Error Doctor (en anglais) vérifie dans votre navigateur les erreurs de syntaxe les plus courantes.