MFF

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

    Générer des minerais

    Planifier Épinglé Verrouillé Déplacé La génération & les dimensions
    1.7.2
    95 Messages 21 Publieurs 33.8k Vues 5 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

      Il y a toujours un NullPointerException, mais plus au même endroit. Tu peux m’envoyer la classe de ton générateur et ta classe principale actuel ?

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

        Alors voila la classe principale : ```java
        package ykeservers.ovh.mod.client;

        import net.minecraft.block.Block;
        import net.minecraft.creativetab.CreativeTabs;
        import net.minecraft.init.Items;
        import net.minecraft.item.Item;
        import net.minecraft.item.Item.ToolMaterial;
        import net.minecraft.item.ItemArmor.ArmorMaterial;
        import net.minecraft.item.ItemStack;
        import net.minecraftforge.common.util.EnumHelper;
        import ykeservers.ovh.mod.client.proxy.YkeServersProxy;
        import cpw.mods.fml.common.IWorldGenerator;
        import cpw.mods.fml.common.Mod;
        import cpw.mods.fml.common.Mod.EventHandler;
        import cpw.mods.fml.common.Mod.Instance;
        import cpw.mods.fml.common.SidedProxy;
        import cpw.mods.fml.common.event.FMLInitializationEvent;
        import cpw.mods.fml.common.event.FMLPostInitializationEvent;
        import cpw.mods.fml.common.event.FMLPreInitializationEvent;
        import cpw.mods.fml.common.registry.GameRegistry;

        @Mod(modid = “ykemods”, name = “YkeServers Mod”, version = “1.0.2”)

        public class Ykemod {
        public static final String MODID = “ykemod”;
        private static final Block CinabreOre = null;
        private static final IWorldGenerator worldgeneration = new WorldGeneration();
        @Instance(“ykemods”)
        public static Ykemod instance;

        @SidedProxy(clientSide = “ykeservers.ovh.mod.client.proxy.YkeServersClientProxy”, serverSide = “ykeservers.ovh.mod.client.proxy.YkeServersProxy”)
        public static YkeServersProxy proxy;

        public static ArmorMaterial armorCinabre = EnumHelper.addArmorMaterial(“armorCinabre”, 100, new int []{4, 8, 6 ,3 }, 12);
        public static ArmorMaterial armortitanite = EnumHelper.addArmorMaterial(“armortitanite”, 100, new int []{4, 8, 7 ,3 }, 12);
        public static ArmorMaterial armortitabre = EnumHelper.addArmorMaterial(“armortitabre”, 100, new int []{6, 8, 7 ,3 }, 5);

        public static ToolMaterial cinabretool = EnumHelper.addToolMaterial(“cinabretool”, 3, 1724, 10.0F, 4.5F, 10);
        public static ToolMaterial titanitetool = EnumHelper.addToolMaterial(“titanitetool”, 3, 1900, 13.0F, 5.0F, 10);
        public static ToolMaterial titabretool = EnumHelper.addToolMaterial(“titabretool”, 3, 2900, 15.0F, 7.5F, 5);

        public static Item Cinabre, helmetcinabre, chestplatecinabre, leggingcinabre, bootscinabre, cinabresword, cinabrepickaxe, cinabreaxe, titanite, helmettitanite, chestplatetitanite, leggingtitanite, bootstitanite, titanitesword, titanitepickaxe, titaniteaxe, titabre, helmettitabre, chestplatetitabre, leggingtitabre, bootstitabre, titabresword, titabrepickaxe, titabreaxe;

        public static Block cinabreBlock, titaniteBlock, titabreBlock, cinabreminblock, titaniteminblock, titabreminblock;

        @EventHandler
        public void preInit(FMLPreInitializationEvent event)
        {
        Cinabre = new Cinabre().setUnlocalizedName(“Cinabre”).setTextureName(“ykemods:cinabreitem”).setCreativeTab(CreativeTabs.tabMaterials);
        helmetcinabre = new cinabrearmor(armorCinabre, 0).setUnlocalizedName(“cinabrehelmet”).setTextureName(“ykemods:cinabrehelmet”);
        chestplatecinabre = new cinabrearmor(armorCinabre, 1).setUnlocalizedName(“cinabrechestplate”).setTextureName(“ykemods:cinabrechestplate”);
        leggingcinabre = new cinabrearmor(armorCinabre, 2).setUnlocalizedName(“cinabrelegging”).setTextureName(“ykemods:cinabrelegging”);
        bootscinabre = new cinabrearmor(armorCinabre, 3).setUnlocalizedName(“cinabreboots”).setTextureName(“ykemods:cinabreboots”);
        cinabresword = new cinabresword(cinabretool).setUnlocalizedName(“cinabresword”).setTextureName(“ykemods:cinabresword”);
        cinabrepickaxe = new cinabrepickaxe(cinabretool).setUnlocalizedName(“cinabrepickaxe”).setTextureName(“ykemods:cinabrepickaxe”);
        cinabreaxe = new cinabreaxe(cinabretool).setUnlocalizedName(“cinabreaxe”).setTextureName(“ykemods:cinabreaxe”);

        titanite = new titanite().setUnlocalizedName(“titanite”).setTextureName(“ykemods:titaniteitem”).setCreativeTab(CreativeTabs.tabMaterials);
        helmettitanite = new titanitearmor(armortitanite, 0).setUnlocalizedName(“titanitehelmet”).setTextureName(“ykemods:titanitehelmet”);
        chestplatetitanite = new titanitearmor(armortitanite, 1).setUnlocalizedName(“titanitechestplate”).setTextureName(“ykemods:titanitechestplate”);
        leggingtitanite = new titanitearmor(armortitanite, 2).setUnlocalizedName(“titanitelegging”).setTextureName(“ykemods:titanitelegging”);
        bootstitanite = new titanitearmor(armortitanite, 3).setUnlocalizedName(“titaniteboots”).setTextureName(“ykemods:titaniteboots”);
        titanitesword = new titanitesword(titanitetool).setUnlocalizedName(“titanitesword”).setTextureName(“ykemods:titanitesword”);
        titanitepickaxe = new titanitepickaxe(titanitetool).setUnlocalizedName(“titanitepickaxe”).setTextureName(“ykemods:titanitepickaxe”);
        titaniteaxe = new titaniteaxe(titanitetool).setUnlocalizedName(“titaniteeaxe”).setTextureName(“ykemods:titaniteaxe”);

        titabre = new titabre().setUnlocalizedName(“titabre”).setTextureName(“ykemods:titabreitem”).setCreativeTab(CreativeTabs.tabMaterials);
        helmettitabre = new titabrearmor(armortitabre, 0).setUnlocalizedName(“titabrehelmet”).setTextureName(“ykemods:titabrehelmet”);
        chestplatetitabre = new titabrearmor(armortitabre, 1).setUnlocalizedName(“titabrechestplate”).setTextureName(“ykemods:titabrechestplate”);
        leggingtitabre = new titabrearmor(armortitabre, 2).setUnlocalizedName(“titabrelegging”).setTextureName(“ykemods:titabrelegging”);
        bootstitabre = new titabrearmor(armortitabre, 3).setUnlocalizedName(“titabreboots”).setTextureName(“ykemods:titabreboots”);
        titabresword = new titabresword(titabretool).setUnlocalizedName(“titabresword”).setTextureName(“ykemods:titabresword”);
        titabrepickaxe = new titabrepickaxe(titabretool).setUnlocalizedName(“titabrepickaxe”).setTextureName(“ykemods:titabrepickaxe”);
        titabreaxe = new titabreaxe(titabretool).setUnlocalizedName(“titabreeaxe”).setTextureName(“ykemods:titabreaxe”);

        GameRegistry.registerItem(Cinabre, “Cinabre”);
        GameRegistry.registerItem(helmetcinabre, “cinabre_helmet”);
        GameRegistry.registerItem(chestplatecinabre, “cinabre_chestplate”);
        GameRegistry.registerItem(leggingcinabre, “cinabre_legging”);
        GameRegistry.registerItem(bootscinabre, “cinabre_boots”);
        GameRegistry.registerItem(cinabresword, “cinabresword”);
        GameRegistry.registerItem(cinabreaxe, “cinabreaxe”);
        GameRegistry.registerItem(cinabrepickaxe, “cinabrepickaxe”);

        GameRegistry.registerItem(titanite, “titanite”);
        GameRegistry.registerItem(helmettitanite, “titanite_helmet”);
        GameRegistry.registerItem(chestplatetitanite, “titanite_chestplate”);
        GameRegistry.registerItem(leggingtitanite, “titanite_legging”);
        GameRegistry.registerItem(bootstitanite, “titanite_boots”);
        GameRegistry.registerItem(titanitesword, “titanitesword”);
        GameRegistry.registerItem(titaniteaxe, “titaniteaxe”);
        GameRegistry.registerItem(titanitepickaxe, “titanitepickaxe”);

        GameRegistry.registerItem(titabre, “titabre”);
        GameRegistry.registerItem(helmettitabre, “titabre_helmet”);
        GameRegistry.registerItem(chestplatetitabre, “titabre_chestplate”);
        GameRegistry.registerItem(leggingtitabre, “titabre_legging”);
        GameRegistry.registerItem(bootstitabre, “titabre_boots”);
        GameRegistry.registerItem(titabresword, “titabresword”);
        GameRegistry.registerItem(titabreaxe, “titabreaxe”);
        GameRegistry.registerItem(titabrepickaxe, “titabrepickaxe”);

        cinabreBlock = new CinabreOre().setBlockName(“CinabreOre”).setBlockTextureName(“ykemods:cinabreore”).setCreativeTab(CreativeTabs.tabBlock);
        cinabreminblock = new cinabreminblock().setBlockName(“Cinabreblock”).setBlockTextureName(“ykemods:cinabreminblock”).setCreativeTab(CreativeTabs.tabBlock);

        titaniteBlock = new TitaniteOre().setBlockName(“TitaniteOre”).setBlockTextureName(“ykemods:titaniteore”).setCreativeTab(CreativeTabs.tabBlock);
        titaniteminblock = new titaniteminblock().setBlockName(“Titaniteblock”).setBlockTextureName(“ykemods:titaniteminblock”).setCreativeTab(CreativeTabs.tabBlock);

        titabreBlock = new TitabreOre().setBlockName(“TitabreOre”).setBlockTextureName(“ykemods:titabreore”).setCreativeTab(CreativeTabs.tabBlock);
        titabreminblock = new titabreminblock().setBlockName(“Titabreblock”).setBlockTextureName(“ykemods:titabreminblock”).setCreativeTab(CreativeTabs.tabBlock);

        GameRegistry.registerBlock(cinabreBlock, “cinabreoreBlock”);
        GameRegistry.registerBlock(titaniteBlock, “titaniteoreBlock”);
        GameRegistry.registerBlock(titabreBlock, “titabreoreBlock”);
        GameRegistry.registerBlock(cinabreminblock, “cinabreminblock”);
        GameRegistry.registerBlock(titaniteminblock, “titaniteminblock”);
        GameRegistry.registerBlock(titabreminblock, “titabreminblock”);

        GameRegistry.addRecipe(new ItemStack(cinabresword, 1), new Object[] {“X”, “X”, “Y”, ‘X’, Cinabre, ‘Y’, Items.stick});
        GameRegistry.addRecipe(new ItemStack(cinabrepickaxe, 1), new Object[]{“WXY”, " S ", " S “, ‘W’, new ItemStack(Cinabre, 0), ‘X’, new ItemStack(Cinabre, 0), ‘Y’, new ItemStack(Cinabre, 0), ‘S’, new ItemStack(Items.stick) });
        GameRegistry.addRecipe(new ItemStack (cinabreaxe), new Object [] { “11”, “12”, " 2”, Character.valueOf(‘1’), Cinabre, Character.valueOf(‘2’), new ItemStack(Items.stick) });

        GameRegistry.addRecipe(new ItemStack(titanitesword, 1), new Object[] {“X”, “X”, “Y”, ‘X’, titanite, ‘Y’, Items.stick});
        GameRegistry.addRecipe(new ItemStack(titanitepickaxe, 1), new Object[]{“WXY”, " S ", " S “, ‘W’, new ItemStack(titanite, 0), ‘X’, new ItemStack(titanite, 0), ‘Y’, new ItemStack(titanite, 0), ‘S’, new ItemStack(Items.stick) });
        GameRegistry.addRecipe(new ItemStack (titaniteaxe), new Object [] { “11”, “12”, " 2”, Character.valueOf(‘1’), titanite, Character.valueOf(‘2’), new ItemStack(Items.stick) });

        GameRegistry.addSmelting(cinabreBlock, new ItemStack(Cinabre, 1), 3.5F);
        GameRegistry.addSmelting(titaniteBlock, new ItemStack(titanite, 1), 3.5F);
        GameRegistry.addSmelting(titabreBlock, new ItemStack(titabre, 1), 3.5F);

        GameRegistry.addRecipe(new ItemStack(titabre, 1), new Object[] {“XXX”, “YYY”,“XXX”, ‘X’,titanite, ‘Y’, new ItemStack(Cinabre, 0)});

        GameRegistry.addRecipe(new ItemStack(cinabreminblock, 1), new Object[] {“XXX”, “XXX”,“XXX”, ‘X’,Cinabre});
        GameRegistry.addRecipe(new ItemStack(Cinabre, 9), new Object[] {“X”, ‘X’,cinabreminblock});

        GameRegistry.addRecipe(new ItemStack(titaniteminblock, 1), new Object[] {“XXX”, “XXX”,“XXX”, ‘X’,titanite});
        GameRegistry.addRecipe(new ItemStack(titanite, 9), new Object[] {“X”, ‘X’,titaniteminblock});

        GameRegistry.addRecipe(new ItemStack(titabreminblock, 1), new Object[] {“XXX”, “XXX”,“XXX”, ‘X’,titabre});
        GameRegistry.addRecipe(new ItemStack(titabre, 9), new Object[] {“X”, ‘X’,titabreminblock});

        GameRegistry.addRecipe(new ItemStack(helmetcinabre, 1), new Object[] {“XXX”, “X X”, ‘X’,Cinabre});
        GameRegistry.addRecipe(new ItemStack(chestplatecinabre, 1), new Object[] {“X X”, “XXX”, “XXX”, ‘X’,Cinabre});
        GameRegistry.addRecipe(new ItemStack(leggingcinabre, 1), new Object[] {“XXX”, “X X”, “X X”, ‘X’,Cinabre});
        GameRegistry.addRecipe(new ItemStack(bootscinabre, 1), new Object[] {“X X”, “X X”, ‘X’,Cinabre});

        GameRegistry.addRecipe(new ItemStack(helmettitanite, 1), new Object[] {“XXX”, “X X”, ‘X’,titanite});
        GameRegistry.addRecipe(new ItemStack(chestplatetitanite, 1), new Object[] {“X X”, “XXX”, “XXX”, ‘X’,titanite});
        GameRegistry.addRecipe(new ItemStack(leggingtitanite, 1), new Object[] {“XXX”, “X X”, “X X”, ‘X’,titanite});
        GameRegistry.addRecipe(new ItemStack(bootstitanite, 1), new Object[] {“X X”, “X X”, ‘X’,titanite});

        GameRegistry.addRecipe(new ItemStack(helmettitabre, 1), new Object[] {“XXX”, “X X”, ‘X’,titabre});
        GameRegistry.addRecipe(new ItemStack(chestplatetitabre, 1), new Object[] {“X X”, “XXX”, “XXX”, ‘X’,titabre});
        GameRegistry.addRecipe(new ItemStack(leggingtitabre, 1), new Object[] {“XXX”, “X X”, “X X”, ‘X’,titabre});
        GameRegistry.addRecipe(new ItemStack(bootstitabre, 1), new Object[] {“X X”, “X X”, ‘X’,titabre});

        }

        @EventHandler
        public void init(FMLInitializationEvent event)
        {
        proxy.registerRender();

        GameRegistry.registerWorldGenerator(worldgeneration, 0);

        }

        @EventHandler
        public void postInit(FMLPostInitializationEvent event)
        {

        }

        }

        
        et voila la classe WorldGeneration : ```java
        package ykeservers.ovh.mod.client;
        
        import java.util.Random;
        
        import net.minecraft.block.Block;
        import net.minecraft.init.Blocks;
        import net.minecraft.world.World;
        import net.minecraft.world.chunk.IChunkProvider;
        import net.minecraft.world.gen.feature.WorldGenMinable;
        import cpw.mods.fml.common.IWorldGenerator;
        
        public class WorldGeneration implements IWorldGenerator
        {
        
        private Block CinabreOre;
        
        public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
        {
        
        switch(world.provider.dimensionId)
        {
        
        case -1:
        generateNether(world, random, chunkX * 16, chunkZ * 16);
        break;
        
        case 0:
        generateSurface(world, random, chunkX * 16, chunkZ * 16);
        break;
        
        case 1:
        generateEnd(world, random, chunkX * 16, chunkZ * 16);
        break;
        
        }
        
        }
        private void generateEnd(World world, Random random, int x, int z) {
        
        }
        
        private void generateSurface(World world, Random random, int x, int z)
        {
        
        this.addOreSpawn(CinabreOre, 0, Blocks.stone, world, random, x, z, 16, 16, 7, 18, 13, 45);
        
        }
        
        private void generateNether(World world, Random random, int x, int z) {
        
        }
        
        public void addOreSpawn(Block block, int metadata, Block target, World world, Random random, int blockXPos, int blockZPos, int maxX, int maxZ, int maxVeinSize, int chancesToSpawn, int minY, int maxY) {
        
        assert maxY > minY : "La position Y maximum doit être supérieure à la position Y minimum.";
        assert maxX > 0 && maxX <= 16 : "X doit se trouver entre 0 et 16.";
        assert minY > 0 : "La position Y minimum doit être supérieure à 0.";
        assert maxY < 256 && maxY > 0 : "La position Y maximum doit se trouver entre 0 et 256.";
        assert maxZ > 0 && maxZ <= 16 : "Z doit se trouver entre 0 et 16.";
        
        for(int i = 0; i < chancesToSpawn; i++)
        {
        
        int posY = random.nextInt(128);
        
        if((posY <= maxY) && (posY >= minY))
        {
        
        (new WorldGenMinable(block, metadata, maxVeinSize, target)).generate(world, random, blockXPos + random.nextInt(16), posY, blockZPos + random.nextInt(16));
        
        }
        
        }
        
        }
        }
        
        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

          Ok, ça c’est pas bon :
          private Block CinabreOre;

          Et ici :
          this.addOreSpawn(CinabreOre, 0, Blocks.stone, world, random, x, z, 16, 16, 7, 18, 13, 45);

          à la place de CinabreOre tu es sensé mettre l’instance de ton bloc qui se trouve dans ta classe principale. Donc c’est comme ça :
          this.addOreSpawn(Ykemod.cinabreBlock, 0, Blocks.stone, world, random, x, z, 16, 16, 7, 18, 13, 45);

          Et je vois aussi ça dans ta classe principale :
          private static final Block CinabreOre = null;

          Pareil ça n’a rien à faire là, il ne faut pas cliquer sur ce que propose eclipse sans comprendre ce que ça va faire …

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

            Le tutoriel fonctionne en 1.7.10 ?

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

              Oui, le seul changement depuis la 1.7.2 c’est les UUIDs ainsi que quelques autres choses mineures.

              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

                bonjour, moi j’ai cette erreur, le WorldGeneration(); ne peut pas être instancié

                WorldGeneration worldgeneration = new WorldGeneration();

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

                  Tu classe se nomme bien WorldGeneration ? Sinon, vérifie que tu utilise pas la classe de minecraft.

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

                    c’est encore moi, donc voila, le WorldGeneration reste souligné chez moi

                    WorldGeneration worldgeneration = new WorldGeneration();

                    pourtant je pense avoir tout ce qu’il faut      classe principale :

                    package fr.craftesys.items.common;
                    import cpw.mods.fml.common.Mod;
                    import cpw.mods.fml.common.Mod.EventHandler;
                    import cpw.mods.fml.common.Mod.Instance;
                    import cpw.mods.fml.common.SidedProxy;
                    import cpw.mods.fml.common.event.FMLInitializationEvent;
                    import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                    import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                    import cpw.mods.fml.common.registry.GameRegistry;
                    import fr.craftesys.items.proxy.commonproxy;
                    import net.minecraft.block.Block;
                    import net.minecraft.block.material.Material;
                    import net.minecraft.creativetab.CreativeTabs;
                    import net.minecraft.init.Items;
                    import net.minecraft.item.Item;
                    import net.minecraft.item.Item.ToolMaterial;
                    import net.minecraft.item.ItemArmor.ArmorMaterial;
                    import net.minecraft.item.ItemStack;
                    import net.minecraftforge.common.MinecraftForge;
                    import net.minecraftforge.common.util.EnumHelper;
                    
                    @Mod(modid = "moditems", name = "Mod Items", version = "1.7.10")
                    public class ModItems
                    {
                       public static final String MODID = "moditems";
                       @Instance(MODID)
                       public static ModItems instance;
                       @SidedProxy(clientSide = "fr.craftesys.items.proxy.clientproxy", serverSide = "fr.craftesys.items.proxy.commonproxy")
                       public static commonproxy proxy;
                       public static Item rubis;
                       public static Item itemrubis;
                       public static Item helmetrubis, chestPlaterubis, leggingsrubis, bootsrubis;
                       public static Block blockrubis;
                       public static Block rubyore;
                       WorldGeneration worldgeneration = new WorldGeneration();
                       public static ArmorMaterial armorrubis = EnumHelper.addArmorMaterial("armorrubis", 85, new int[] {4, 6, 5, 4}, 20);
                       public static Item swordrubis, pickaxerubis, axerubis, shovelrubis, hoerubis;
                       public static ToolMaterial toolrubis = EnumHelper.addToolMaterial("toolrubis",3 , 1499, 12.0F, 4.0F, 18);
                       @EventHandler
                       public void preInit(FMLPreInitializationEvent event)
                       {
                           itemrubis = new RubisItems().setUnlocalizedName("rubis").setTextureName(MODID + ":item_rubis").setCreativeTab(CreativeTabs.tabMaterials);
                    
                           helmetrubis = new ItemRubisArmor(armorrubis, 0).setUnlocalizedName("helmetrubis").setTextureName(MODID + ":helmetrubis");
                           chestPlaterubis = new ItemRubisArmor(armorrubis, 1).setUnlocalizedName("chestPlaterubis").setTextureName(MODID + ":chestplaterubis");
                           leggingsrubis = new ItemRubisArmor(armorrubis, 2).setUnlocalizedName("leggingsrubis").setTextureName(MODID + ":leggingsrubis");
                           bootsrubis = new ItemRubisArmor(armorrubis, 3).setUnlocalizedName("bootsrubis").setTextureName(MODID + ":bootsrubis");
                           swordrubis = new ItemRubisSword(toolrubis).setUnlocalizedName("swordrubis").setTextureName(MODID + ":sword_rubis");
                           pickaxerubis = new ItemRubisPickaxe(toolrubis).setUnlocalizedName("pickaxerubis").setTextureName(MODID + ":pickaxe_rubis");
                           axerubis = new ItemRubisAxe(toolrubis).setUnlocalizedName("axerubis").setTextureName(MODID + ":axe_rubis");
                           shovelrubis = new ItemRubisShovel(toolrubis).setUnlocalizedName("shovelrubis").setTextureName(MODID + ":shovel_rubis");
                           hoerubis = new ItemRubisHoe(toolrubis).setUnlocalizedName("hoerubis").setTextureName(MODID + ":hoe_rubis");
                           blockrubis = new Blockrubis(Material.rock).setBlockName("rubisblock").setBlockTextureName("moditems:block_rubis").setCreativeTab(CreativeTabs.tabBlock);;
                           rubyore = new Blockrubis(Material.rock).setBlockName("oreRuby ").setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundTypeStone).setBlockTextureName(MODID + ":ruby_ore").setCreativeTab(TutorielTabs);
                          GameRegistry.registerItem(itemrubis, "item_rubis");
                          GameRegistry.registerItem(helmetrubis, "item_rubis_helmet");
                          GameRegistry.registerItem(chestPlaterubis, "item_rubis_chestplate");
                          GameRegistry.registerItem(leggingsrubis, "item_rubis_leggings");
                          GameRegistry.registerItem(bootsrubis, "item_rubis_boots");
                          GameRegistry.registerItem(swordrubis, "item_rubis_sword");
                          GameRegistry.registerItem(pickaxerubis, "item_rubis_pickaxe");
                          GameRegistry.registerItem(axerubis, "item_rubis_axe");
                          GameRegistry.registerItem(shovelrubis, "item_rubis_shovel");
                          GameRegistry.registerItem(hoerubis, "item_rubis_hoe");      
                          GameRegistry.registerBlock(blockrubis, "block_rubis");
                          GameRegistry.registerBlock(rubyore, "ruby_ore");
                          GameRegistry.registerWorldGenerator(worldgeneration, 0);
                       }
                    
                       @EventHandler
                       public void init(FMLInitializationEvent event)
                      {
                          MinecraftForge.EVENT_BUS.register(new LivingEventHandler());
                           proxy.registerRender();
                          GameRegistry.addRecipe(new ItemStack(helmetrubis), new Object[]{"XXX", "X X", "   ", 'X', new ItemStack(itemrubis)});
                           GameRegistry.addRecipe(new ItemStack(chestPlaterubis), new Object[]{"X X", "XXX", "XXX", 'X', new ItemStack(itemrubis)});
                           GameRegistry.addRecipe(new ItemStack(leggingsrubis), new Object[]{"XXX", "X X", "X X", 'X', new ItemStack(itemrubis)});
                           GameRegistry.addRecipe(new ItemStack(bootsrubis), new Object[]{"   ", "X X", "X X", 'X', new ItemStack(itemrubis)});
                          GameRegistry.addRecipe(new ItemStack(swordrubis), new Object[]{"X", "X", "Y", 'X', new ItemStack(itemrubis), 'Y' , new ItemStack(Items.stick)});
                           GameRegistry.addRecipe(new ItemStack(pickaxerubis), new Object[]{"XXX", " Y ", " Y ", 'X', new ItemStack(itemrubis), 'Y' , new ItemStack(Items.stick)});
                           GameRegistry.addRecipe(new ItemStack(axerubis), new Object[]{"XX", " XY ", " Y ", 'X', new ItemStack(itemrubis), 'Y' , new ItemStack(Items.stick)});
                           GameRegistry.addRecipe(new ItemStack(shovelrubis), new Object[]{" X ", " Y ", " Y ", 'X', new ItemStack(itemrubis), 'Y' , new ItemStack(Items.stick)});
                           GameRegistry.addRecipe(new ItemStack(hoerubis), new Object[]{"XX ", " Y ", " Y ", 'X', new ItemStack(itemrubis), 'Y' , new ItemStack(Items.stick)});
                           GameRegistry.addRecipe(new ItemStack(blockrubis), new Object[]{"XXX", "XXX", "XXX", 'X', new ItemStack(itemrubis)});
                       }
                    
                       @EventHandler
                       public void postInit(FMLPostInitializationEvent event)
                       {
                    
                       }
                    }
                    

                    classe WorldGeneration :

                    package fr.craftesys.items.common;
                    
                    import net.minecraft.block.Block;
                    import net.minecraft.init.Blocks;
                    import net.minecraft.world.World;
                    import net.minecraft.world.chunk.IChunkProvider;
                    import net.minecraft.world.gen.feature.WorldGenMinable;
                    import java.util.Random;
                    import cpw.mods.fml.common.IWorldGenerator;
                    
                    public abstract class WorldGeneration implements IWorldGenerator
                    {
                       public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
                       {
                    
                           switch(world.provider.dimensionId)
                           {
                    
                           case -1:
                               generateNether(world, random, chunkX * 16, chunkZ * 16);
                               break;
                    
                           case 0:
                               generateSurface(world, random, chunkX * 16, chunkZ * 16);
                               break;
                    
                           case 1:
                               generateEnd(world, random, chunkX * 16, chunkZ * 16);
                               break;
                    
                           }
                    
                       }
                    
                       private void generateEnd(World world, Random random, int x, int z) {
                    
                       }
                    
                       private void generateSurface(World world, Random random, int x, int z) {
                    
                           this.addOreSpawn(ModItems.rubyore, 0, Blocks.stone, world, random, x, z, 16, 16, 50, 25, 16, 64);
                    
                       }
                    
                       private void generateNether(World world, Random random, int x, int z) {
                    
                       }
                    
                       public void addOreSpawn(Block block, int metadata, Block target, World world, Random random, int blockXPos, int blockZPos, int maxX, int maxZ, int maxVeinSize, int chancesToSpawn, int minY, int maxY) {
                    
                           assert maxY > minY : "La position Y maximum doit être supérieure à la position Y minimum.";
                           assert maxX > 0 && maxX <= 16 : "X doit se trouver entre 0 et 16.";
                           assert minY > 0 : "La position Y minimum doit être supérieure à 0.";
                           assert maxY < 256 && maxY > 0 : "La position Y maximum doit se trouver entre 0 et 256.";
                           assert maxZ > 0 && maxZ <= 16 : "Z doit se trouver entre 0 et 16.";
                    
                           for(int i = 0; i < chancesToSpawn; i++)
                           {
                    
                               int posY = random.nextInt(128);
                    
                               if((posY <= maxY) && (posY >= minY))
                               {
                    
                                   (new WorldGenMinable(block, metadata, maxVeinSize, target)).generate(world, random, blockXPos + random.nextInt(16), posY, blockZPos + random.nextInt(16));
                    
                               }
                    
                           }
                    
                       }
                    
                    }
                    

                    et oui elle se nomme bien WorldGeneration

                    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

                      public abstract class WorldGeneration implements IWorldGenerator

                      Ta classe ne devrait pas être abstraite, les classes abstraites ne peuvent pas être instancier.

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

                        j’ai honte de mes fautes, surtout que c’est l’une des premières choses qu’on apprend …

                        j’ai donc fini toutes la partie sur le rubis,  maintenant, si je veux un autre minerais, je dois refaire des classes ou je peux reprendre les autres ?   car pour certaines fonctions comme :

                        public boolean getIsRepairable(ItemStack input, ItemStack repair)
                               {
                                   if(repair.getItem() == ModItems.itemrubis)
                                   {
                                       return true;
                                   }
                                   return false;
                               }

                        je vois pas comment rajouter d’autres items

                        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

                          if(repair.getItem() == ModItems.itemrubis || repair.getItem() == ModItems.secondItem)

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

                            et je fais ça pour toutes les fonctions ?  merci

                            et pour changer les dégâts des épées on doit refaire tout ?

                            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

                              ça dépend des fonctions.
                              Par contre pas compris ta question avec l’épée.

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

                                Créer une nouvelle épée et mettre plus de dégâts sur la nouvelle épée

                                puis pour les minerais, j’en ai fait 2 (dans 2 classes différentes que j’ai déclaré dans la classe principale)  mais un seul des deux minerais se génère.

                                j’ai cette ligne : this.addOreSpawn(ModItems.rubyore, 0, Blocks.stone, world, random, x, z, 16, 16, 50, 25, 16, 64);

                                cela est possible que les deux classes prennent en compte les mêmes blocs de stone et les change en un minerai ?

                                je veux dire imaginons que WorldGeneration changent les blocs de stone en minerai1     puis  le WorldGeneration2 veut prendre les mêmes blocs, mais comme ils ont été transformés en minerai1, il peut pas transformer minerai2

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

                                  Pour créer une nouvelle épée, il faut juste créer une classe extends ItemSword et fournir dans le constructeur un matériau en utilisant EnumHelper.addToolMaterial.

                                  Pour les minerais, envoi les 2 lignes concernées.

                                  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

                                    j’ai réussi pour les minerais,  j’ai nommé une fonction random  et l’autre random2 pour la différenciation.

                                    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

                                      Merci de ne pas dériver du sujet original. Comme ton problème ne concerne pas le tutoriel, tu dois ouvrir une discussion dans la section support pour les moddeurs.

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

                                        Bonjours, j,ai essayer de faire un minerais de rubis, mais il se génere mal dans la map, j’ai mit 3 pour la taille des fillons et 4 pour la rareté, mais le probleme, c’est qu’il est beaucoup trop rare! Si le diam est a 1, logiquement mon minerais devrai etre 4 fois moin rare que le diam! J’ai pris 2 heures pour trouver un fillon de 1… j’ai essayé de monter la raretée a 300, ca a donner une rareté plus au moin equivalente a l’or, mais il y avait que des fillons de 1…

                                        Bref voici les codes:

                                        Classe principale:

                                        ​package fr.teraforge.teracraft.common;
                                        
                                        import net.minecraft.block.Block;
                                        import net.minecraft.block.material.Material;
                                        import net.minecraft.creativetab.CreativeTabs;
                                        import net.minecraft.item.Item;
                                        import cpw.mods.fml.common.IWorldGenerator;
                                        import cpw.mods.fml.common.Mod;
                                        import cpw.mods.fml.common.Mod.EventHandler;
                                        import cpw.mods.fml.common.Mod.Instance;
                                        import cpw.mods.fml.common.SidedProxy;
                                        import cpw.mods.fml.common.event.FMLInitializationEvent;
                                        import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                                        import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                                        import cpw.mods.fml.common.registry.GameRegistry;
                                        import fr.teraforge.teracraft.proxy.CommonProxy;
                                        
                                        @Mod(modid = "tc", name = "TeraCraft", version = "1.0.0")
                                        
                                        public class ModTeraCraft
                                        {
                                        public static final String MODID = "tc";
                                        
                                            @Instance("tc")
                                            public static ModTeraCraft instance;
                                        
                                            @SidedProxy(clientSide = "fr.teraforge.teracraft.proxy.ClientProxy", serverSide = "fr.teraforge.teracraft.proxy.CommonProxy")
                                            public static CommonProxy proxy;
                                        
                                            public static  Item itemTc;
                                        
                                            public static Block blockRubis;
                                        
                                            public static Block mineraisRubis;
                                        
                                            public static final IWorldGenerator worldgeneration = new WorldGeneration();
                                        
                                            @EventHandler
                                            public void preInit(FMLPreInitializationEvent event)
                                            {
                                            itemTc = new ItemTc().setUnlocalizedName("Rubis").setTextureName(ModTeraCraft.MODID + ":Rubis").setCreativeTab(CreativeTabs.tabMaterials);
                                            GameRegistry.registerItem(itemTc, "Rubis");
                                        
                                            blockRubis = new BlockRubis(Material.rock).setBlockName("blockrubis").setBlockTextureName(MODID + ":block_rubis").setCreativeTab(CreativeTabs.tabBlock);
                                            GameRegistry.registerBlock(blockRubis, "block_rubis");
                                        
                                            mineraisRubis = new MineraisRubis(Material.rock).setBlockName("mineraisrubis").setBlockTextureName(MODID + ":minerais_rubis").setCreativeTab(CreativeTabs.tabBlock);
                                            GameRegistry.registerBlock(mineraisRubis, "minerais_rubis");
                                            }
                                        
                                            @EventHandler
                                            public void init(FMLInitializationEvent event)
                                            {
                                            proxy.registerRender();
                                        
                                            GameRegistry.registerWorldGenerator(worldgeneration, 0);
                                            }
                                        
                                            @EventHandler
                                            public void postInit(FMLPostInitializationEvent event)
                                            {
                                        
                                            }
                                        }
                                        
                                        

                                        WorldGeneration.java:

                                        ​public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
                                        {
                                        
                                        switch(world.provider.dimensionId)
                                        {
                                        
                                        case -1:
                                        generateNether(world, random, chunkX * 16, chunkZ * 16);
                                        break;
                                        
                                        case 0:
                                        generateSurface(world, random, chunkX * 16, chunkZ * 16);
                                        break;
                                        
                                        case 1:
                                        generateEnd(world, random, chunkX * 16, chunkZ * 16);
                                        break;
                                        
                                        }
                                        
                                        }
                                        
                                        private void generateEnd(World world, Random random, int x, int z) {
                                        
                                            }
                                        
                                            private void generateSurface(World world, Random random, int x, int z) {
                                        
                                            this.addOreSpawn(ModTeraCraft.mineraisRubis, 0, Blocks.stone, world, random, x, z, 16, 16, 3, 4, 1, 16);
                                        
                                            }
                                        
                                            private void generateNether(World world, Random random, int x, int z) {
                                        
                                            }
                                        
                                        public void addOreSpawn(Block block, int metadata, Block target, World world, Random random, int blockXPos, int blockZPos, int maxX, int maxZ, int maxVeinSize, int chancesToSpawn, int minY, int maxY) {
                                        
                                                assert maxY > minY : "La position Y maximum doit être supérieure à la position Y minimum.";
                                                assert maxX > 0 && maxX <= 16 : "X doit se trouver entre 0 et 16.";
                                                assert minY > 0 : "La position Y minimum doit être supérieure à 0.";
                                                assert maxY < 256 && maxY > 0 : "La position Y maximum doit se trouver entre 0 et 256.";
                                                assert maxZ > 0 && maxZ <= 16 : "Z doit se trouver entre 0 et 16.";
                                        
                                               for(int i = 0; i < chancesToSpawn; i++)
                                        {
                                        
                                        int posY = random.nextInt(128);
                                        
                                        if((posY <= maxY) && (posY >= minY))
                                        {
                                        
                                        (new WorldGenMinable(block, metadata, maxVeinSize, target)).generate(world, random, blockXPos + random.nextInt(16), posY, blockZPos + random.nextInt(16));
                                        
                                        }
                                        
                                        }
                                        
                                            }
                                        
                                        }
                                        
                                        

                                        et les logs de la console:

                                        [15:12:46] [main/INFO] [GradleStart]: Extra: []
                                        [15:12:46] [main/INFO] [GradleStart]: Running with arguments: [–userProperties, {}, --assetsDir, C:/Users/uniik/.gradle/caches/minecraft/assets, --assetIndex, 1.7.10, --accessToken, {REDACTED}, --version, 1.7.10, --tweakClass, cpw.mods.fml.common.launcher.FMLTweaker, --tweakClass, net.minecraftforge.gradle.tweakers.CoremodTweaker]
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Loading tweak class name cpw.mods.fml.common.launcher.FMLTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Using primary tweak class name cpw.mods.fml.common.launcher.FMLTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.CoremodTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Calling tweak class cpw.mods.fml.common.launcher.FMLTweaker
                                        [15:12:46] [main/INFO] [FML]: Forge Mod Loader version 7.99.29.1490 for Minecraft 1.7.10 loading
                                        [15:12:46] [main/INFO] [FML]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.8.0_45, running on Windows 8.1:amd64:6.3, installed at C:\Program Files\Java\jdk1.8.0_45\jre
                                        [15:12:46] [main/INFO] [FML]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.CoremodTweaker
                                        [15:12:46] [main/INFO] [GradleStart]: Injecting location in coremod cpw.mods.fml.relauncher.FMLCorePlugin
                                        [15:12:46] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.classloading.FMLForgePlugin
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Loading tweak class name cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Loading tweak class name cpw.mods.fml.common.launcher.FMLDeobfTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Calling tweak class cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Calling tweak class cpw.mods.fml.common.launcher.FMLInjectionAndSortingTweaker
                                        [15:12:46] [main/INFO] [LaunchWrapper]: Calling tweak class cpw.mods.fml.relauncher.CoreModManager$FMLPluginWrapper
                                        [15:12:46] [main/ERROR] [FML]: The binary patch set is missing. Either you are in a development environment, or things are not going to work!
                                        [15:12:48] [main/ERROR] [FML]: FML appears to be missing any signature data. This is not a good thing
                                        [15:12:48] [main/INFO] [LaunchWrapper]: Calling tweak class cpw.mods.fml.relauncher.CoreModManager$FMLPluginWrapper
                                        [15:12:48] [main/INFO] [LaunchWrapper]: Calling tweak class cpw.mods.fml.common.launcher.FMLDeobfTweaker
                                        [15:12:49] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
                                        [15:12:49] [main/INFO] [LaunchWrapper]: Loading tweak class name cpw.mods.fml.common.launcher.TerminalTweaker
                                        [15:12:49] [main/INFO] [LaunchWrapper]: Calling tweak class cpw.mods.fml.common.launcher.TerminalTweaker
                                        [15:12:49] [main/INFO] [LaunchWrapper]: Launching wrapped minecraft {net.minecraft.client.main.Main}
                                        [15:12:50] [main/INFO]: Setting user: Player400
                                        [15:12:51] [Client thread/INFO]: LWJGL Version: 2.9.1
                                        [15:12:52] [Client thread/INFO] [STDOUT]: [cpw.mods.fml.client.SplashProgress:start:188]: –-- Minecraft Crash Report ----
                                        // Ooh. Shiny.
                                        
                                        Time: 15-07-15 15:12
                                        Description: Loading screen debug info
                                        
                                        This is just a prompt for computer specs to be printed. THIS IS NOT A ERROR
                                        
                                        A detailed walkthrough of the error, its code path and all known details is as follows:
                                        ---------------------------------------------------------------------------------------
                                        
                                        -- System Details --
                                        Details:
                                        Minecraft Version: 1.7.10
                                        Operating System: Windows 8.1 (amd64) version 6.3
                                        Java Version: 1.8.0_45, Oracle Corporation
                                        Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
                                        Memory: 798260816 bytes (761 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)
                                        JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
                                        AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
                                        IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
                                        FML:
                                        GL info: ' Vendor: 'ATI Technologies Inc.' Version: '4.3.12618 Compatibility Profile Context 13.251.9001.1001' Renderer: 'AMD Radeon R7 200 Series'
                                        [15:12:52] [Client thread/INFO] [MinecraftForge]: Attempting early MinecraftForge initialization
                                        [15:12:52] [Client thread/INFO] [FML]: MinecraftForge v10.13.4.1490 Initialized
                                        [15:12:52] [Client thread/INFO] [FML]: Replaced 183 ore recipies
                                        [15:12:52] [Client thread/INFO] [MinecraftForge]: Completed early MinecraftForge initialization
                                        [15:12:52] [Client thread/INFO] [FML]: Found 0 mods from the command line. Injecting into mod discoverer
                                        [15:12:52] [Client thread/INFO] [FML]: Searching C:\Users\uniik\Desktop\Test\forge-1.7.10-10.13.4.1490-1.7.10-src\eclipse\mods for mods
                                        [15:12:55] [Client thread/INFO] [FML]: Forge Mod Loader has identified 4 mods to load
                                        [15:12:55] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, tc] at CLIENT
                                        [15:12:55] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, tc] at SERVER
                                        [15:12:56] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:TeraCraft
                                        [15:12:56] [Client thread/INFO] [FML]: Processing ObjectHolder annotations
                                        [15:12:56] [Client thread/INFO] [FML]: Found 341 ObjectHolder annotations
                                        [15:12:56] [Client thread/INFO] [FML]: Identifying ItemStackHolder annotations
                                        [15:12:56] [Client thread/INFO] [FML]: Found 0 ItemStackHolder annotations
                                        [15:12:56] [Client thread/INFO] [FML]: Configured a dormant chunk cache size of 0
                                        [15:12:56] [Client thread/INFO] [FML]: Applying holder lookups
                                        [15:12:56] [Client thread/INFO] [FML]: Holder lookups applied
                                        [15:12:56] [Client thread/INFO] [FML]: Injecting itemstacks
                                        [15:12:56] [Client thread/INFO] [FML]: Itemstack injection complete
                                        [15:12:56] [Sound Library Loader/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:12:56] [Sound Library Loader/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: Starting up SoundSystem…
                                        [15:12:56] [Thread-8/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: Initializing LWJGL OpenAL
                                        [15:12:56] [Thread-8/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:     (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
                                        [15:12:56] [Thread-8/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: OpenAL initialized.
                                        [15:12:57] [Sound Library Loader/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:12:57] [Sound Library Loader/INFO]: Sound engine started
                                        [15:12:59] [Client thread/INFO]: Created: 16x16 textures/blocks-atlas
                                        [15:12:59] [Client thread/INFO]: Created: 16x16 textures/items-atlas
                                        [15:12:59] [Client thread/INFO] [STDOUT]: [fr.teraforge.teracraft.proxy.ClientProxy:registerRender:8]: méthode côté client
                                        [15:12:59] [Client thread/INFO] [FML]: Injecting itemstacks
                                        [15:12:59] [Client thread/INFO] [FML]: Itemstack injection complete
                                        [15:12:59] [Client thread/INFO] [FML]: Forge Mod Loader has successfully loaded 4 mods
                                        [15:12:59] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:TeraCraft
                                        [15:12:59] [Client thread/INFO]: Created: 512x256 textures/blocks-atlas
                                        [15:12:59] [Client thread/INFO]: Created: 256x256 textures/items-atlas
                                        [15:12:59] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:12:59] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: SoundSystem shutting down…
                                        [15:13:00] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:importantMessage:90]:     Author: Paul Lamb, www.paulscode.com
                                        [15:13:00] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:13:00] [Sound Library Loader/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:13:00] [Sound Library Loader/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: Starting up SoundSystem…
                                        [15:13:00] [Thread-10/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: Initializing LWJGL OpenAL
                                        [15:13:00] [Thread-10/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:     (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
                                        [15:13:00] [Thread-10/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: OpenAL initialized.
                                        [15:13:00] [Sound Library Loader/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:13:00] [Sound Library Loader/INFO]: Sound engine started
                                        [15:13:08] [Server thread/INFO]: Starting integrated minecraft server version 1.7.10
                                        [15:13:08] [Server thread/INFO]: Generating keypair
                                        [15:13:08] [Server thread/INFO]: Converting map!
                                        [15:13:08] [Server thread/INFO]: Scanning folders…
                                        [15:13:08] [Server thread/INFO]: Total conversion count is 0
                                        [15:13:08] [Server thread/INFO] [FML]: Injecting existing block and item data into this server instance
                                        [15:13:08] [Server thread/INFO] [FML]: Applying holder lookups
                                        [15:13:08] [Server thread/INFO] [FML]: Holder lookups applied
                                        [15:13:08] [Server thread/INFO] [FML]: Loading dimension 0 (New World) (net.minecraft.server.integrated.IntegratedServer@9af2d95)
                                        [15:13:08] [Server thread/INFO] [FML]: Loading dimension 1 (New World) (net.minecraft.server.integrated.IntegratedServer@9af2d95)
                                        [15:13:08] [Server thread/INFO] [FML]: Loading dimension -1 (New World) (net.minecraft.server.integrated.IntegratedServer@9af2d95)
                                        [15:13:08] [Server thread/INFO]: Preparing start region for level 0
                                        [15:13:09] [Server thread/INFO]: Preparing spawn area: 9%
                                        [15:13:10] [Server thread/INFO]: Preparing spawn area: 26%
                                        [15:13:11] [Server thread/INFO]: Preparing spawn area: 44%
                                        [15:13:12] [Server thread/INFO]: Preparing spawn area: 58%
                                        [15:13:13] [Server thread/INFO]: Preparing spawn area: 73%
                                        [15:13:14] [Server thread/INFO]: Preparing spawn area: 84%
                                        [15:13:15] [Server thread/INFO]: Preparing spawn area: 95%
                                        [15:13:16] [Server thread/INFO]: Changing view distance to 12, from 10
                                        [15:13:16] [Netty Client IO #0/INFO] [FML]: Server protocol version 2
                                        [15:13:16] [Netty IO #1/INFO] [FML]: Client protocol version 2
                                        [15:13:16] [Netty IO #1/INFO] [FML]: Client attempting to join with 4 mods : FML@7.10.99.99,Forge@10.13.4.1490,mcp@9.05,tc@1.0.0
                                        [15:13:16] [Netty IO #1/INFO] [FML]: Attempting connection with missing mods [] at CLIENT
                                        [15:13:16] [Netty Client IO #0/INFO] [FML]: Attempting connection with missing mods [] at SERVER
                                        [15:13:16] [Server thread/INFO] [FML]: [Server thread] Server side modded connection established
                                        [15:13:16] [Server thread/INFO]: Player400[local:E:47116045] logged in with entity id 218 at (83.5, 64.0, 241.5)
                                        [15:13:16] [Client thread/INFO] [FML]: [Client thread] Client side modded connection established
                                        [15:13:16] [Server thread/INFO]: Player400 joined the game
                                        [15:13:19] [Server thread/INFO]: Saving and pausing game…
                                        [15:13:19] [Server thread/INFO]: Saving chunks for level 'New World'/Overworld
                                        [15:13:20] [Client thread/INFO]: Stopping!
                                        [15:13:20] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:13:20] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]: SoundSystem shutting down…
                                        [15:13:21] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:importantMessage:90]:     Author: Paul Lamb, www.paulscode.com
                                        [15:13:21] [Client thread/INFO] [STDOUT]: [paulscode.sound.SoundSystemLogger:message:69]:
                                        [15:13:21] [Client Shutdown Thread/INFO]: Stopping server
                                        Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
                                        
                                        

                                        Je remerci d’avance la personne qui aura la pacience de m’aider 🙂

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

                                          Je veux bien avoir la “pacience” comme tu dis 😉 .

                                          Tu ne fais pas spawner ton minerai plus souvent que le diamant, voici le code pour le diamant :

                                          this.diamondGen = new WorldGenMinable(Blocks.diamond_ore, 7);
                                          
                                          et la génération :
                                          this.genStandardOre1(1, this.diamondGen, 0, 16);
                                          qui appelle cette fonction :
                                          /**
                                          * Standard ore generation helper. Generates most ores.
                                          */
                                          protected void genStandardOre1(int p_76795_1_, WorldGenerator p_76795_2_, int p_76795_3_, int p_76795_4_)
                                          {
                                          for (int l = 0; l < p_76795_1_; ++l)
                                          {
                                          int i1 = this.chunk_X + this.randomGenerator.nextInt(16);
                                          int j1 = this.randomGenerator.nextInt(p_76795_4_ - p_76795_3_) + p_76795_3_;
                                          int k1 = this.chunk_Z + this.randomGenerator.nextInt(16);
                                          p_76795_2_.generate(this.currentWorld, this.randomGenerator, i1, j1, k1);
                                          }
                                          }
                                          
                                          

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

                                            Ducou, ques que je doit changer dans mes codes pour qu’il sois 2 foit moin rare que le diaman par exemple?

                                            Edit: j’ai suivi le bonus d tuto, mais bien que je veut que mon minerais de rubis donne une gemme, je voudrais que, a la pioche fortune, toute en gardant une norme de un drop sans celle-ci, puisse dropper plus d’une gemme lorsqu’elle est minée a l’aide d’une pioche fortune.

                                            Bref, j’espere que quelqu’un poura m’aider 🙂

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB