Progrès répétables et communautaires

Maintenant que nous savons créer des progrès, ajoutons une touche d’originalité avec des progrès répétables ou à compléter à plusieurs.

Progrès répétable

Commençons par mettre en place un progrès qui donnera 10 crédits aux joueurs à chaque fois que le dragon est tué. Pour cela, je créé le fichier mangarmor/advancements/dragon.json :

				
					{
    "display":{
        "description":[
            "Tuez un dragon\n",
            {
                "text": "10 crédits\n",
                "color": "gold"
            },
            {
                "text": "Répétable",
                "color": "gray"
            }
        ],
        "title":"La fin ?!",
        "icon":{
            "item":"minecraft:dragon_head"
        },
        "frame":"goal",
        "hidden":false,
        "announce_to_chat":true,
        "show_toast":true
    },
    "criteria":{
        "pke-ender_dragon":{
            "trigger":"minecraft:player_killed_entity",
            "conditions":{
                "entity":{
                    "type":"minecraft:ender_dragon"
                }
            }
        }
    },
    "rewards":{"function":"mangarmor:advancements/dragon"},
    "parent":"minecraft:end/root"
}
				
			

La récompense est une fonction afin de permettre de mieux con troller les gains. Je créé le fichier mangarmor/functions/advancements/dragon.mcfunction. Cette fonction donne 10 crédits au joueur ayant tué le dragon et révoque le progrès pour permettre de le refaire.

				
					function mangarmor:bank/add/10
advancement revoke @s only mangarmor:dragon
				
			

Progrès communautaire

Nous allons désormais mettre en place un progrès communautaire qui donnera 10 crédits à tous les joueurs une fois le dragon tué 10 fois.

Commençons par ajouter une fonction pour initialiser un objectif advancements dans le tableau des scores.

				
					scoreboard objectives add advancements dummy "Progrès communautaires"

				
			

N’oublions pas d’ajouter cette fonction au tag load en l’ajoutant au fichier minecraft/tags/functions/load.json :

				
					{
	"values": [
		"mangarmor:advancements/init"
	]
}
				
			

Dans le même dossier, ajoutons au tag tick la fonction challenges qui sera créée par la suite :

				
					{
  "replace": false,
  "values": [
    "mangarmor:advancements/challenges"
  ]
}
				
			

Il est désormais temps de créer cette fonction. Elle vérifie régulièrement si le dragon a été tué au moins 10 fois et donne le progrès aux joueurs le cas échant. Le fichier mangarmor/functions/advancements/challenges.mcfunction contient :

				
					execute if score dragon advancements matches 10.. run advancement grant @a only mangarmor:dragon-10

				
			

À noter que les progrès ne sont donnés qu’aux joueurs connectés. Finissons enfin par créer le progrès communautaire dans le fichier mangarmor/advancements/dragon-10.json.

				
					{
    "display":{
        "description":[
            "Le dragon a été tué 10 fois\n",
            {
                "text": "10 crédits\n",
                "color": "gold"
            },
            {
                "text": "Communautaire",
                "color": "gray"
            }
        ],
        "title":"Tueur de dragon",
        "icon":{
            "item":"minecraft:dragon_head"
        },
        "frame":"challenge",
        "hidden":true,
        "show_toast":true
    },
    "criteria":{
        "impossible": {
            "trigger": "minecraft:impossible"
        }
    },
    "requirements":[
        ["impossible"]
    ],
    "rewards":{
        "function":"mangarmor:bank/add/10"
    },
    "parent":"mangarmor:dragon"
}
				
			

Le critère de ce progrès est impossible car il ne peut être obtenu que par une commande.

Téléchargement

Pour aller plus loin

Voici d’autres articles qui pourraient t’intéresser :

Contenu du répertoire data/minecraft/recipes
Minecraft

Savoir chercher une information

Je ne connais pas par cœur tous les aspects du jeu. Pour écrire mes articles, je fais des recherches. Voici quelques exemples pour trouver une information.

Nouveautés

Bonne année 2021

Il est temps de faire le bilan de 2020 et présenter les projets pour cette nouvelle année.

Loot boxes dans une boutique sur serveur Minecraft
Minecraft

Création de loot boxes

Le serveur Mang’Armor s’est démarqué en proposant aux joueurs des coffres disponibles grâce aux progrès. Nous allons voir aujourd’hui comment mettre en place ces boites au contenu aléatoire.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Sommaire

Partager

Partager sur facebook
Facebook
Partager sur twitter
Twitter