Comment creer un item dans son mod qui est le même qu'un autre mod (pour les mêmes recettes)



  • Bonjour, j'aimerais creer un mod pour une génération de minerai d'un autre mod mais comment dois je faire ?



  • Bonjour,
    Il y a déjà des tutoriels sur le forum je te laisse utiliser la fonction de recherche.
    Et si tu veux utiliser ceux d'un autre mod, si tu peux avoir les sources de ce mod ajoutes les avec les tiennes (solution la plus simple), sinon tu dois prendre le jar du mod, le mettre dans le dossier 'libs' de ta workspace (crées-le si il n'existe pas), faire un '.\gradlew eclipse' et ajouter le mod CodeChickenCore au dossier 'eclipse/mods' de la workspace.


  • Moddeurs confirmés Rédacteurs Administrateurs

    Salut,
    Il faut utiliser l'OreDictionary (le tutoriel sur les recettes en parle).



  • quel tutoriel ? (car je n'ai rien trouvé sur l'ore dictionnary)


  • Moddeurs confirmés Rédacteurs Administrateurs

    Je dis que le tutoriel sur les recettes en parle.
    https://www.minecraftforgefrance.fr/topic/1297/les-recettes#l-oredictionary



  • Même avec l'ore dictionnary ça ne marche pas, Ma class principale :

    package fr.***.palagen.common;
    
    import net.minecraft.block.Block;
    import net.minecraft.block.material.Material;
    import net.minecraft.client.Minecraft;
    import net.minecraft.client.gui.GuiControls;
    import net.minecraft.client.gui.GuiMainMenu;
    import net.minecraft.client.gui.GuiMultiplayer;
    import net.minecraft.client.gui.GuiResourcePackList;
    import net.minecraft.client.gui.GuiScreen;
    import net.minecraft.client.gui.GuiScreenOptionsSounds;
    import net.minecraft.client.gui.GuiScreenResourcePacks;
    import net.minecraft.client.gui.GuiVideoSettings;
    import net.minecraft.client.gui.stream.GuiStreamOptions;
    import net.minecraft.creativetab.CreativeTabs;
    import net.minecraft.init.Blocks;
    import net.minecraft.init.Items;
    import net.minecraft.item.Item;
    import net.minecraft.item.ItemStack;
    import net.minecraftforge.client.event.GuiScreenEvent.InitGuiEvent;
    import net.minecraftforge.common.MinecraftForge;
    import net.minecraftforge.oredict.OreDictionary;
    
    import org.apache.logging.log4j.Logger;
    
    import cpw.mods.fml.common.FMLCommonHandler;
    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.event.FMLInitializationEvent;
    import cpw.mods.fml.common.event.FMLPostInitializationEvent;
    import cpw.mods.fml.common.event.FMLPreInitializationEvent;
    import cpw.mods.fml.common.eventhandler.SubscribeEvent;
    import cpw.mods.fml.common.gameevent.TickEvent;
    import cpw.mods.fml.common.gameevent.TickEvent.Phase;
    import cpw.mods.fml.common.registry.GameRegistry;
    import cpw.mods.fml.relauncher.Side;
    import cpw.mods.fml.relauncher.SideOnly;
    
    @Mod(modid = "palagen", name = "Paladium Generation", version = "1.0.0")
    
    public class ModBase
    {
    	public static final String modid = "palagen";
        public static Logger logger;
        public static Block PaladiumOre;
        public static Block TitaneOre;
        public static Block AmethystOre;
        public static Item PaladiumIngot;
        public static Item TitaneIngot;
        public static Item AmethystIngot;
        
        @Instance("palagen")
        public static ModBase instance;
        public static final String MODID = "palagen";
    
        
        @EventHandler
        public void init(FMLPreInitializationEvent event)
        {
            PaladiumOre = new PaladiumOre(Material.rock).setBlockName("paladium_ore").setBlockTextureName(MODID + ":paladium_ore").setCreativeTab(CreativeTabs.tabBlock); 
            TitaneOre = new TitaneOre(Material.rock).setBlockName("titane_ore").setBlockTextureName(MODID + ":titane_ore").setCreativeTab(CreativeTabs.tabBlock);
            AmethystOre = new AmethystOre(Material.rock).setBlockName("amethyst_ore").setBlockTextureName(MODID + ":amethyst_ore").setCreativeTab(CreativeTabs.tabBlock);
            PaladiumIngot = new PaladiumIngot().setUnlocalizedName("paladium_ingot").setTextureName(MODID + ":paladium_ingot").setCreativeTab(CreativeTabs.tabMaterials);
            TitaneIngot = new TitaneIngot().setUnlocalizedName("titane_ingot").setTextureName(MODID + ":titane_ingot").setCreativeTab(CreativeTabs.tabMaterials);
            AmethystIngot = new AmethystIngot().setUnlocalizedName("amethyst_ingot").setTextureName(MODID + ":amethyst_ingot").setCreativeTab(CreativeTabs.tabMaterials);
            
            WorldGeneration worldgeneration = new WorldGeneration();
            GameRegistry.registerBlock( PaladiumOre, "Paladium_Ore");
            GameRegistry.registerBlock(TitaneOre, "Titane_Ore");
            GameRegistry.registerBlock(AmethystOre, "Amethyst_Ore");
            GameRegistry.registerItem(PaladiumIngot, "Paladium_Ingot");
            GameRegistry.registerItem(AmethystIngot, "Amethyst_Ingot");
            GameRegistry.registerItem(TitaneIngot, "Titane_Ingot");
            GameRegistry.addSmelting(PaladiumOre, new ItemStack(PaladiumIngot, 1, 1), 1.0F);
            GameRegistry.addSmelting(TitaneOre, new ItemStack(TitaneIngot, 1, 1), 1.0F);
            GameRegistry.addSmelting(AmethystOre, new ItemStack(AmethystIngot, 1, 1), 1.0F);
            GameRegistry.registerWorldGenerator(worldgeneration, 100);
    
        }
        
        @EventHandler
        public void init(FMLInitializationEvent event){
            OreDictionary.registerOre("Paladium Ore", ModBase.PaladiumOre);
            OreDictionary.registerOre("Paladium Ingot", ModBase.PaladiumIngot);
            OreDictionary.registerOre("Titane Ore", ModBase.TitaneOre);
            OreDictionary.registerOre("Titane Ingot", ModBase.TitaneIngot);
            OreDictionary.registerOre("Amethyst Ore", ModBase.AmethystOre);
            OreDictionary.registerOre("Amethyst Ingot", ModBase.AmethystIngot);
        
        }
        
        public static void oreDictionnary(){
        	//Ores
        	OreDictionary.registerOre("paladium_ore", new ItemStack(PaladiumOre));
        	
        	//Ingots
        	OreDictionary.registerOre("paladium_ingot", new ItemStack(PaladiumIngot));
        	
        }
        
        @EventHandler
        public void init(FMLPostInitializationEvent event)
        {
        
        }
        }
    

    Pouvez vous m'aider ?
    J'ai bougé L'ore dictionnary du Preinit au init mais ça ne change rien
    (mon jeu ne crash pas mais avec le Palamod ça ne fait pas les crafts)


  • Moddeurs confirmés Rédacteurs Administrateurs

    Il faut que les item de Palamod soit aussi enregistré dans l'ore dict pour que cela fonctionne (et avec le même nom)
    Si ce n'est pas le cas cela ne pourra jamais fonctionner.



  • Mdr il saît au moins que le Palamod est interdit à l'utilisation solo, et en dehors du serveur paladium, il est encore plus interdit de le modifier, je te conseille de créer ton propre mod avec tes propres ajouts plutôt que de copier coler un mod et d'ajouter les minerais !


  • Moddeurs confirmés Rédacteurs Modérateurs Administrateurs

    @ciolgaming Comment les forks d'un mod fonctionnent d'après toi ? Alors non, il n'est pas interdit de modifier un mod. En revanche, tu n'as pas le droit de partager une version modifiée d'un mod sans respecter la licence de celui-ci.


Log in to reply