Не нумеруется UnlocalizedName при выдачи итемам меты.

Сообщения
4
Лучшие ответы
0
Реакции
0
Версия Minecraft
1.7.10
Доброго времени суток.
Я регистрирую мету для итемов. И так же регистрирую текстуры. Он находит текстуры, но все итемы всё равно без них и называются одинаково.
Код итема и регистрации:
Java:
package ru.dnevnnoy.ingot.items;

import java.util.List;

import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import ru.dnevnnoy.ingot.Core;

public class Items extends Item {
  
    private int count;
    @SideOnly(Side.CLIENT)
    private IIcon[] icon;
  
    public Items(String name, String texture, int count) {
        this.setUnlocalizedName(name);
        this.count = count;
        this.setTextureName(Core.MODID + ":" + texture);
        this.setCreativeTab(Core.IngotsTab);
        GameRegistry.registerItem(this, name);
    } 
    @SideOnly(Side.CLIENT)
    public void getSubItems(Item item, CreativeTabs tav, List subItems) {
        for (int n = 0; n < this.count; ++n) {
            subItems.add(new ItemStack(this, 1, n));
        }
    }
  
    @SideOnly(Side.CLIENT)
    public IIcon getIcon(int side, int meta) {
        return this.icon[meta];
    }
  
    @SideOnly(Side.CLIENT)
    public void registerIcons(IIconRegister icon) {
        this.icon = new IIcon[this.count];
        for (int i = 0; i < this.count; ++i) {
            this.icon[i] = icon.registerIcon(this.getIconString() + "_" + i);
        }
    }
  
}
И код майн класса о регистрации предмета в ините:
Java:
    public Item ingot;

  
    @EventHandler
    public void preLoad(FMLPreInitializationEvent event) {
        ingot = new Items("ingot", "Test", 10);
    }
Сам майн запускается и итемы есть. Но название у них у всех одинаковое.
 
Последнее редактирование:
Сообщения
214
Лучшие ответы
15
Реакции
80
Чтобы они имели разные названия, нужно переопределить метод getItemStackDisplayName и в зависимости от метадаты возвращать нужную строку.
Попробуй инициализировать свой массив иконок там, где ты его объявляешь.

Еще, совсем забыл, в конструкторе вызови метод setHasSubtypes(true);
 
Последнее редактирование:
Сверху