Свойства предметов
Текстовое описание
public void addInformation(ItemStack itemStack, EntityPlayer player, List info, boolean b)
{
info.add(StatCollector.translateToLocal("item.tooltip.test") + " " + (itemStack.getMaxDamage() - itemStack.getItemDamage()));
}
public List<String> getHudInfo(ItemStack itemStack)
{
List info = new LinkedList();
info.add("Use Left: " + (itemStack.getMaxDamage() - itemStack.getItemDamage()));
return info;
}
StatCollector.translateToLocal() отвечает за создание локализации, itemStack.getMaxDamage() - itemStack.getItemDamage() вычисляет оставшееся кол-во использований. Для каждой строчки необходимо отдельно создавать info.
Кастомные инструменты
Для создания нестандартных инструментов необходимо задать максимальную прочность и сделать его контейнером.
this.setMaxDamage(100);
this.hasContainerItem = true;
Размер стака
Размер стака регулируется параметром this.setMaxStackSize().
Ремонтируемость
Возможность ремонта инструмента зависит от параметра this.canRepair = true/false.
Удаляемость предмета из окна крафтинга
Возможность сохранения инструмента при крафте устанавливается параметром this.doesContainerItemLeaveCraftingGrid = false.