Créer un recette de potion


  • Rédacteurs

    Sommaire

    Introduction

    Bonjour à tous, je suis BrokenSwing et nous allons voir comment ajouter une recette de potion !

    Pré-requis

    Vous devez posséder un mod fonctionnel, référez-vous au tutoriel suivant Créer la base son mod

    Code

    La classe principale

    Dans la fonction init(FMLInitializationEvent) de votre classe principale, nous allons enregistrer la recette :

    @EventHandler
    public void init(FMLInitializationEvent event)
    {
        //A la suite
        BrewingRecipeRegistry.addRecipe(input, ingredient, output);
    }
    

    Ici les variables input, ingredient et output correspondent à des ItemStacks, dans une recette de potion classique l'input correspond aux potions que l'on
    met dans les 3 slots à potion, l'ingredient correspond à ... l'ingrédient ,une verrue du nether (nether wart) par exemple. Et l'output est la potion qui
    va remplacer l'ancienne.
    L'input doit être un objet qui possède une taille de stack maximale égale à 1, sinon le jeu va crash.
    L'ingredient peut être n'importe quel objet du jeu.
    L'output peut être n'importe quel objet du jeu, cependant il est conseillé de respecter les mêmes contraintes que pour l'input.

    Dans le code donné ci-dessus il faut remplacer les variables par les ItemStacks correspondants.

    Dans mon cas je vais créer une potion qui, alimentée par une pomme, me donnera un lit :

    BrewingRecipeRegistry.addRecipe(new ItemStack(Items.POTIONITEM), new ItemStack(Items.APPLE), new ItemStack(Items.BED));
    

    La même fonction existe mais prenant cette fois comme ingredient une chaine de charactère correspondant au nom associé à l'item dans OreDictionnary (si vous
    ne connaissez pas OreDictionnary, utilisez la première version de la fonction)

    BrewingRecipeRegistry.addRecipe(new ItemStack(Items.POTIONITEM), "egg", new ItemStack(Items.BED));
    

    Dans le dernier des cas vous pouvez créer une classe qui implémentera l'interface IBrewingRecipe, puis ajouter la recette grâce à :

    BrewingRecipeRegistry.addRecipe(new VotreClasseImplementantIBrewingRecipe());
    

    Résultat

    Il suffit de placer des fioles d'eau dans les slots de potion, mettre une pomme en ingrédient, alimenter le tout avec de la poudre de blaze, attendre, et vous obtenez des lits.


    Voir le commit sur GitHub



  • Au mon dieu broke je t'aime ❤ sa fait 1 moos que je cherche 🙂


  • Rédacteurs

    Pas de problème, n'hésite pas si tu veux que je rajoute quelque chose au tutoriel, ou si tu penses qu'il faut rajouter des explications quelque part



  • A question est compris car il me semblait que c'était chiant au plu haut point (rajouter ?)


  • Rédacteurs

    J'ai pas compris ce que tu as marqué, désolé …



  • @'BrokenSwing':

    Pas de problème, n'hésite pas si tu veux que je rajoute quelque chose au tutoriel, ou si tu penses qu'il faut rajouter des explications quelque part

    Non il est parfait 😄



  • Y'aura une vidéo ? J'suis pas sûr d'y arriver avec le tuto écrit 😕
    (Ceci est un troll à ne pas prendre au pied de la lettre :D)

    Sinon très bon tuto, je ne savais même pas que classe existait 😮



  • La question est : Marche en 1.7.10 ? Ou ajouter en 1.9 ? Car je me rappelle que c'est super chiant en 1.7.10


  • Rédacteurs

    @Plaigon J'aurai compris le troll sans que tu l'écrives 😛 Une ligne et puis terminé
    @moscaphone421 La classe semble avoir été rajoutée en 1.9, oui en 1.7 c'était peut-être possible mais compliqué, le mieux était de créer son propre système de potion avec son propre brewing stand



  • Alalalah Pourquoi je suis en 1.7.10 …. AH OUI THERMOS !



  • @'BrokenSwing':

    @Plaigon J'aurai compris le troll sans que tu l'écrives 😛 Une ligne et puis terminé
    @moscaphone421 La classe semble avoir été rajoutée en 1.9, oui en 1.7 c'était peut-être possible mais compliqué, le mieux était de créer son propre système de potion avec son propre brewing stand

    Effectivement de ce que j'ai vu en 1.7 c'est plus compliqué et on a moins de possibilités (pareil en 1.8).

    Très bon tutoriel, je cherchais justement à faire des lits dans un alambique 😄 .


  • Rédacteurs

    @Scarex De l'eau + une pomme = un lit, c'est bien connu de toute façon



  • @'BrokenSwing':

    @Scarex De l'eau + une pomme = un lit, c'est bien connu de toute façon

    Ikea devrait s'en inspirer…


  • Rédacteurs

    Mdr ! 😉