10 avr. 2019, 20:08

Voici

package notfound.administration.items;

import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraftforge.client.event.ModelRegistryEvent;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.Mod.EventBusSubscriber;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import notfound.administration.ModAdministration;

@EventBusSubscriber(value = Side.CLIENT, modid = ModAdministration.MODID)
public class AdministrationItems
{
    public static final Item CARTE_IDENTITE = new ItemCarteIdentite();
    public static final Item PERMIS_DE_CONDUIRE = new ItemPermisDeConduire();
    
    public static void setItemName(Item item, String name)
    {
        item.setRegistryName(ModAdministration.MODID, name).setTranslationKey(ModAdministration.MODID + "." + name);
        item.setRegistryName(ModAdministration.MODID, name).setTranslationKey(ModAdministration.MODID + "." + name); 
    }
    
    @SideOnly(Side.CLIENT)
@SubscribeEvent   
    public static void registerItemModels(ModelRegistryEvent event)
    {
        registerModel(CARTE_IDENTITE, 0);
        registerModel(PERMIS_DE_CONDUIRE, 0);
    }
    
    @SideOnly(Side.CLIENT)
    public static void registerModel(Item item, int metadata)
    {
        if (metadata < 0) metadata = 0;
        String ressourceName = item.getTranslationKey().substring(5).replace('.', ':');
        if (metadata > 0) ressourceName += "_m" + String.valueOf(metadata);
        
        ModelLoader.setCustomModelResourceLocation(item, metadata, new ModelResourceLocation(ressourceName, "inventory"));
    }
}