MFF

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

    Bloc avec la même fonction que l'herbe

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    35 Messages 3 Publieurs 4.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

      Pas besoin de créer un booléen si c’est pour le retourner juste après :
      return plantable.getPlantable(world, x, y + 1, z)== EnumPlanType.Biome;

      Après tout dépend de la condition que tu veux mais juste ça suffit

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

        voila ce que j’ai

        class BiomeBlock ```java
        package fr.craftesys.craftesys.blocs;

        import fr.craftesys.craftesys.common.Mods;
        import net.minecraft.block.Block;
        import net.minecraft.block.BlockBush;
        import net.minecraft.block.BlockSapling;
        import net.minecraft.block.material.Material;
        import net.minecraft.init.Blocks;
        import net.minecraft.world.IBlockAccess;
        import net.minecraftforge.common.EnumPlantType;
        import fr.craftesys.craftesys.generation.EnumPlanType;
        import fr.craftesys.craftesys.generation.Plantable;
        import net.minecraftforge.common.IPlantable;
        import net.minecraftforge.common.util.ForgeDirection;

        public class BiomeBlock extends Block  
        {

        public BiomeBlock(Material material) {

        super(material);

        }

        public boolean canSustainPlant(IBlockAccess world, int x, int y, int z, ForgeDirection direction,
        Plantable plantable) {

        return plantable.getPlantable(world, x, y + 1, z)== EnumPlanType.Biome;

        }
        }

        
        class Plantable : ```java
        package fr.craftesys.craftesys.generation;
        
        import net.minecraft.block.Block;
        import net.minecraft.world.IBlockAccess;
        import net.minecraftforge.common.EnumPlantType;
        
        public interface Plantable
        {
        
           public EnumPlanType getPlantable(IBlockAccess world, int x, int y, int z);
           public Block getPlant(IBlockAccess world, int x, int y, int z);
           public int getPlantMeta(IBlockAccess world, int x, int y, int z);
        }
        
        

        class EnumPlanType ```java
        package fr.craftesys.craftesys.generation;

        public enum EnumPlanType {

        Biome,
        }

        
        mais ça veut toujours pas
        1 réponse Dernière réponse Répondre Citer 0
        • S Hors-ligne
          sventus
          dernière édition par

          Après plusieurs tests, rien ne change …

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

            Normal, je suppose que tu ne sais pas ce que tu fais ? Pourquoi créer une classe Plantable et un EnumPlantType, le principe d’une fonction et d’être générale, ici tu ne ré-écris pas la fonction de Minecraft puisque ce ne sont pas les bons paramètres : supprime ces 2 classes inutiles, ensuite supprime ta fonction et fait Alt + shift + S puis Override/Implement methods et trouve la fonction canSustainPlant, une fois ça fait tu devrais voir l’annotation @Override apparaître au-dessus de ta fonction, il ne faut jamais la retirer (si eclipse te demande de la retirée c’est que tu as modifié le nom ou les paramètres de ta fonction). Une fois que tout ça est fait tu peux mettre ton code dedans

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

              je comprend ce que tu veux dire, mais le problème c’est que, si je mets cela :

              @Override
              public boolean canSustainPlant(IBlockAccess world, int x, int y, int z, ForgeDirection direction,
              IPlantable plantable) {

              if (plantable == Blocks.sapling && this == Blocks.sapling)
              {
              return plantable.getPlant(world, x, y + 1, z)== EnumPlantType.Biome;

              }

              return super.canSustainPlant(world, x, y, z, direction, plantable);
              }

              en suivant ce que tu me dis, le “Biome” n’est pas reconnu car il n’existe pas dans le EnumPlantType de base.

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

                Je crois que l’on peut utiliser une fonction du EnumHelper de Forge qui ajoute des entrées à lenum souhait (via réflexion), il faut refzrder de ce côté.

                Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk

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

                  C’est normal il existe pas, pourquoi tu veux mettre cette valeur là ?

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

                    bah c’est pour ajouter mon bloc, que la pousse d’arbre puisse se poser sur mon bloc

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

                      mais juste, le EnumHelper, ce n’est pas pour les armures et outils ?

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

                        Tu peux faire avec toutes les enums du jeu (en 1.8.9 en tout cas).

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

                          et tu sais à quoi correspond le enums pour ce type de choses ?

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

                            j’ai réussi a faire, et pour faire des arbres vraiment géant, j’utilise cette fonction du coup ? :

                            public WorldGenerator getRandomWorldGenForTrees(Random par1Random)
                            {
                            return (WorldGenerator)(par1Random.nextInt(50) == 0 ? new WorldGenTrees(false, 20, 2, 2, false) : (par1Random.nextInt(40) == 0 ? this.worldGeneratorBigTree : new WorldGenTrees(false, 20, 0, 0, false)));
                            }

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

                              Oui c’est cette fonction, avec ce que tu as fait là, tu auras une chance sur 40 d’en avoir, donc pour tester tu peux augementer la probabilité.

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

                                oui j’avais aussi mit 72 a la palce de 20, mais ça ne marche pas 😕  ils sont pas aussi grand…  et 2 à la place de 40

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

                                  worldGeneratorBigTree correspond à quoi ?

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

                                    c’est dans la fonction de base de minecraft, mais quand je fais fait ctrl + espace je ne retrouve pas cette fonction :s

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

                                      C’est ctrl+clic pour trouver la déclaration d’une variable/fonction.

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

                                        Je sais je sais ^^ c’est dans la class BiomeGenBase

                                        sauf que de base c’est comme ça dans la class :

                                        public WorldGenAbstractTree func_150567_a(Random p_150567_1_)
                                        {
                                        return (WorldGenAbstractTree)(p_150567_1_.nextInt(10) == 0 ? this.worldGeneratorBigTree : this.worldGeneratorTrees);
                                        }

                                        et moi j’aimerais avoir de très grands arbres

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

                                          Tu as fais ctrl+clic sur quoi ? Il faut le faire sur worldGeneratorBigTree, pas sur une fonction. Enfin pas grave, de toute façon, plus simple, mets toi dans BiomeGenBase, fais ctrl+F, recherche worldGeneratorBigTree et trouve le worldGeneratorBigTree = quelquechose (et regarde si tu n’as pas ça dans ta classe de biome à toi).

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

                                            j’ai que : this.worldGeneratorBigTree = new WorldGenBigTree(false); ^^ sinon la fonction que je t’ai dit plus haut

                                            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