1.7.2 Probleme création de nouveau cd



  • Salut J'ai un gros problème avec les disque que je vien de rajouter lorsque j'ai crée le premier hier soir il fonctionnait au niveau son sauf le lang qui n'etait toujours pas configurer mais se matin j'en ai crée 6 de plus mais lorsque je met un disque dans le jukebox c'est toujours la meme musique qui est lancé et en se moment meme je suis perdu.

    Merci de m'aider 😃

    J'ai suivi quelque tuto mais pas très complet je me perd vite disons


  • Moddeurs confirmés Rédacteurs Administrateurs

    Salut,
    Envoie tes codes, sans les codes on ne peut pas t'aider.



  • Me semblait avoir oublier un petit truc XD
    Tien Classe Principale :

    package fr.lastfury.common;
    
    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;
    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.lastfury.proxy.commonproxy;
    
    @Mod(modid = "lastfury", name = "lastfury", version = "1.0.0")
    
    public class Last
    {
    
    @Instance("lastfury")
    public static Last instance;
    
    @SidedProxy(clientSide = "fr.lastfury.proxy.Clientproxy", serverSide = "fr.lastfury.proxy.commonproxy")
    
    public static commonproxy proxy;
    public static Block Blocdetorate, mineraisdesinitium, blocdesinitium;
    public static Block mineraisdetorate;
    public static Item torate, sinitium;
    public static Item weareone, revenge,fallenkingdoms, takebackthenight, blackpearls, Animals, skyrim;
    public static Item swordtorate, pickaxetorate, axetorate, shoveltorate, hoetorate, helmetTorate, chestPlateTorate, leggingsTorate, bootsTorate;
    public static Item swordsinitium, pickaxesinitium, axesinitium, shovelsinitium, hoesinitium, helmetsinitium, chestPlatesinitium, leggingssinitium, bootssinitium;
    public static ToolMaterial Toratetool = EnumHelper.addToolMaterial("Torate", 3, 1500, 17.0F, 6.0F, 50);
    public static ToolMaterial sinitiumtool = EnumHelper.addToolMaterial("sinitium", 3, 3000, 27.0F, 7.0F, 100);
    public static ArmorMaterial Toratearmor = EnumHelper.addArmorMaterial("Toratearmor", 40, new int[] {5, 7, 6, 5}, 12);
    public static ArmorMaterial sinitiumarmor = EnumHelper.addArmorMaterial("sinitiumarmor", 50, new int[] {6, 8, 7, 6}, 15);
    
    @EventHandler
    public void preInit(FMLPreInitializationEvent event)
    {
    
    skyrim = new skyrim(0, null).setUnlocalizedName("skyrim").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:skyrim");
    Animals = new Animals(0, null).setUnlocalizedName("Animals").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:Animals");
    blackpearls = new blackpearls(0, null).setUnlocalizedName("blackpearls").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:blackpearls");
    takebackthenight = new takebackthenight(0, null).setUnlocalizedName("takebackthenight").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:takebackthenight");
    fallenkingdoms = new fallenkigdoms(0, null).setUnlocalizedName("fallenkingdoms").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:fallenkingdomss");
    revenge = new revenge(0, null).setUnlocalizedName("revenge").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:revenge");
    weareone = new weareone(0, null).setUnlocalizedName("weareone").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:weareone");
    sinitium = new sinitium().setUnlocalizedName("sinitium").setTextureName("lastfury:sinitium").setCreativeTab(CreativeTabs.tabMaterials);
    mineraisdesinitium = new mineraisdesinitium(Material.iron).setBlockName("mineraisdesinitium").setBlockTextureName("lastfury:mineraisdesinitium").setCreativeTab(CreativeTabs.tabBlock).setHardness(3.0F);
    blocdesinitium = new blocdesinitium(Material.iron).setBlockName("blocdesinitium").setBlockTextureName("lastfury:blocdesinitium").setCreativeTab(CreativeTabs.tabBlock).setHardness(3.0F);
    torate = new Torate().setUnlocalizedName("Torate").setTextureName("lastfury:Torate").setCreativeTab(CreativeTabs.tabMaterials);
    mineraisdetorate = new mineraisdetorate(Material.iron).setBlockName("mineraisdetorate").setBlockTextureName("lastfury:mineraisdetorate").setCreativeTab(CreativeTabs.tabBlock).setHardness(3.0F);
    Blocdetorate = new Blocdetorate(Material.iron).setBlockName("Blocdetorate").setBlockTextureName("lastfury:Blocdetorate").setCreativeTab(CreativeTabs.tabBlock).setHardness(3.0F);
    swordtorate = new ItemTorateSword(Toratetool).setUnlocalizedName("swordTorate").setTextureName("lastfury:SwordTorate").setCreativeTab(CreativeTabs.tabCombat);
    pickaxetorate = new ItemToratePickaxe(Toratetool).setUnlocalizedName("pickaxeTorate").setTextureName("lastfury:PickaxeTorate").setCreativeTab(CreativeTabs.tabTools);
    axetorate = new ItemTorateAxe(Toratetool).setUnlocalizedName("axeTorate").setTextureName("lastfury:AxeTorate").setCreativeTab(CreativeTabs.tabTools);
    shoveltorate = new ItemTorateShovel(Toratetool).setUnlocalizedName("shovelTorate").setTextureName("lastfury:ShovelTorate").setCreativeTab(CreativeTabs.tabTools);
    hoetorate = new ItemTorateHoe(Toratetool).setUnlocalizedName("hoeTorate").setTextureName("lastfury:HoeTorate").setCreativeTab(CreativeTabs.tabTools);
    helmetTorate = new ItemTutoArmor(Toratearmor, 0).setUnlocalizedName("helmetTorate").setTextureName("lastfury:helmetTorate").setCreativeTab(CreativeTabs.tabCombat);
    chestPlateTorate = new ItemTutoArmor(Toratearmor, 1).setUnlocalizedName("chestPlateTorate").setTextureName("lastfury:chestplateTorate").setCreativeTab(CreativeTabs.tabCombat);
    leggingsTorate = new ItemTutoArmor(Toratearmor, 2).setUnlocalizedName("leggingsTorate").setTextureName("lastfury:leggingsTorate").setCreativeTab(CreativeTabs.tabCombat);
    bootsTorate = new ItemTutoArmor(Toratearmor, 3).setUnlocalizedName("bootsTorate").setTextureName("lastfury:bootsTorate").setCreativeTab(CreativeTabs.tabCombat);
    swordsinitium = new ItemsinitiumSword(sinitiumtool).setUnlocalizedName("swordsinitium").setTextureName("lastfury:Swordsinitium").setCreativeTab(CreativeTabs.tabCombat);
    pickaxesinitium = new ItemsinitiumPickaxe(sinitiumtool).setUnlocalizedName("pickaxev").setTextureName("lastfury:Pickaxesinitium").setCreativeTab(CreativeTabs.tabTools);
    axesinitium = new ItemsinitiumAxe(sinitiumtool).setUnlocalizedName("axesinitium").setTextureName("lastfury:Axesinitium").setCreativeTab(CreativeTabs.tabTools);
    shovelsinitium = new ItemsinitiumShovel(sinitiumtool).setUnlocalizedName("shovelsinitium").setTextureName("lastfury:Shovelsinitium").setCreativeTab(CreativeTabs.tabTools);
    hoesinitium = new ItemsinitiumHoe(sinitiumtool).setUnlocalizedName("hoesinitium").setTextureName("lastfury:Hoesinitium").setCreativeTab(CreativeTabs.tabTools);
    helmetsinitium = new ItemTutoArmor1(sinitiumarmor, 0).setUnlocalizedName("helmetsinitium").setTextureName("lastfury:helmetsinitium").setCreativeTab(CreativeTabs.tabCombat);
    chestPlatesinitium = new ItemTutoArmor1(sinitiumarmor, 1).setUnlocalizedName("chestPlatesinitium").setTextureName("lastfury:chestplatesinitium").setCreativeTab(CreativeTabs.tabCombat);
    leggingssinitium = new ItemTutoArmor1(sinitiumarmor, 2).setUnlocalizedName("leggingssinitium").setTextureName("lastfury:leggingssinitium").setCreativeTab(CreativeTabs.tabCombat);
    bootssinitium = new ItemTutoArmor1(sinitiumarmor, 3).setUnlocalizedName("bootssinitium").setTextureName("lastfury:bootssinitium").setCreativeTab(CreativeTabs.tabCombat);
    
    WorldGeneration worldgeneration = new WorldGeneration();
    GameRegistry.registerBlock(Blocdetorate, "Blocdetorate");
    GameRegistry.registerItem(skyrim, "skyrim");
    GameRegistry.registerItem(Animals, "Animals");
    GameRegistry.registerItem(blackpearls, "blackpearls");
    GameRegistry.registerItem(weareone, "weareone");
    GameRegistry.registerItem(takebackthenight, "takebackthenight");
    GameRegistry.registerItem(fallenkingdoms, "fallenkingdoms");
    GameRegistry.registerItem(revenge, "revenge");
    GameRegistry.registerItem(torate, "torate");
    GameRegistry.registerBlock(mineraisdetorate, "mineraisdetorate");
    GameRegistry.registerItem(swordtorate, "swordTorate");
    GameRegistry.registerItem(pickaxetorate, "pickaxeTorate");
    GameRegistry.registerItem(axetorate, "axeTorate");
    GameRegistry.registerItem(shoveltorate, "shovelTorate");
    GameRegistry.registerItem(chestPlateTorate, "chestPlateTorate");
    GameRegistry.registerItem(helmetTorate, "helmetTorate");
    GameRegistry.registerItem(bootsTorate, "bootsTorate");
    GameRegistry.registerItem(leggingsTorate, "leggingsTorate");
    GameRegistry.registerItem(hoetorate, "hoeTorate");
    GameRegistry.addSmelting(mineraisdetorate, new ItemStack(torate, 1, 0), 1.0F);
    GameRegistry.registerWorldGenerator(worldgeneration, 0);
    GameRegistry.addRecipe(new ItemStack(Blocdetorate, 1), new Object[]{"YYY", "YYY", "YYY", 'Y', new ItemStack(Last.torate)});
    GameRegistry.addRecipe(new ItemStack(helmetTorate, 1), new Object[]{"YYY", "Y Y", " ", 'Y', new ItemStack(Last.torate)});
    GameRegistry.addRecipe(new ItemStack(chestPlateTorate, 1), new Object[]{"Y Y", "YYY", "YYY", 'Y', new ItemStack(Last.torate)});
    GameRegistry.addRecipe(new ItemStack(leggingsTorate, 1), new Object[]{"YYY", "Y Y", "Y Y", 'Y', new ItemStack(Last.torate)});
    GameRegistry.addRecipe(new ItemStack(bootsTorate, 1), new Object[]{" ", "Y Y", "Y Y", 'Y', new ItemStack(Last.torate)});
    GameRegistry.addRecipe(new ItemStack(bootsTorate, 1), new Object[]{"Y Y", "Y Y", " ", 'Y', new ItemStack(Last.torate)});
    GameRegistry.addRecipe(new ItemStack(helmetTorate, 1), new Object[]{" ", "YYY", "Y Y", 'Y', new ItemStack(Last.torate)});
    GameRegistry.addRecipe(new ItemStack(swordtorate, 1), new Object[]{" Y ", " Y ", " X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(swordtorate, 1), new Object[]{" Y", " Y", " X", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(swordtorate, 1), new Object[]{"Y ", "Y ", "X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(shoveltorate, 1), new Object[]{" Y", " X", " X", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(shoveltorate, 1), new Object[]{"Y ", "X ", "X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(axetorate, 1), new Object[]{" YY", " XY", " X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(axetorate, 1), new Object[]{"YY ", "YX ", " X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(shoveltorate, 1), new Object[]{" Y ", " X ", " X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(pickaxetorate, 1), new Object[]{"YYY", " X ", " X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(hoetorate, 1), new Object[]{"YY ", " X ", " X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(hoetorate, 1), new Object[]{" YY", " X ", " X ", 'Y', new ItemStack(Last.torate), 'X', new ItemStack(Items.stick)});
    GameRegistry.addShapelessRecipe(new ItemStack(torate, 9), new Object[]{ new ItemStack(Blocdetorate)});
    GameRegistry.registerItem(sinitium, "sinitium");
    GameRegistry.registerBlock(mineraisdesinitium, "mineraisdesinitium");
    GameRegistry.registerBlock(blocdesinitium, "blocdesinitium");
    GameRegistry.registerItem(hoesinitium, "hoesinitium");
    GameRegistry.registerItem(shovelsinitium, "shovelsinitium");
    GameRegistry.registerItem(axesinitium, "axesinitium");
    GameRegistry.registerItem(pickaxesinitium, "pickaxesinitium");
    GameRegistry.registerItem(swordsinitium, "swordsinitium");
    GameRegistry.registerItem(helmetsinitium, "helmetsinitium");
    GameRegistry.registerItem(chestPlatesinitium, "chestPlatesinitium");
    GameRegistry.registerItem(leggingssinitium, "leggingssinitium");
    GameRegistry.registerItem(bootssinitium, "bootssinitium");
    GameRegistry.addRecipe(new ItemStack(blocdesinitium, 1), new Object[]{"YYY", "YYY", "YYY", 'Y', new ItemStack(Last.sinitium)});
    GameRegistry.addRecipe(new ItemStack(helmetsinitium, 1), new Object[]{"YYY", "Y Y", " ", 'Y', new ItemStack(Last.sinitium)});
    GameRegistry.addRecipe(new ItemStack(chestPlatesinitium, 1), new Object[]{"Y Y", "YYY", "YYY", 'Y', new ItemStack(Last.sinitium)});
    GameRegistry.addRecipe(new ItemStack(leggingssinitium, 1), new Object[]{"YYY", "Y Y", "Y Y", 'Y', new ItemStack(Last.sinitium)});
    GameRegistry.addRecipe(new ItemStack(bootssinitium, 1), new Object[]{" ", "Y Y", "Y Y", 'Y', new ItemStack(Last.sinitium)});
    GameRegistry.addRecipe(new ItemStack(bootssinitium, 1), new Object[]{"Y Y", "Y Y", " ", 'Y', new ItemStack(Last.sinitium)});
    GameRegistry.addRecipe(new ItemStack(helmetsinitium, 1), new Object[]{" ", "YYY", "Y Y", 'Y', new ItemStack(Last.sinitium)});
    GameRegistry.addRecipe(new ItemStack(swordsinitium, 1), new Object[]{" Y ", " Y ", " X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(swordsinitium, 1), new Object[]{" Y", " Y", " X", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(swordsinitium, 1), new Object[]{"Y ", "Y ", "X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(shovelsinitium, 1), new Object[]{" Y", " X", " X", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(shovelsinitium, 1), new Object[]{"Y ", "X ", "X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(axesinitium, 1), new Object[]{" YY", " XY", " X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(axesinitium, 1), new Object[]{"YY ", "YX ", " X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(shovelsinitium, 1), new Object[]{" Y ", " X ", " X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(pickaxesinitium, 1), new Object[]{"YYY", " X ", " X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(hoesinitium, 1), new Object[]{"YY ", " X ", " X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addRecipe(new ItemStack(hoesinitium, 1), new Object[]{" YY", " X ", " X ", 'Y', new ItemStack(Last.sinitium), 'X', new ItemStack(Items.stick)});
    GameRegistry.addShapelessRecipe(new ItemStack(sinitium, 9), new Object[]{ new ItemStack(blocdesinitium)});
    GameRegistry.addSmelting(mineraisdesinitium, new ItemStack(sinitium, 1, 0), 1.0F);
    
    }
    
    @EventHandler
    public void init(FMLInitializationEvent event)
    {
    proxy.registerRender();
    }
    
    @EventHandler
    public void postInit(FMLPostInitializationEvent event)
    {
    
    }
    }
    

    Classe du Cd :

    package fr.lastfury.common;
    
    import net.minecraft.item.ItemRecord;
    import net.minecraft.util.ResourceLocation;
    
    public class revenge extends ItemRecord {
    
    protected revenge(int id, String name){
    
    super(name);
    
    }
    public ResourceLocation getRecordResource(String name)
    {
    return new ResourceLocation("lastfury:records.revenge");
    }
    }
    
    

    Classe d'un autre cd au cas ou :

    package fr.lastfury.common;
    
    import net.minecraft.item.ItemRecord;
    import net.minecraft.util.ResourceLocation;
    
    public class takebackthenight extends ItemRecord {
    
    protected takebackthenight(int id, String name){
    
    super(name);
    
    }
    public ResourceLocation getRecordResource(String name)
    {
    return new ResourceLocation("lastfury:records.takebackthenight");
    }
    }
    
    

  • Moddeurs confirmés Rédacteurs Administrateurs

    Tu as mit un nom null a tes cd, c'est surement ça qui cause problème. De plus, id ne sert à rien dans le constructeur. Fait comme ça :

    protected revenge(String name){
    super(name);
    }
    

    Pour le constructeur de la classe.
    Et dans la classe principale :

    revenge = new revenge("revenge").setUnlocalizedName("revenge").setCreativeTab(CreativeTabs.tabMisc).setTextureName("lastfury:revenge");
    

    D'ailleurs tu pourrais même utiliser la même classe pour tout tes cd :

    package fr.lastfury.common;
    
    import net.minecraft.item.ItemRecord;
    import net.minecraft.util.ResourceLocation;
    
    public class ItemCD extends ItemRecord {
    
    protected ItemCD(String name){
    super(name);
    }
    
    public ResourceLocation getRecordResource(String name)
    {
    return new ResourceLocation("lastfury:records." + name);
    }
    }
    


  • J'ai pas trop compris pour la classe Générique pour les cd ?
    Le code que tu a mis oui mais c'est pour mettre deux

    public ResourceLocation getRecordResource(String name)
    {
    return new ResourceLocation("lastfury:records." + name);
    }
    }

    dans la meme classe que je comprend pas


  • Moddeurs confirmés

    Arretons d'appeler les classes mères des classes génériques.
    Ce n'est pas ça une classe générique.
    Une classe générique c'est une classe qui prend des paramètre de type et qui s'adapte en fonction de ce type.
    Les collections sont des classes génériques.

    Ici, on parle plutot d'une classe mère.

    Pour ton cas, je ne pense pas que ça sert a grand chose de faire une classe mère et de créé une classe par CD qui tu veux créer.
    Pour moi, il serait préférable de mettre le constructeur ItemCD en public et de faire varié le nom pour obtenir des object différent. Ensuite tu fais un register sur tout tes objects avec un GameRegistry.registerItem(monObjetDeTypeItemCD, monObjetDeTypeItemCD.getName());



  • @'Blackout':

    Arretons d'appeler les classes mères des classes génériques.
    Ce n'est pas ça une classe générique.
    Une classe générique c'est une classe qui prend des paramètre de type et qui s'adapte en fonction de ce type.
    Les collections sont des classes génériques.

    Précision pour les personnes qui sont nouvelles en java, les classes génériques sont celles qui ont un <quelquechose>après leur nom (genre HashMap<k, v="">). Eclipse met une erreur/un avertissement si vous ne mettez pas de type entre <> lors de l'instanciation (Exemple : HashMap hm = new HashMap(); => Eclipse n'aime pas | HashMap <typedeclé, typedevaleur="">hm = new HashMap<typedeclé, typedevaleur="">(); => Eclipse aime) [FIN DE HORS SUJET]

    Autre optimisation possible, placer tous les .quelquechose(paramètre) dans le constructeur, la classe principale sera plus légère et plus lisible :

    public ItemCD(String name){
    super(name);
    this.setUnlocalizedName(name);
    this.setCreativeTab(CreativeTabs.misc);
    this.setTextureName("lastfury:" + name);
    }
    ```</typedeclé,></typedeclé,></k,></quelquechose>

  • Moddeurs confirmés Rédacteurs Administrateurs

    @'mosca421':

    J'ai pas trop compris pour la classe Générique pour les cd ?
    Le code que tu a mis oui mais c'est pour mettre deux

    public ResourceLocation getRecordResource(String name)
    {
    return new ResourceLocation("lastfury:records." + name);
    }
    }

    dans la meme classe que je comprend pas

    Avec cette fonction name s'adapte en fonction du nom que tu mets dans le constructeur :
    evenge = new ItemCD("revenge")…. -> name vaudra revenge
    weareone = new ItemCD("weareone").... -> name vaudra weareone


Log in to reply