MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Créer une table de craft compatible avec JEI et NEI

    Planifier Épinglé Verrouillé Déplacé Les interfaces (GUI) et les container
    1.8.91.9.x
    90 Messages 11 Publieurs 23.4k Vues 3 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • AymericRedA Hors-ligne
      AymericRed
      dernière édition par

      Ah bah oui évidement x)

      Tu ajoutes tes recettes dans ton constructeur, or pour ajouter les recettes, tu fais “AdvancedCraftingManager.getInstance().addRecipe(…)”, et le problème est que “AdvancedCraftingManager.getInstance()” va réappeller le constructeur, pour éviter ça java fait un return null donc NullPointerException.

      Là c’est de ma faute, vu que j’avais mis l’exemple d’ajout dans l’init du mod et pas dans le constructeur, donc pour éviter un tel problème enlèves simplement les “AdvancedCraftingManager.getInstance()” devant les appels des fonctions pour ajouter une recette dans le constructeur.

      Et je vais de mon côté corriger ça.

      Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

      AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

      Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
      Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

      1 réponse Dernière réponse Répondre Citer 0
      • InfiniteI Hors-ligne
        Infinite
        dernière édition par

        x) Merci beaucoup  😄 
        It’s perfectly working ! (je sais pas pourquoi je me suis transformé en anglais)

        Mes Sites(Mes Sites)
        |
        |    Site général : Game & play
        |   Site de projets (en dev !) :Infinite's Ressources
        J'ai et je suis content d'avoir 16,75 points d'ICRating

        1 réponse Dernière réponse Répondre Citer 0
        • AymericRedA Hors-ligne
          AymericRed
          dernière édition par

          Ow that’s very good !

          Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

          AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

          Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
          Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

          1 réponse Dernière réponse Répondre Citer 0
          • ? Hors-ligne
            Un Ancien Utilisateur
            dernière édition par

            en 1.10 ca fonctionne ?

            1 réponse Dernière réponse Répondre Citer 0
            • AymericRedA Hors-ligne
              AymericRed
              dernière édition par

              Alors là aucune idée, je pense que oui à part un ou deux changements potentiels de noms, mais si tu bloques je pourrais regarder.
              C’est surtout en 1.12 que ça a des chances de changer.

              Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

              AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

              Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
              Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

              1 réponse Dernière réponse Répondre Citer 0
              • ? Hors-ligne
                Un Ancien Utilisateur
                dernière édition par

                D’accord merci de ta réponse je vais essayer alors 😉

                1 réponse Dernière réponse Répondre Citer 0
                • InfiniteI Hors-ligne
                  Infinite
                  dernière édition par

                  Je viens de remarquer que le addShapelessRecipe n’accepte pas les “new ItemStack(Items.trucmachin, 1)” pour les crafts.
                  y a t’il possibilité de corriger cela ?

                  Mes Sites(Mes Sites)
                  |
                  |    Site général : Game & play
                  |   Site de projets (en dev !) :Infinite's Ressources
                  J'ai et je suis content d'avoir 16,75 points d'ICRating

                  1 réponse Dernière réponse Répondre Citer 0
                  • AymericRedA Hors-ligne
                    AymericRed
                    dernière édition par

                    Euh quel addShapelessRecipe (je suis sur Tapatalk donc pour trouver c’est pas vraiment pratique).

                    Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                    AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                    Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                    Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                    1 réponse Dernière réponse Répondre Citer 0
                    • InfiniteI Hors-ligne
                      Infinite
                      dernière édition par

                      Celui-ci(c’est une partie de ton tutoriel):
                      Et le code permettant d’ajouter les recettes correspondant :

                      1. this.addShapelessRecipe(new ItemStack(Blocks.ANVIL), Items.CARROT, Items.GOLDEN_APPLE);
                      2. this.addRecipe(new ItemStack(cratingTable), " C “, “X X”, ” C ", ‘C’, “slabWood”, ‘X’, Blocks.PLANKS); //“slabWood” est le nom des dalles de bois dans l’ore dictionnary, ceci est ajouté par Forge
                      3. this.addRecipe(new ItemStack(Items.GOLDEN_APPLE), “A  A”, “X  X”, “X  X”, “A  A”, ‘A’, Items.CARROT, ‘X’, Blocks.PLANKS);
                      4.  

                      à placer dans le constructeur du TutorielCraftingManager.

                      Mes Sites(Mes Sites)
                      |
                      |    Site général : Game & play
                      |   Site de projets (en dev !) :Infinite's Ressources
                      J'ai et je suis content d'avoir 16,75 points d'ICRating

                      1 réponse Dernière réponse Répondre Citer 0
                      • AymericRedA Hors-ligne
                        AymericRed
                        dernière édition par

                        Je crois qu’il manque un truc à ton message mais pas grave j’ai compris et je suis sur pc 🙂
                        Si j’ai compris tu veux mettre un ItemStack ici :

                        this.addShapelessRecipe(new ItemStack(Blocks.ANVIL), ICI);
                        ``` ? Et si c'est ça si ça devrait marcher.
                        
                        Si j'ai pas compris mets les arguments que t'essayes de passer et dit ce qui marche pas.

                        Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                        AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                        Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                        1 réponse Dernière réponse Répondre Citer 0
                        • InfiniteI Hors-ligne
                          Infinite
                          dernière édition par

                          @‘AymericRed’:

                          Je crois qu’il manque un truc à ton message mais pas grave j’ai compris et je suis sur pc 🙂
                          Si j’ai compris tu veux mettre un ItemStack ici :

                          this.addShapelessRecipe(new ItemStack(Blocks.ANVIL), ICI);
                          ``` ? Et si c'est ça si ça devrait marcher.
                          
                          Si j'ai pas compris mets les arguments que t'essayes de passer et dit ce qui marche pas.
                          

                          si je fait :
                          addShapelessRecipe(new ItemStack(Blocks.anvil), new ItemStack(Blocks.planks, 1, OreDictionary.WILDCARD_VALUE)
                          si je met une planche(de n’importe quel type car j’ai mis “OreDictionary.WILDCARD_VALUE”) dans ma table de craft, ça m’affiche pas le resultat(une enclume).
                          alors que si je fait ça:
                          addShapelessRecipe(new ItemStack(Blocks.anvil), Item.getItemFromBlock(Blocks.planks)
                          ça m’affiche le resultat mais je dois uniquement mettre une planche en bois de chêne car je peux mettre “OreDictionnary.WILDCARD_VALUE” seulement avec “new ItemStack()” 😕

                          Mes Sites(Mes Sites)
                          |
                          |    Site général : Game & play
                          |   Site de projets (en dev !) :Infinite's Ressources
                          J'ai et je suis content d'avoir 16,75 points d'ICRating

                          1 réponse Dernière réponse Répondre Citer 0
                          • InfiniteI Hors-ligne
                            Infinite
                            dernière édition par

                            En fait il prend juste pas le OreDictionnary.WILCARD_VALUE
                            parce que si je fait ça :

                            addShapelessRecipe(new ItemStack(ItemMod.speedStick), new ItemStack(ItemMod.woodenHammer, 1), new ItemStack(Item.getItemFromBlock(Blocks.planks)));
                            

                            ça fonctionne
                            mais si, je fais ça :

                            addShapelessRecipe(new ItemStack(ItemMod.speedStick), new ItemStack(ItemMod.woodenHammer, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(Item.getItemFromBlock(Blocks.planks)));
                            

                            ça fonctionne pas, le craft ne s’affiche pas alors que j’ai mis les bons objets.

                            Je sais pas d’ou ça vient mais j’aimerai corriger ceci.

                            Mes Sites(Mes Sites)
                            |
                            |    Site général : Game & play
                            |   Site de projets (en dev !) :Infinite's Ressources
                            J'ai et je suis content d'avoir 16,75 points d'ICRating

                            1 réponse Dernière réponse Répondre Citer 0
                            • AymericRedA Hors-ligne
                              AymericRed
                              dernière édition par

                              Alors oui effectivemet il y a un petit défaut, la fonction “TutorielShapedRecipes.areItemStacksEquals” ne check cette valeur que sur le premier ItemStack (normal vu qu’un joueur ne peut pas posséder un item avec cette valeur), dans la classe “TutorielShapedRecipes”, les arguments sont dans le bon ordre mais pas dans la classe “TutorielShapelessRecipe”, je m’en vais corriger ceci, mais il suffit juste d’inverser les deux stacks dans les appels de “TutorielShapedRecipes.areItemStacksEquals” qui sont dans la fonction “TutorielShapelessRecipe.matches”.

                              Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                              AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                              Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                              Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                              1 réponse Dernière réponse Répondre Citer 0
                              • InfiniteI Hors-ligne
                                Infinite
                                dernière édition par

                                Je dois inverser les stacks itemstack et itemstack1 dans ceci ? :

                                public boolean matches(InventoryCrafting inv, World worldIn)
                                    {
                                        ArrayList arraylist = Lists.newArrayList(this.recipeItems);
                                        for (int i = 0; i < ContainerAdvancedCraftingTab.craftHeight; ++i)
                                        {
                                            for (int j = 0; j < ContainerAdvancedCraftingTab.craftWidth; ++j)
                                            {
                                                ItemStack itemstack = inv.getStackInRowAndColumn(j, i);
                                                if (itemstack != null)
                                                {
                                                    boolean flag = false;
                                                    for(Object component : arraylist)
                                                    {
                                                     if(component instanceof String)
                                                     {
                                                     List <itemstack>stacks = OreDictionary.getOres((String) component);
                                                     for(ItemStack itemstack1 : stacks)
                                                     {
                                                     if (AdvancedShapedRecipes.areItemStacksEquals(itemstack, itemstack1))
                                                            {
                                                                flag = true;
                                                                arraylist.remove(itemstack1);
                                                                break;
                                                            }
                                                     }
                                                     }
                                                     else
                                                     {
                                                        ItemStack itemstack1 = (ItemStack)component;
                                                        if (AdvancedShapedRecipes.areItemStacksEquals(itemstack, itemstack1))
                                                        {
                                                            flag = true;
                                                            arraylist.remove(itemstack1);
                                                            break;
                                                        }
                                                     }
                                                    }
                                                    if (!flag)
                                                     return false;
                                                }
                                            }
                                        }
                                        return arraylist.isEmpty();
                                    }
                                

                                J’ai pas trop compris.</itemstack>

                                Mes Sites(Mes Sites)
                                |
                                |    Site général : Game & play
                                |   Site de projets (en dev !) :Infinite's Ressources
                                J'ai et je suis content d'avoir 16,75 points d'ICRating

                                1 réponse Dernière réponse Répondre Citer 0
                                • AymericRedA Hors-ligne
                                  AymericRed
                                  dernière édition par

                                  Oui exactement (sinon tu peux regarder cette fonction dans le tuto je l’ai changée).

                                  Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                  AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                  Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                  Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • InfiniteI Hors-ligne
                                    Infinite
                                    dernière édition par

                                    Merci beaucoup  😄

                                    Mes Sites(Mes Sites)
                                    |
                                    |    Site général : Game & play
                                    |   Site de projets (en dev !) :Infinite's Ressources
                                    J'ai et je suis content d'avoir 16,75 points d'ICRating

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • SnykerS Hors-ligne
                                      Snyker
                                      dernière édition par

                                      Bonjour,

                                      Version de forge : 1.11.2

                                      Crash :
                                      latest : https://hastebin.com/palugowara.vbs
                                      fml : https://hastebin.com/tefohojewu.sql

                                      Problème 1 :
                                      En suivant le tutoriel comme indiqué ci-dessus, j’ai du toucher à quelques petites choses pour l’adapter en 1.11.2, hier soir (jusqu’à tard), mon code fonctionner et je n’avais pas ce crash [J’ai enlever la TileEntity et si je la remet je n’est plus de crash], hors en faisant cela, mes recettes de crafts ne fonctionne absolument pas, je n’avais aucun craft qui pouvais être utiliser.

                                      Problème 2 :
                                      Si je supprime ma TileEntity, le crash est le suivant (Voir au dessus), cela ce passe dès que je met un item dans ma table de craft, minecraft crash. En revanche je peux bel et bien m’amuser dans les slots de l’inventaire.

                                      Voici mes classes :

                                      PolishTableBlock : https://hastebin.com/zipiyobomi.scala

                                      ContainerPolishTable : https://hastebin.com/fihamaxaro.java

                                      PolishSlotCrafting : https://hastebin.com/iwesuxosex.cpp

                                      [Gui]
                                      GuiHandler : https://hastebin.com/keyefabuba.java
                                      GuiPolishTable : https://hastebin.com/asezayutop.scala

                                      [Crafting]
                                      CraftingManager : https://hastebin.com/tipogelale.js
                                      ShapedRecipe : https://hastebin.com/xizerubaqi.java
                                      ShapelessRecipe : https://hastebin.com/gowaheziko.java

                                      Merci de m’aider car la je bloque x).

                                      Aucune signature n'est disponible pour une barre chocolatée.

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • AymericRedA Hors-ligne
                                        AymericRed
                                        dernière édition par

                                        Salut,

                                        Pour le problème de crash, cela vient de là : “this.addSlotToContainer(new Slot(craftMatrix, x + 1 * craftWidth, 38/2 + (x * 18), yCraft));” (classe du Container) et plus précisément de “x + 1 * craftWidth”, cela va donner des ids entre 8 et 16, alors que la craftMatrix a une taille de 0 à 8 avec les arguments que tu lui donne, il faut donc changer les ids que tu donnes à ces slots.

                                        Pour le problème des recettes non fonctionnelles, si tu l’as toujours par la suite, tu me diras et je regarderais de mon côté avec ton code essayer de faire marcher ça.

                                        Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                        AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                        Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                                        1 réponse Dernière réponse Répondre Citer 1
                                        • SnykerS Hors-ligne
                                          Snyker
                                          dernière édition par

                                          Merci de ta réponse !

                                          En effet maintenant je peux replacer mes items dans la table, sauf que les recettes ne marche pas, j’ai du modifier à peux prêt toutes les classes des recettes et du craftingmanager en fonction du workbench de minecraft et j’ai bien le recettes qui marche, à partir de là j’ai juste à modifier mon code comme je le veux. (Faires des crafts avec des items qui ont x > 1 en quantités)

                                          Je te remercie 🙂

                                          Aucune signature n'est disponible pour une barre chocolatée.

                                          1 réponse Dernière réponse Répondre Citer 0
                                          • Mysterious_DevM Hors-ligne
                                            Mysterious_Dev
                                            dernière édition par Mysterious_Dev

                                            Ce message a été supprimé !
                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 4 / 5
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB