MFF

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

    Un mob tenant un item dans sa main (Simple/Avancé)

    Planifier Épinglé Verrouillé Déplacé Les entités
    1.6.x
    36 Messages 5 Publieurs 14.4k 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.
    • elias54E Hors-ligne
      elias54 Administrateurs
      dernière édition par robin4002

      Dans ce tutoriel nous allons apprendre à ajouter un item dans la main gauche de votre mob.
      Il y aura deux modes pour ce tutoriel : Simple | Avancé

      Pourquoi “Simple” et “Avancé” ?
      -Et bien “simple” signifie que nous allons ajouter SIMPLEMENT, UN SEUL ITEM dans la main de votre mob. Ensuite, pour le mode avancé, nous allons apprendre à faire en sorte que votre mob aie un item aléatoire dans sa main. ^^

      Simple

      Pour commencer, vous devez déclarer cette variable (je ne vais pas vous dire où :D) :

      private static final ItemStack defaultHeldItem;
      

      Maintenant, nous allons créer une fonction dans notre classe comme ceci :

      public ItemStack getHeldItem()
      {
          return defaultHeldItem;
      }
      

      Oui nous n’avons pas encore initialisé notre variable et nous l’appelons déjà dans la méthode…
      Et bien qu’attendons-nous ? C’est parti ! Où vous voulez, dans votre classe (de préférence en bas de classe), ajoutez ce code :

      static
      {
          defaultHeldItem = new ItemStack(Item.diamond, 1);
      }
      

      Et voilà. 😄

      *Qu…Quoi, c’est déjà fini ? *
      *-Concrètement, oui. Mais il s’agit du mode simple item (ou mode OneItem :D), maintenant nous allons nous attaquer au mode avancé ! 😛 *

      Avancé

      Pourquoi “Avancé” ?
      -Nous allons créer un tableau où le mob va utiliser un item aléatoire du tableau.

      Donc pour se faire, nous allons créer deux variables :

      public static ItemStack equippedItems[];
      public int currentItem;
      

      et dans le constructeur de votre mob, initialisez l’Integer :

      currentItem = rand.nextInt(equippedItems.length);
      

      Là, nous venons d’indiquer ce que doit faire le mob, c’est à dire : Prendre un item aléatoire dans le tableau, MAIS, NOUS DEVONS INITIALISER NOTRE TABLEAU !

      Pour se faire (ou ce faire, j’ai un trou :s), rien de plus simple, de la même manière que la méthode “Simple”, créez un static dans votre classe comme ceci :

      static
      {
          equippedItems = (new ItemStack[]
          {
              new ItemStack(Block.torchWood, 1), new ItemStack(Item.pickaxeStone, 1), new ItemStack(Item.hoeDiamond, 1), new ItemStack(Item.axeIron, 1), new ItemStack(Item.swordIron, 1)
          });
      }
      

      Votre mob va donc maintenant prendre un item aléatoire à chaque spawn, dans ce tableau !
      Attendez ! Nous avons oublié quelque chose ! ^^
      Il ne faut pas oublier de dire à votre mob qu’il a un item à porter, eh oui ! Sinon, ça ne fonctionnera pas. xD

      public ItemStack getHeldItem()
      {
          return equippedItems[currentItem];
      }
      

      Et pour finir, la sauvegarde dans l’NBTTagCompound !

      public void writeEntityToNBT(NBTTagCompound nbttagcompound)
      {
          nbttagcompound.setInteger("equippedItem", currentItem);
          super.writeEntityToNBT(nbttagcompound);
      }
      
      public void readEntityFromNBT(NBTTagCompound nbttagcompound)
      {
          currentItem = nbttagcompound.getInteger("equippedItem");
          super.readEntityFromNBT(nbttagcompound);
      }
      

      Et voilà, nous en avons fini pour ce tutoriel ! 😄
      Je n’ai malheureusement pas de screens sous la main, mais autant voir votre PROPRE résultat ! 🙂
      Si vous avez des questions, n’hésitez pas ! ^^
      Bye ~

      Mon site | GitHub

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

        Moi sa ne marche pas 😕
        Le mob ne tient pas d’item mais il donne des coups circulaires maintenant …

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

          nono1507 tu es en quelle version ? je peut t’aider

          Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
          Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

            Merci je suis en 1.6.4

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

              Ok alors… Passe moi la classe de l’entitée

              Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
              Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                Voila : http://pastebin.com/446ne3Lp
                Merci beaucoup pour ton aide 🙂

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

                  De rien 😉 Je m’y attelle de suite 🙂


                  Tiens !
                  http://pastebin.com/rv73qZxH

                  Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                  Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                    Excuse moi j’avais pas vu le petit “Tiens !” en dessous XD
                    Merci mais eclipse me souligne “setCurrentItemOrAmor” maintenant 😕

                    EDIT:
                    C’est réparé : Tu avais oublié le R de “OrARomr” par contre mon mob spawn plus 😕

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

                      Pourquoi ? C’est quoi l’erreur ?

                      Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                      Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                        Il y en a aucune mais quand j’utilise l’oeuf , la console m’affiche ceci :

                        http://pastebin.com/dsG0TqUa

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

                          On va faire ça autrement :
                          http://pastebin.com/PGJYhiDw

                          Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                          Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                            Cette fois ci il spawn mais pas d’épéee XD

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

                              x) Sérieux ? Passe moi tes logs et la classe où est enregistré l’item stp 😛

                              Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                              Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                                Ok les voici :
                                Class principale
                                Class de l’item
                                Class du mob : Entity , Render
                                La console
                                Client Proxy

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

                                  J’ai trouvé ! Enfin 😛

                                  Tu déclare ton entité avant ton épée, ce qui fait bugger 😛

                                  Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                                  Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                                    Non toujours pas 😕
                                    class principale apres le changement: http://pastebin.com/KmdqzELe

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

                                      Je vois pas le problème, essaie de tout mettre dans le pré-init pour voir 😞

                                      Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                                      Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • isadorI Hors-ligne
                                        isador Moddeurs confirmés Modérateurs
                                        dernière édition par

                                        donne l’épée a ton mob ajoute System.out.println(“test”); et regarde si sa te le marque

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

                                          Meme quand je déplace tout dans le PreInit sa ne marche pas 😕

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

                                            Et là y a Robin qui vient, qui nous trouve en train de nous enfoncer et il sort la solution en quelques secondes x)

                                            Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                                            Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

                                            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