MFF

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

    Création d'un mod avec un backpack

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    15 Messages 4 Publieurs 1.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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Salut,
      NetworkRegistry.INSTANCE.registerGuiHandler(INSTANCE, new EmotionGuiHandler());
      devrait être :
      NetworkRegistry.INSTANCE.registerGuiHandler(instance, new EmotionGuiHandler());

      et doit être directement dans la fonction init, pas à l’intérieur du if(event.getSide().isClient())
      (et donc là ton gui handler sera enregistré correctement).

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

        Bonjour, tout d’abord merci à toi robin, je n’avais pas vu que j’etais dans le if.
        et je me demandais coment je peux interdire d’avoir 2backpack à la fois dans l’inventaire.
        je pensais faire:
        public void (ItemStack itemstack, EntityPlayer player, List list, boolean)
        {
        if (ItemStack = null)
        {
        String owner = ItemStack (“interdit”)
        list.add(EnumChatFormatting.RED + owner);
        }

        est-il possible de m’aider car je n’arrive pas à completer le code 😕

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

          /**
          * Prevents backpack-ception
          */
          @Override
          public boolean isItemValidForSlot(int index, ItemStack stack) {
          return !(stack.getItem() instanceof ItemBackPack);
          }
          

          Faudrait chercher sur le fofo, c’était mis noir sur blanc dans ce tuto : https://www.minecraftforgefrance.fr/showthread.php?tid=2197&highlight=backpack

          Oui ce gif est drôle.

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

            Bonjour, ce n’est pas de cela que je parle (tu le saurais si tu avais lu mon message comme il faut) je parle du fait d’avoir 2 backpack dans ton inventaire (pas un backpack dans un backpack)

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

              Alors je ne comprends pas vraiment le sens de la fonction que tu as faite, mais c’est qu’il faut, c’est une boucle for qui parcourt tout l’inventaire du joueur, et si un sac est rencontré ça incrément une variable. Tu peux placer ce for dans la fonction “onUpdate” ou “update” je sais plus de ton item.
              Ensuite si ta variable >= 2 tu fais quelque chose comme looter le sac au sol ou mettre un message adéquat.

              Si tu veux plus d’aide/détails fais d’abord une recherche ce sujet a déjà été traité de nombreuses fois.

              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
              • FlowF Hors-ligne
                Flow
                dernière édition par

                @‘Zoulette’:

                Bonjour, ce n’est pas de cela que je parle (tu le saurais si tu avais lu mon message comme il faut) je parle du fait d’avoir 2 backpack dans ton inventaire (pas un backpack dans un backpack)

                En soit quand tu dis l’inventaire, pour moi c’est l’inventaire du backpack. Du coup oui tu dois faire comme Aymeric t’as dis.

                Oui ce gif est drôle.

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

                  Bonjou, je n’ai aucun update ou onupdate, j’ai juste OnItemRightClick

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

                    C’est normal il faut que tu l’implémentes (= ajoute), va dans la classe de l’item, commence à taper “update” et fais ctrl+space eclipse te proposera.

                    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
                    • Z Hors-ligne
                      Zoulette
                      dernière édition par

                      ReBonjour, je suis désole mais la depuis tout a lh’eur je cherche comment faire, donc j’ai creer ma boucle for et je cherche sur tous le forum pour check l’inventaire mais je trouve absolument rien Oo

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

                        Pour parcourir l’inventaire du player ca doit être assez simple, personnellement je fais comme ceci pour l’inventaire de mes propres blockContainer 🙂

                        
                               for(int i = 0; i < player.inventory.getSizeInventory(); i++) //Boucle ou l'on crée une variable i qui représente les slots de l'inventaire du joueur
                                {
                                 if(player.inventory.getStackInSlot(i) != null) //Si le slot n'est pas null alors on passe au prochain
                                  {
                                   if(player.inventory.getStackInSlot(i).getItem() instanceof TonItemBackPack) //Si l'item dans le slot est l'instance de ton item alors tu exécutes quelque chose
                                   {
                                      /* Ce que tu dois éxécuter */
                                   }
                                  }
                                 }
                        
                        

                        C’est une piste il faut améliorer.

                        Oui ce gif est drôle.

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

                          Merci, j’y vois un peu plus clair, malgré tout quelque chose reste obscurs Oo c’est le player.inventory
                          tu as créer une class player?

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

                            Re ! Donc j’ai demander à Robin (grand merci à lui de m’avoir éclairer :p)

                            Mais effectivement comme il me l’as dit il est préférable de passer par l’évent PlayerTickEvent car avec le OnUpdate côté client il pourra être contourné du coup c’est préférable de passer ça côté serveur je te conseille ce tutoriel pour te créer une classe Event (https://www.minecraftforgefrance.fr/showthread.php?tid=4207) et ensuite y ajouter cet event

                            
                            @SubscribeEvent
                            public void tickEvent(PlayerTickEvent event)
                            {
                            EntityPlayer player = event.player; //Tu récupères le player par l'event
                            if(player.inventory.hasItem(TonItem)) //Pour finir BrokenSwing (merci :p) m'a parler d'un fonction qui existe pour vérifier si le joueur à l'item, donc tu remplaces "TonItem" par ton item x)  
                                {  
                                }
                            }
                            
                            

                            Oui ce gif est drôle.

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

                              Re ! Donc j’ai demander à Robin (grand merci à lui de m’avoir éclairer :p)

                              Mais effectivement comme il me l’as dit il est préférable de passer par l’évent PlayerTickEvent car avec le OnUpdate côté client il pourra être contourné du coup c’est préférable de passer ça côté serveur je te conseille ce tutoriel pour te créer une classe Event (https://www.minecraftforgefrance.fr/showthread.php?tid=4207) et ensuite y ajouter cet event

                              
                              @SubscribeEvent
                              public void tickEvent(PlayerTickEvent event)
                              {
                              EntityPlayer player = event.player; //Tu récupères le player par l'event
                              if(player.inventory.hasItemStack(new ItemStack(TonItem))) //Pour finir BrokenSwing (merci :p) m'a parler d'un fonction qui existe pour vérifier si le joueur à l'item, donc tu remplaces "TonItem" par ton item x)  
                                  {  
                                  }
                              }
                              
                              

                              Oui ce gif est drôle.

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

                                j’ai un petit problème, j’ai utilisé ton code (merci au passage) mais rien ne se passe.
                                https://pastebin.com/cqMxBgmi

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

                                MINECRAFT FORGE FRANCE © 2024

                                Powered by NodeBB