Иконка ресурса

Отображение класса и именного ID предмета в его описании

Версия(и) Minecraft
1.7.10
Иногда требуется узнать класс предмета/блока, чтобы посмотреть его методы или просто узнать именной ID, но мне чёт лень делать это с помощью глобального поиска, да и вообще я уверен что есть хардкорщики, пишущие в блокноте. Просто впихните это в любой класс, зарегистрированный в шине событий (event bus) и в подписи блоков или предметов появится их именной id и класс.

Код:
    @SubscribeEvent
    public void onTooltip(ItemTooltipEvent event) 
    {
        //Получаем itemstack и уникальный идентификатор предмета
        ItemStack item = event.itemStack;
        GameRegistry.UniqueIdentifier id = GameRegistry.findUniqueIdentifierFor(item.getItem());

        //Добавляем подпись
        event.toolTip.add("§bClass");

        //Если это экземпляр блока-предмета
        if(item.getItem() instanceof ItemBlock)
        {
            //Ищем блок и добавляем имя его класса в подпись
            event.toolTip.add("§b⤷ " + GameRegistry.findBlock(id.modId, id.name).getClass().getName());
        }
        //Если же это экземпляр обычного предмета
        else
        {
            //Ищем предмет и добавляем имя его класса в подпись
            event.toolTip.add("§b⤷ " + GameRegistry.findItem(id.modId, id.name).getClass().getName());
        }
        //Добавляем именной ID в подпись
        event.toolTip.add("§bName ID");
        event.toolTip.add("§b⤷ " + id);
    }

2020-07-24_22.33.58.png
  • Like
Реакции: mousecray
Автор
Hexagone
Просмотры
1,016
Первый выпуск
Обновление
Оценка
4.00 звёзд 1 оценок

Последние рецензии

Registry name(aka Name ID) можно посмотреть в режиме продвинутых тултипов F3+H.
Хорошей идеей будет сделать кросс-версионность, чтобы можно было юзать от 1.7.10 до 1.14

P.S. ответь на рецензию в комментариях к ресурсу, а не к самой рецензии, иначе не смогу потом отредачить ее
Сверху