- 30
- 0
В более новых версиях есть название и описание предметов, например:
Мне понравился данный способ описания предметов и решил разузнать его.
Создаём класс ItemAxeSoul.java
P.s. Я не хочу выкладывать код этого топора. Поэтому разбор будет происходить на другом предмете.
Помогут нам в добавлении описания предмета.
Позволяет вставить описание. Строк может быть множество, но мы остановимся на двух: ID и описание.
То самое описание, что будет в выводится при наведении курсора на предмет
В Item.java пишем следующее:
20032 - ID , "" - дополнительное описание.
Если нам его нужно вставить в описание, то в getItemTitle() нужно дописать + this.itemName
Готово! У нас появилось описание!
Также можно добавить описание урона
Или, например, координаты
Или при нажатии определенной клавиши высвечивается больше информации.
Мне понравился данный способ описания предметов и решил разузнать его.
Создаём класс ItemAxeSoul.java
P.s. Я не хочу выкладывать код этого топора. Поэтому разбор будет происходить на другом предмете.
Код:
package net.minecraft.src;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ItemAxeSoul extends Item
{
public final String itemName;
protected ItemMatrix(int par1, String par2Str)
{
super(par1);
this.itemName = par2Str;
this.maxStackSize = 1;
this.setCreativeTab(CreativeTabs.tabMisc);
}
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
{
par3List.add("ID: §620032");
par3List.add(this.getItemTitle());
}
public String getItemTitle()
{
return "Призрачный топор, хранящий в себе души поверженных";
}
}
Код:
public final String itemName;
this.itemName = par2Str;
Код:
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
{
par3List.add("ID: §620032");
par3List.add(this.getItemTitle());
}
Код:
public String getItemTitle()
{
return "Призрачный топор, хранящий в себе души поверженных";
}
То самое описание, что будет в выводится при наведении курсора на предмет
В Item.java пишем следующее:
Код:
public static Item axeSoul = (new ItemAxeSoul(20032, "")).setUnlocalizedName("axesoul");
Если нам его нужно вставить в описание, то в getItemTitle() нужно дописать + this.itemName
Готово! У нас появилось описание!
Также можно добавить описание урона
Код:
par3List.add("§2Урон: §6" + this.weaponDamage);
Код:
if (world.getWorldInfo().getDimension() == 0){
s.setItemName("\u0422\u0435\u043B\u0435\u043F\u043E\u0440\u0442\u0435\u0440: \u041C\u0438\u0440,
"+Integer.toString((int)p.posX)+", "+Integer.toString((int)p.posY)+", "+Integer.toString((int)p.posZ));
}else if (world.getWorldInfo().getDimension() == 1){
s.setItemName("\u0422\u0435\u043B\u0435\u043F\u043E\u0440\u0442\u0435\u0440: \u0410\u0434,
"+Integer.toString((int)p.posX)+", "+Integer.toString((int)p.posY)+", "+Integer.toString((int)p.posZ));
}else if (world.getWorldInfo().getDimension() == 2){
s.setItemName("\u0422\u0435\u043B\u0435\u043F\u043E\u0440\u0442\u0435\u0440: \u041A\u0440\u0430\u0439,"+Integer.toString((int)p.posX)+", "+Integer.toString((int)p.posY)+", "+Integer.toString((int)p.posZ));
}
CopyPaste MCGL