MFF

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

    Créer un bloc avec des metadatas

    Planifier Épinglé Verrouillé Déplacé Les blocs
    1.7.x
    44 Messages 9 Publieurs 24.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.
    • Phenix246P Hors-ligne
      Phenix246 Rédacteurs
      dernière édition par

      Mon site web est down et j’ai pas encore re-upload toutes les images

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

        J’aurais une question par rapport au sujet principal, j’ai regardez la vidéo youtube, j’ai saise que les métadata permettait de “économiser” les ID, ou faire genre des porte (fermé c’est un bloc, ouvert s’en est un autre), ça j’ai piger

        la vient ma question, en faite j’aimerais faire en sorte qu’un block drop autre chose
        (exemple block redstone, drop poudre redstone),

        qu’elle rapport avec les metadata ?

        (dans customisation du block, j’ai vue une ligne de code, avec (int metadata))
        d’ou ma question ^^

        ensuite 2 ème question,
        dans la vidéo à 14min il dis
        “i = 0 (égal)”

        es qu’il pense à une affectation ? ou vraiment à faire = ?

        je débute dans le modding, soyez gentil avec les coups de fouet 🙂

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

          Tu peux faire dropper des trucs différents selon la metadata du bloc
          Exemple : le bloc jeSuisUnBloc drop des melons si il a la metadata 0, des citrouilles si il a une metadata 1…

          Moddeur à la retraite et développeur de trucs en Java.

          J'aide les gens comme je peux, alors si mon message v…

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

            oooooh ok je vois merci à toi 🙂

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

              Pour l’affectation (oui c’est une affectation), c’est juste pour la boucle for c’est la valeur qui va être incrémentée. Elle est ensuite utilisée pour le code dans la boucle. Si tu ne comprends pas la boucle for regarde sur google 🙂

              Moddeur à la retraite et développeur de trucs en Java.

              J'aide les gens comme je peux, alors si mon message v…

              1 réponse Dernière réponse Répondre Citer 2
              • A Hors-ligne
                anguelwyvern
                dernière édition par

                en faite j’étudie en ce moment même les boucle, et j’avais un doute.

                encore une fois merci, je me doutais de la chose, mais je voulais être sur ^^

                dernière question si je veux faire en sorte que un block drop autre chose (genre redstone et poudre redstone)
                il lui faut obligatoirement des metadata ?

                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

                  Non, pas besoin. Le paramètre metadata sert uniquement à faire des conditions pour droper quelque chose de différent en fonction du metadata, mais si tu n’as pas de metadata il suffit juste de ne pas mettre de condition et c’est bon.

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

                    ok merci

                    PS: sa y est c’est bon j’ai réussi a faire drop mes minerai en les minant, merci beaucoup pour vos réponse

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

                      Bonsoir ! Voilà je viens juste poser une petite question 🙂

                      Voilà, je suis débutant et je voudrais comprendre quelque chose, je ne comprends pas comment utiliser les metadata après.

                      Par exemple pour la génération de minerais à un moment il faut entrer un metadata :

                      this.addOreSpawn(…

                      Ce que je n’arrive pas à comprendre c’est que une fois que j’ai suivis le tutoriel comment définir les metadata ? Comment savoir quel numéro appartient à quel metadata ?

                      J’espère que vous allez arriver à comprendre ce que je veux dire car c’est très flou … x)

                      Merci d’avance à tous ! 😉

                      Cordialement, Polygon48

                      1 réponse Dernière réponse Répondre Citer 0
                      • Phenix246P Hors-ligne
                        Phenix246 Rédacteurs
                        dernière édition par robin4002

                        regarde la tableau :

                        public static String[] subBlock = new String[] {"block1", "block2", "block3", "block4"};
                        

                        “block1” est le metadata 0, “block2” est le metadata 1, pour faire simple leur position dans le tableau définie leur metadata.

                        Si ça ne répond pas à ta question, donne nous plus de détails sur ce que tu veux faire, que l’on puisse t’aider

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

                          @‘Phenix246’:

                          regarde la tableau :

                          public static String[] subBlock = new String[] {"block1", "block2", "block3", "block4"};
                          

                          :

                          “block1” est le metadata 0, “block2” est le metadata 1, pour faire simple leur position dans le tableau définie leur metadata.

                          Si ça ne répond pas à ta question, donne nous plus de détails sur ce que tu veux faire, que l’on puisse t’aider

                          C’était exactement cela !
                          Du coup au passage j’en profite :p, si je veux que mon Block1 drop un item que j’ai créé (par exemple une épée) comment je dois faire ?
                          Et aussi, imaginons que je créer encore une nouvelle sorte de bloc, je vais donc recréer des metadata, du coup comment je vais devoir faire, car si dans le tableau de mon block je suis l’ordre -> Block1 = metadata 0, block2 = metadata 1 et que je m’arrête au bloc 4 donc block4 = metadata 3, dans ma nouvelle classe pour ma deuxième sorte de bloc je reprends dans l’ordre ou je m’étais arrêté dans l’autre ? Du coup : le bloc1 = metadata 4 ?

                          Merci encore pour ta réponse ! 🙂

                          Cordialement, Polygon48

                          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

                            Non, si tu fais un autre bloc, ça reprend à 0. Chaque bloc a ces metadata.
                            Pour les drop il faut passer par la fonction getItemDropped

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

                              @‘robin4002’:

                              Non, si tu fais un autre bloc, ça reprend à 0. Chaque bloc a ces metadata.
                              Pour les drop il faut passer par la fonction getItemDropped

                              D’accord d’accord !

                              Dernière question et merci d’ailleurs pour toutes ses réponses !

                              Du coup lors de la génération de minerais, dans la méthode :

                              
                              (new WorldGenMinable(ModTutoriel.TutorialMetadata.blockID, 5, 12, Block.stone.blockID)).generate(world, rand, x + rand.nextInt(16), 16 + rand.nextInt(32), z + rand.nextInt(16));
                              

                              Ici on a

                              
                              ModTutoriel.TutorialMetadata.blockID
                              

                              Quand j’aurais finis de créer ma classe avec mes metadata, le blockId sera le nom du bloc définis dans le tableau et le metadata celui de celui-ci ?
                              Merci encore 🙂

                              Cordialement, Polygon48

                              1 réponse Dernière réponse Répondre Citer 0
                              • Phenix246P Hors-ligne
                                Phenix246 Rédacteurs
                                dernière édition par

                                vieux système en 1.7 les “.blockID” ont totalement disparu :

                                (new WorldGenMinable(ModTutoriel.TutorialMetadata, 5, 12, Blocks.stone)).generate(world, rand, x + rand.nextInt(16), 16 + rand.nextInt(32), z + rand.nextInt(16));
                                
                                1 réponse Dernière réponse Répondre Citer 0
                                • Polygon48P Hors-ligne
                                  Polygon48
                                  dernière édition par

                                  @‘Phenix246’:

                                  vieux système en 1.7 les “.blockID” ont totalement disparu :

                                  (new WorldGenMinable(ModTutoriel.TutorialMetadata, 5, 12, Blocks.stone)).generate(world, rand, x + rand.nextInt(16), 16 + rand.nextInt(32), z + rand.nextInt(16));
                                  

                                  Merci beaucoup !
                                  Enfin grâce à vous j’ai réussi !

                                  Dernière dernière question après je n’embête plus !

                                  Pour le drop Robin ma dit d’utiliser getItemDropped, j’ai essayé plusieurs chose mais je ne trouve pas comment dropper un block, par exemple if metata = 1 on return Monmod.Item1

                                  Cordialement, Polygon48

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • Phenix246P Hors-ligne
                                    Phenix246 Rédacteurs
                                    dernière édition par

                                    public Item getItemDropped(int metadata, Random rand, int fortune)
                                    {
                                    return metadata == 1 ? Monmod.Item1 : Item.getItemFromBlock(this);
                                    }
                                    
                                    public int damageDropped(int metadata)
                                    {
                                    return metadata == 1 ? "damage" : 1;
                                    }
                                    
                                    public int quantityDropped(int metadata, int fortune, Random par3Random)
                                    {
                                    return "nombre d'items"
                                    }
                                    

                                    Je te donne en plus deux autre méthode dont tu peux avoir besoin (la damage de l’item que tu drop et la quantité dropé)

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

                                      @‘Phenix246’:

                                      public Item getItemDropped(int metadata, Random rand, int fortune)
                                      {
                                      return metadata == 1 ? Monmod.Item1 : Item.getItemFromBlock(this);
                                      }
                                      
                                      public int damageDropped(int metadata)
                                      {
                                      return metadata == 1 ? "damage" : 1;
                                      }
                                      
                                      public int quantityDropped(int metadata, int fortune, Random par3Random)
                                      {
                                      return "nombre d'items"
                                      }
                                      

                                      Je te donne en plus deux autre méthode dont tu peux avoir besoin (la damage de l’item que tu drop et la quantité dropé)

                                      Merci encore pour toute ton aide ! 😄

                                      Cordialement, Polygon48

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

                                        Bonjour c’est possible d’utiliser les metadatas pour des blocks techne ?

                                        Tout probleme a sa solution, s'il n'y a pas de solution c'est qu'il n'y a pas de problemes

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • Phenix246P Hors-ligne
                                          Phenix246 Rédacteurs
                                          dernière édition par

                                          oui bien sûr, mais comme tu utilise obligatoirement un tileEntity, ça ne sert pas à grand chose, après tout dépend de ce que tu veux faire, en tout cas oui tu peux les utiliser

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

                                            Je voudrait que le bloc soit différent suivant ce qu’il y a autour 
                                            si a x+1, y, z il y a un block pipe alors metadata 1 par exemple

                                            Tout probleme a sa solution, s'il n'y a pas de solution c'est qu'il n'y a pas de problemes

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB