Biome 1.9.4



  • Voila, pour mon mod je veux crée un biome, le seul probleme c'est que il n'y a pas de tuto pour la 1.9 et je me retrouve avec un probleme : voila les classes

    La classe du biome

    package com.tuto.mod.biome;
    
    import net.minecraft.init.Blocks;
    import net.minecraft.world.biome.Biome;
    
    public class Topaze extends Biome
    {
        public Topaze(BiomeProperties id)
        {
                super(id);
                this.topBlock = Blocks.GOLD_BLOCK.getDefaultState();
                this.fillerBlock = Blocks.STONEBRICK.getDefaultState();
                this.theBiomeDecorator.treesPerChunk = -999;
               //Je tien a préciser, c'est un test, je modifierais les parametres plus tard quand le biome sera fonctionnel
        }
    
    }
    

    La classe pour générer le biome

    package com.tuto.mod.init;
    
    import com.tuto.mod.biome.Topaze;
    
    import net.minecraftforge.common.BiomeManager;
    import net.minecraftforge.common.BiomeManager.BiomeEntry;
    import net.minecraftforge.common.BiomeManager.BiomeType;
    
    public class BiomeMod
    {
        public static void init()
        {
            BiomeManager.addBiome(BiomeType.WARM, new BiomeEntry[size=x-large(new Topaze(100), 10));
    //j'ai une erreur ici : The constructot Topaze(int) is undefined ]
        }
    }
    

    Le client Proxy

    package com.tuto.mod.proxy;
    
    import com.tuto.mod.init.BiomeMod;
    import com.tuto.mod.init.BlocksMod;
    import com.tuto.mod.init.ItemsMod;
    
    public class ClientProxy extends CommonProxy
    {
        @Override
        public void registerRenders()
        {
            BlocksMod.registerRenders();
            ItemsMod.registerRenders();
            BiomeMod.init();
        }
    }
    
    

    J'ai déja essayé de modifier le BiomePropreties en int mais il ne veut pas 😢

    Merci de vos aides futur.

    Tituya


  • Administrateurs

    Salut,
    Tu as appliqué la solution dans le mauvais sans.
    Ce n'est pas le BiomePropreties qu'il faut changer en int mais ton "100" qu'il faut remplacer un BiomePropreties.



  • Comme cela ?

    package com.tuto.mod.init;
    
    import com.tuto.mod.biome.Topaze;
    
    import net.minecraft.world.biome.Biome.BiomeProperties;
    import net.minecraftforge.common.BiomeManager;
    import net.minecraftforge.common.BiomeManager.BiomeEntry;
    import net.minecraftforge.common.BiomeManager.BiomeType;
    
    public class BiomeMod
    {
        public static void init()
        {
            BiomeManager.addBiome(BiomeType.WARM, new BiomeEntry(new Topaze(100), BiomeProperties));
        }
    }
    

    Car ça ne fonctionne pas 😢


  • Administrateurs

    Non, c'est le 100 qu'il faut remplacer, autant pour moi.
    Et c'est pas en mettant la classe BiomeProperties que ça va fonctionner.
    Faut faire une nouvelle instance de BiomeProperties.



  • C'est à dire ? Comme ça, que faut-il mettre dedans ?

    package com.tuto.mod.biome;
    
    import net.minecraft.init.Blocks;
    import net.minecraft.world.biome.Biome;
    
    public class Topaze extends Biome
    {
        public Topaze(BiomeProperties i)
        {
                super(i);
                this.topBlock = Blocks.GOLD_BLOCK.getDefaultState();
                this.fillerBlock = Blocks.STONEBRICK.getDefaultState();
                this.theBiomeDecorator.treesPerChunk = -999;
    
        }
    
        public Topaze(int i)
        {
    
        }
    
    }
    

  • Administrateurs

    Non, gardes seulement le premier constructeur.

    C'est ta déclaration que tu dois changer :
    BiomeManager.addBiome(BiomeType.WARM, new BiomeEntry(new Topaze( (new BiomeProperties("nom")).setTemperature(0.7F).setRainfall(0.8F)), 10));



  • J'ai mis ton code dans mon programme

    package com.tuto.mod.init;
    
    import com.tuto.mod.biome.Topaze;
    
    import net.minecraft.world.biome.Biome.BiomeProperties;
    import net.minecraftforge.common.BiomeManager;
    import net.minecraftforge.common.BiomeManager.BiomeEntry;
    import net.minecraftforge.common.BiomeManager.BiomeType;
    
    public class BiomeMod
    {
        public static void init()
        {
            BiomeManager.addBiome(BiomeType.WARM, new BiomeEntry(new Topaze((new BiomeProperties("Topaze")).setTemperature(0.7F).setRainfall(0.8F)), 10));
        }
    }
    

    Seulement, en jeu je n'ai pas trouvé mon biome, peu etre ai-je mal chercher ? Y a t-il une commande pour trouver les biomes ? ou alors pour directement augmenter le spawn de mon biome ?