MFF

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

    [Inventaire personnalisé] Par ou commencer

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    27 Messages 5 Publieurs 6.5k Vues 1 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.
    • SCAREXS Hors-ligne
      SCAREX
      dernière édition par

      Car tu dois avoir un NBTList au lieu d’un NBTBase, donc tu dois faire compound.getTagList(tagName, 10)

      Site web contenant mes scripts : http://SCAREXgaming.github.io

      Pas de demandes de support par MP ni par skype SVP.
      Je n'accepte sur skype que l…

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

        J’arrive à quelque chose comme ça du tout mais ca me semble faux :

        public void readFromNBT(NBTTagCompound compound)
           {
               NBTTagList items = compound.getTagList(tagName, 10);
        
               for (int i = 0; i < items.tagCount(); ++i)
               {
                   NBTTagCompound item = (NBTTagCompound) items.getCompoundTagAt(i);
                   byte slot = item.getByte("Slot");
        
                   if (slot >= 0 && slot < getSizeInventory()) {
                       inventory[slot] = ItemStack.loadItemStackFromNBT(item);
                   }
               }
           }
        

        Je n’ai plus l’erreur au tagCount, même si eclipse me dit qu’elle n’est pas utilisée, je vois pas trop ce que j’ai loupé

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

          Qu’est-ce qui n’est pas utilisé ?

          Site web contenant mes scripts : http://SCAREXgaming.github.io

          Pas de demandes de support par MP ni par skype SVP.
          Je n'accepte sur skype que l…

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

            Trop de choses que je comprend pas dans le tutoriel que j’ai suivi, de plus il est en 1.6.4, je reprend tout et je ferais une liste de ce qui me bloque ou ce que je comprend pas…

            Et c’était tagCount qui n’était pas utilisé

            Ok du coup je reprend tout à partir des classes de bases et en m’aidant d’un mod existant mais quelqu’un sait ou je peux trouver des exemples sans les func_16424_d (exemple), car je ne sait pas trop quoi mettre dans ma fonction “markDirty()”

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

              hein ? Tu as copié des mods avec des noms obfusqués ?

              Site web contenant mes scripts : http://SCAREXgaming.github.io

              Pas de demandes de support par MP ni par skype SVP.
              Je n'accepte sur skype que l…

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

                Bah j’ai demandé a un mec le mod qu’il utilisait sur son ancien serveur pour voir à quoi il ressemblait et il me l’a filé mais sous forme de mod, du coup il m’a conseillé d’utiliser jd-gui pour le lire.

                EDIT : Je cherche donc toujours une fonction de base markDirty() que je pourrais modifier pour qu’elle corresponde à ce que je cherche et je n’ai toujours pas trouvé de solution pour le “tagAt” :

                public void readFromNBT(NBTTagCompound compound)
                   {
                     NBTTagList items = compound.func_150295_c("CustomInvTag", compound.tagAt());
                     for (int i = 0; i < items.tagCount(); i++)
                     {
                       NBTTagCompound item = items.tagAt(i);
                       byte slot = item.getByte("Slot");
                       if ((slot >= 0) && (slot < getSizeInventory ())) {
                         this.inventory[slot] = ItemStack.loadItemStackFromNBT(item);
                       }
                     }
                   }
                

                L’erreur : The method tagAt() is undefined for the type NBTTagCompound

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

                  Pour retrouver les bons noms, tu peux utiliser BON2 (disponible sur github).

                  Regarde plutôt les tutoriels disponibles sur le forum pour ce genre de choses car ils sont mieux faits ici

                  Site web contenant mes scripts : http://SCAREXgaming.github.io

                  Pas de demandes de support par MP ni par skype SVP.
                  Je n'accepte sur skype que l…

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

                    @‘SCAREX’:

                    Pour retrouver les bons noms, tu peux utiliser BON2 (disponible sur github).

                    Regarde plutôt les tutoriels disponibles sur le forum pour ce genre de choses car ils sont mieux faits ici

                    Je vais voir ça, je n’ai pas trouvé de tutoriel pour ça mais je vais re-chercher

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

                      https://www.minecraftforgefrance.fr/showthread.php?tid=2082
                      https://www.minecraftforgefrance.fr/showthread.php?tid=2017

                      Site web contenant mes scripts : http://SCAREXgaming.github.io

                      Pas de demandes de support par MP ni par skype SVP.
                      Je n'accepte sur skype que l…

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

                        @‘SCAREX’:

                        https://www.minecraftforgefrance.fr/showthread.php?tid=2082
                        https://www.minecraftforgefrance.fr/showthread.php?tid=2017

                        Ah oui je les avaient vus mais ils correspondent pas vraiment à ce que je veux.

                        Sinon entre temps j’ai repris tout le code qu’on m’avait donné grâce à BON2 en le modifiant à ma sauve mais j’ai des erreurs au lancement que je comprend pas trop, si quelqu’un veut bien se dévouer pour me les “traduire”, ce serait super gentil.

                        http://pastebin.com/5r9iVABN     (sous pastebin car c’est long)

                        J’ai vu que ca avait l’air de planter avec les ChannelPipeline (un doublon ? je n’en ai pas vu) voici donc le code de PacketPipeline : http://pastebin.com/4FySm6x7

                        Je ne sait pas si cela peut aider mais j’ai aussi AbstractPacket pour les Packets donc voici son code (d’ailleurs, dans Eclipse dans mon Package Explorer, à gauche j’ai un petit A en haut à droite de la feuille de code) 
                        http://pastebin.com/E8cZ6Weg

                        Merci d’avance !

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

                          Quelle est la version de minecraft d’où vient ce code ?

                          Site web contenant mes scripts : http://SCAREXgaming.github.io

                          Pas de demandes de support par MP ni par skype SVP.
                          Je n'accepte sur skype que l…

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

                            @‘SCAREX’:

                            Quelle est la version de minecraft d’où vient ce code ?

                            1.7.10

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

                              Essaie avec cette méthode pour les paquets : https://www.minecraftforgefrance.fr/showthread.php?tid=1118

                              Site web contenant mes scripts : http://SCAREXgaming.github.io

                              Pas de demandes de support par MP ni par skype SVP.
                              Je n'accepte sur skype que l…

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

                                @‘SCAREX’:

                                Essaie avec cette méthode pour les paquets : https://www.minecraftforgefrance.fr/showthread.php?tid=1118

                                Mais du coup pourquoi tout refaire ? Peut etre que c’est juste un petit truc qui bloque quoi

                                Edit : j’ai trouvé les deux lignes qui posent problème :

                                Dans ma classe qui principale de l’inventaire :

                                @Mod.EventHandler
                                   public void init(FMLInitializationEvent event)
                                   {
                                     proxy.registerRender();
                                     PacketPipeline.initialise();
                                     MinecraftForge.EVENT_BUS.register(new DCEDOEventHandler());
                                     FMLCommonHandler.instance().bus().register(new DCEDOEventHandler());
                                     NetworkRegistry.INSTANCE.registerGuiHandler(this, new DCEDOCommonProxy());
                                   }
                                
                                la ligne :       PacketPipeline.initialise();
                                

                                Dans ma classe PacketPipeline :

                                   public void initialise()
                                   {
                                     this.channels = NetworkRegistry.INSTANCE.newChannel("DCEDOInventory", new ChannelHandler[] { this });      
                                     registerPackets();
                                   }
                                
                                la ligne :       this.channels = NetworkRegistry.INSTANCE.newChannel("DCEDOInventory", new ChannelHandler[] { this });      
                                

                                Je sais que c’est elle qui posent problème car dans la console lors du crash est affiché :

                                at fr.shyfe.dcedo.common.PacketPipeline.initialise(PacketPipeline.java:94) ~[bin/:?]

                                at fr.shyfe.dcedo.common.DCEDOInventory.init(DCEDOInventory.java:38) ~[bin/:?]

                                Et ce sont les seuls qui viennent de moi.

                                1 réponse Dernière réponse Répondre Citer 0
                                • robin4002R Hors-ligne
                                  robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                  dernière édition par

                                  Pourquoi tout refaire ?
                                  Car ce système de paquet cause une fuite de mémoire.
                                  Il est mal conçu.

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

                                    @‘robin4002’:

                                    Pourquoi tout refaire ?
                                    Car ce système de paquet cause une fuite de mémoire.
                                    Il est mal conçu.

                                    Oui je vois, je vais essayer alors

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

                                      J’ai plusieurs problèmes avec mon inventaire personnalisé:
                                      -Quand on clique sur un items pour le déplacer, il est directement remis à sa place donc impossible de déplacer les items et si on fais clique molette et qu’on met un objet dans un autre slot et puis qu’on clique dessus, il disparait
                                      -Quand j’arrive à mettre un item dans un de mes slots perso, quand je ferme l’inventaire il est droppé

                                      Merci d’avance 🙂

                                      Minantcraft ;)

                                      >! Binary Dimension
                                      [url=https://minecraft.cu…

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • 1
                                      • 2
                                      • 2 / 2
                                      • Premier message
                                        Dernier message
                                      Design by Woryk
                                      ContactMentions Légales

                                      MINECRAFT FORGE FRANCE © 2024

                                      Powered by NodeBB