Вверх ↑
Этот топик читают: Гость
Ответов: 4557
#1: 2016-02-24 18:49:37 ЛС | профиль | цитата
Вывод ID в описании к предмету


  В туториале Дополнительные поля описания предмета мы научились делать описание к предметам. Но текстовое описание - не предел возможности этих полей: в них можно вставлять еще и различную информацию (ID, прочность, урон, защита, координаты, ник и т.д.). В этом туториале мы научимся выводить ID в описание.


Для начала работы напишем код, в котором также укажем возможность вставки описания (я для примера взял
):
 public static Item magik = (new ItemMagik(2503, EnumToolMaterial.EMERALD, "Посох")).setUnlocalizedName("Magik").setFull3D().setCreativeTab(CreativeTabs.tabTools);    
package net.minecraft.src;

import java.util.List;

public class ItemMagik extends Item
{
    public final String itemName;
    protected EnumToolMaterial theToolMaterial;
    public final int shiftedIndex;
    
    public ItemMagik(int par1, EnumToolMaterial par2EnumToolMaterial, String par2Str)
    {
        super(par1);
        this.theToolMaterial = par2EnumToolMaterial;
        this.maxStackSize = 1;
        this.setMaxDamage(par2EnumToolMaterial.getMaxUses());
        this.itemName = par2Str;
        this.shiftedIndex = par1;
    	 
        this.setCreativeTab(CreativeTabs.tabTools);
    }

    public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
    {

        par3List.add("ID: §6" + this.itemID);
        par3List.add(this.getItemTitle());
    }    
    public String getItemTitle()
    {
        return "Магический посох, способный превращать землю в блок травы";
    }    
    
  /** ТУТ ДОЛЖЕН БЫТЬ КОД РАБОТЫ ПРЕДМЕТА, НО Я ЕГО СКРЫЛ **/

    public boolean isFull3D()
    {
        return true;
    }

    public String getMaterialName()
    {
        return this.theToolMaterial.toString();
    }
}
Логично взять непосредственно this.itemID;:

Но ID на 256 больше. Это нам не годится.

Решение проблемы - вместо this.itemID; использовать this.shiftedIndex;:


Поменяв значение указателя this, мы получили нужный результат.
Таким образом, мы научились добавлять ID в описание предмета
карма: 6
3
Голосовали:HAP_KoTuK, K.R.A.K.E.N., _Vaas_
1
Сообщение
...