Mise à jour :

1. Mise en place (une fois)

/team add red "Rouge"
/team add blue "Bleu"
/team modify red color red
/team modify blue color blue
/team modify red friendlyFire false
/team modify blue friendlyFire false
/scoreboard objectives add flags dummy "Drapeaux"
/scoreboard objectives add died deathCount
/scoreboard objectives setdisplay sidebar flags
/scoreboard players set Rouge flags 0
/scoreboard players set Bleu flags 0

Placez les joueurs dans les équipes avec /team join red NOM. Voir la commande team. Les joueurs peuvent partager leurs plans avec /teammsg (commandes de chat privé).

2. Marquer l'emplacement des drapeaux

/summon marker ~ ~ ~ {Tags:["red_flag"]}
/summon marker ~ ~ ~ {Tags:["blue_flag"]}

Lancez chacune au centre d'une base et posez-y un bloc de bannière en décoration.

3. Prendre le drapeau adverse (Répétition)

Ces étapes concernent les rouges qui prennent le drapeau bleu ; faites l'inverse pour les bleus.

/execute at @e[type=marker,tag=blue_flag] unless entity @a[tag=has_blue] as @a[team=red,distance=..1.5,limit=1,sort=nearest] run tag @s add take_blue
/item replace entity @a[tag=take_blue] armor.head with blue_banner
/tag @a[tag=take_blue] add has_blue
/tag @a[tag=take_blue] remove take_blue

Seul le joueur rouge le plus proche reçoit le drapeau, et seulement si personne ne le tient. La bannière remplace tout casque, alors jouez sans casque.

4. Faire briller le porteur (Répétition)

/effect give @a[tag=has_blue] glowing 1 0 true

5. Marquer à sa base (Répétition)

/execute at @e[type=marker,tag=red_flag] as @a[tag=has_blue,distance=..2] run scoreboard players add Rouge flags 1
/execute at @e[type=marker,tag=red_flag] as @a[tag=has_blue,distance=..2] run tellraw @a {"text":"Les rouges ont capturé le drapeau !","color":"red"}
/execute at @e[type=marker,tag=red_flag] as @a[tag=has_blue,distance=..2] run item replace entity @s armor.head with air
/execute at @e[type=marker,tag=red_flag] as @a[tag=has_blue,distance=..2] run tag @s remove has_blue

Retirez le tag en dernier, sinon les lignes précédentes ne correspondent plus.

6. Retour du drapeau à la mort (Répétition)

/gamerule keep_inventory true
/execute as @a[scores={died=1..},tag=has_blue] run item replace entity @s armor.head with air
/tag @a[scores={died=1..}] remove has_blue
/scoreboard players reset @a[scores={died=1..}] died

Lancez la règle de jeu une fois (keepInventory en 1.21.10 et antérieur) pour que la bannière ne tombe pas et ne soit pas ramassée. Une fois le tag retiré, l'étape 3 peut à nouveau donner le drapeau.

7. Test de victoire (Répétition)

/execute if score Rouge flags matches 3.. run title @a title {"text":"Les rouges gagnent !","color":"red"}

Arrêtez ensuite les blocs de commande et remettez les scores à 0 avant la partie suivante.

Dépannage

Vérifiez votre commande

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