Для начала добавим одну строчку:
Code
public static final Item smileItem = new Smile(3000).setItemName("smileItem");
Непосредственно после строки нашего блока:
Code
public static Block newblock = new BlockNew(110, 0).setHardness(0.5F).setResistance(1.0F).setBlockName("newblock");
Разберем код предмета.
Вызываем предмет по тех. названию.
Название для будущего Smile.java.
ID предмета.
Code
setItemName("smileItem")
Объявляем предмет, даем ему тех. название для идентификации.
Делаем отступ на одну строку от строки:
Code
newblock.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/textures/java.png");
И записываем следующее.
Code
ModLoader.AddName(smileItem, "Smile");
Даем название в самой игре.
И последняя строка рецепта.
Code
ModLoader.AddRecipe(new ItemStack(smileItem, 5), new Object[]{ "X#", "#X", Character.valueOf('X'), Block.dirt});
Число получаемых "смайлов" после крафтинга.
Code
"X#", "#X" Character.valueOf('X'), Block.dirt
Сам рецепт. По диагонали ставим грязь - получаем смайл.
Теперь нам нужно создать файлик Smile.java.
В первой строке как обычно:
Code
package net.minecraft.src;
В третьей и четвертой:
Code
public class Smile extends Item
{
А далее:
Code
public Smile(int i) {
super(i);
maxStackSize = 64;
}
}
maxStackSize = 64;
Максимальное количество предмета в одном стаке (нап. 64).
Тепреь присваиваем текстуру.
Возьмем текстуру смайлика
(размеры не изменять!)
И поместим ее в minecraft.jar/textures как обычно.
Пишем после рецепта:
Code
smileItem.iconIndex = ModLoader.addOverride("/gui/items.png", "/textures/smile.png");
Разбираем.
Определяет, чья иконка (текстура).
Code
ModLoader.addOverride("/gui/items.png", "/textures/smile.png")
Это вам уже знакомо. Тут промолчу.
Проверяем.
Теперь вам осталось просто запустить recompile.bat и опробовать смайлы.
Скриншоты из игры:
Крафт
На земле