Mise à jour :
Fonctionnement
- Créez un objectif de scoreboard de type
trigger. - Activez-le pour les joueurs.
- Un joueur lance
/trigger nom, ce qui augmente son score. - 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
| Version | Commande |
|---|---|
| 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
- « You cannot trigger this objective yet » : lancez
scoreboard players enableà chaque tick. - Objectif invalide : il doit être créé de type
trigger, pasdummy. - Il se relance sans cesse : remettez le score à 0 après l'action.
- Édition Bedrock : il n'y a pas de /trigger.
Vérifiez votre commande
Le Command Error Doctor (en anglais) vérifie dans votre navigateur les erreurs de syntaxe les plus courantes.