提供: Minecraft Modding Wiki
2015年9月28日 (月) 00:35時点におけるFさん (トーク | 投稿記録)による版
移動先: 案内検索

アイテムのツールチップに情報を表示させる

ここでは、Itemクラスを継承してアイテムのツールチップに情報を表示させる方法について説明します。
この他にも、ItemTooltipEventを使うことでアイテムのツールチップに情報を表示させることはできますが、このページでは解説は行いません。

ソースコード

アイテムの登録を行うクラスやimportは省略します。

  • SampleItem.java
public class SampleItem extends Item {
    @Override
    @SideOnly(Side.CLIENT)
    public void addInformation(ItemStack itemStack, EntityPlayer player, List list, boolean advanced) {
        list.add("Sample Text");
    }
}

解説

SampleItem.java

Item#addInformationをオーバーライドします。
このメソッドの引数のlistに文字列を追加すると、その文字列がアイテムのツールチップに表示されるようになります。
第四引数のadvancedは、デバッグキー「F3+H」によって表示情報を拡張する設定が有効になっているときtrueになります(バニラではItemMapで使われています。ItemStack#getToolTip(EntityPlayer, boolean)、ItemToolTipEvent等を参照)。

文字色の変更は

list.add(ChatFormatting.RED+"Sample Text");

のように、文字列の前にChatFormattingを足すことでできます。

ローカライズされた文字列を表示したい場合は

list.add(StatCollector.translateToLocal("tile.gravel.name"));

のように、StatCollector#translateToLocalを使用することでできます。