はじめに
Miscタブに追加していたところを、オリジナルのクリエイティブタブに追加できるようにしていきます。
参考
Creative Tab/Item Group - Minecraft Modding Tutorial for MC 1.14/1.14.3
💻開発環境
ここでは環境は以下のようにします。
- Windows 10
- JDK 8u211
- Minecraft 1.14.4
- Minecraft Forge 1.14.4 (28.1.0)
- IntelliJ IDEA 2019.2.3
BiwakoItemGroupの作成
ItemGroup
クラスを継承したBiwakoItemGroup
クラスを作成します。
ItemGroupクラスの継承
親クラスItemGroup
のコンストラクタに引数を与え、
クリエイティブタブID名を指定します。
これは実際に表示される名前ではなく、ID名(プログラム内で利用される名前)であることに注意です。
後でこのID名と翻訳ファイルを結びつけることで表示名を設定します。
BiwakoItemGroup.java
package jp.yuyu.biwako_mod;
import net.minecraft.item.ItemGroup;
public class BiwakoItemGroup extends ItemGroup {
public BiwakoItemGroup(){
super("biwako_mod");
}
}
タブアイコン
createIcon
をオーバーライドします。
返り値のItemStack
メソッドの引数にItemを与えることで、
そのItemのアイコンが設定されます。
今回は琵ンゴット
を指定することにします。
BiwakoItemGroup.java
package jp.yuyu.biwako_mod;
import jp.yuyu.biwako_mod.lists.ItemList;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
public class BiwakoItemGroup extends ItemGroup {
public BiwakoItemGroup(){
super("biwako_mod");
}
@Override
public ItemStack createIcon() {
return new ItemStack(ItemList.BiwakoIngot);
}
}
作成したクリエイティブタブをアイテムに設定する
インスタンスの作成をしてから、ItemGroup.MISC
をItemGroup_Biwako
に変更する。
BiwakoMod.java
@Mod(BiwakoMod.MOD_ID)
public class BiwakoMod {
public static final String MOD_ID = "biwako_mod";
private static final Logger LOGGER = LogManager.getLogger(MOD_ID);
// インスタンスの作成
public static final ItemGroup ItemGroup_Biwako = new BiwakoItemGroup();
...
...
public static void onItemsRegistry(final RegistryEvent.Register<Item> itemRegistryEvent) {
LOGGER.info("HELLO from Register Item");
itemRegistryEvent.getRegistry().registerAll(
// ItemGroupの変更
ItemList.BiwakoIngot = new Item(new Item.Properties().group(ItemGroup_Biwako))
.setRegistryName(new ResourceLocation(MOD_ID, "biwako_ingot")),
// 変更
ItemList.BiwakoBlock = new BlockItem(BlockList.BiwakoBlock, new Item.Properties().group(ItemGroup_Biwako))
.setRegistryName(BlockList.BiwakoBlock.getRegistryName())
);
}
...
翻訳ファイル
en_us.json
{
"itemGroup.BiwakoItemGroup": "Biwako MOD"
}
ja_jp.json
{
"itemGroup.BiwakoItemGroup" : "琵琶湖 MOD"
}
Minecraftの起動
Githubにてプロジェクトを公開しています。