Текстура для брони

Версия Minecraft
1.12.2

ReyMagos

Тег-бомбастер
412
7
121
Делаю текстуру для брони по учебнику.
Основной класс:
Java:
public class ItemDragonArmor extends ItemArmor {
    public static final ItemArmor.ArmorMaterial RubyArmorMaterial = EnumHelper.addArmorMaterial("redmod:ruby", "redmod:ruby", 38, new int[]{1, 1, 1, 1}, 7, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 2.0F).setRepairItem(new ItemStack(Item.getItemFromBlock(Blocks.IRON_BLOCK)));
    public ItemDragonArmor(String name, ArmorMaterial materialIn, int renderIndexIn, EntityEquipmentSlot equipmentSlotIn) {
        super(materialIn, renderIndexIn, equipmentSlotIn);
        this.setRegistryName(name);
        this.setUnlocalizedName(name);
    }
Регистрация:
Код:
public class ItemsRegister {
    public static Item
            DragonBoots = new ItemDragonArmor("boots", ItemDragonArmor.RubyArmorMaterial, 1, EntityEquipmentSlot.FEET),
            DragonLeggins = new ItemDragonArmor("leggs", ItemDragonArmor.RubyArmorMaterial, 2, EntityEquipmentSlot.LEGS),
            DragonChestplate = new ItemDragonArmor("chestplate", ItemDragonArmor.RubyArmorMaterial, 1, EntityEquipmentSlot.CHEST),
            DragonHelmet = new ItemDragonArmor("head", ItemDragonArmor.RubyArmorMaterial, 1, EntityEquipmentSlot.HEAD);
    public static void register()
    {
        setRegister(DragonBoots);
        setRegister(DragonLeggins);
        setRegister(DragonChestplate);
        setRegister(DragonHelmet);
    }

    public static void registerRender()
    {
        setRender(DragonBoots);
        setRender(DragonLeggins);
        setRender(DragonChestplate);
        setRender(DragonHelmet);
    }

    private static void setRegister(Item item)
    {
        ForgeRegistries.ITEMS.register(item);
    }
    private static void setRender(Item item)
    {
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(item.getRegistryName(), "inventory"));
    }
}
Также в текстурах лежит два файла: dragon_armor_layer0 и dragon_armor_layer1
Что надо ещё сделать?
 
Решение
Неправильное название. Правильно будет в конце _layer_0 и _layer_1. Короче говоря ты забыл(а) ещё одни нижние подчёркивания.

Я чуть-чуть подправила java:
Java:
public class ItemDragonArmor extends ItemArmor {
    public static final ItemArmor.ArmorMaterial RubyArmorMaterial = EnumHelper.addArmorMaterial("redmod:ruby", "redmod:ruby", 38, new int[]{1, 1, 1, 1}, 7, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 2.0F).setRepairItem(new ItemStack(Item.getItemFromBlock(Blocks.IRON_BLOCK)));
    public ItemDragonArmor(String name, ArmorMaterial materialIn, int renderIndexIn, EntityEquipmentSlot equipmentSlotIn) {
        super(materialIn, renderIndexIn, equipmentSlotIn);
        this.setRegistryName(dragonarmor);
        this.setUnlocalizedName(Dragon...
57
2
2
Неправильное название. Правильно будет в конце _layer_0 и _layer_1. Короче говоря ты забыл(а) ещё одни нижние подчёркивания.

Я чуть-чуть подправила java:
Java:
public class ItemDragonArmor extends ItemArmor {
    public static final ItemArmor.ArmorMaterial RubyArmorMaterial = EnumHelper.addArmorMaterial("redmod:ruby", "redmod:ruby", 38, new int[]{1, 1, 1, 1}, 7, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 2.0F).setRepairItem(new ItemStack(Item.getItemFromBlock(Blocks.IRON_BLOCK)));
    public ItemDragonArmor(String name, ArmorMaterial materialIn, int renderIndexIn, EntityEquipmentSlot equipmentSlotIn) {
        super(materialIn, renderIndexIn, equipmentSlotIn);
        this.setRegistryName(dragonarmor);
        this.setUnlocalizedName(Dragon armor);
    }

А текстурки брони должны называться вот так:
dragonarmor_layer_0
dragonarmor_layer_1

Вот сам код:
Код:
public class ItemsRegister {
    public static Item
            DragonBoots = new ItemDragonArmor("boots", ItemDragonArmor.RubyArmorMaterial, 1, EntityEquipmentSlot.FEET),
            DragonLeggins = new ItemDragonArmor("leggs", ItemDragonArmor.RubyArmorMaterial, 2, EntityEquipmentSlot.LEGS),
            DragonChestplate = new ItemDragonArmor("chestplate", ItemDragonArmor.RubyArmorMaterial, 1, EntityEquipmentSlot.CHEST),
            DragonHelmet = new ItemDragonArmor("head", ItemDragonArmor.RubyArmorMaterial, 1, EntityEquipmentSlot.HEAD);
    public static void register()
    {
        setRegister(DragonBoots);
        setRegister(DragonLeggins);
        setRegister(DragonChestplate);
        setRegister(DragonHelmet);
    }

    public static void registerRender()
    {
        setRender(DragonBoots);
        setRender(DragonLeggins);
        setRender(DragonChestplate);
        setRender(DragonHelmet);
    }

    private static void setRegister(Item item)
    {
        ForgeRegistries.ITEMS.register(item);
    }
    private static void setRender(Item item)
    {
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(item.getRegistryName(dragonarmor), "inventory"));
    }
}

Возможно я что то упускаю, но надеюсь что права. Удачи.
 
Сверху