提供: Minecraft Modding Wiki
2019年9月14日 (土) 22:08時点におけるRedice (トーク | 投稿記録)による版
移動先: 案内検索

この記事は"Fabric API 0.3.2 build 230~"を前提MODとしています。

Wood pickaxe.png
初心者向けのチュートリアルです。


クリエイティブタブの追加

ブロックやアイテムの初期化時やコンストラクタで、既存のクリエイティブタブのどのタブに追加するかを指定するメソッドgroup()を呼び出すことで、追加したアイテムをどのカテゴリにするか決めることができる。しかし、大量のアイテムを追加した場合や、多くのMODを追加した場合、クリエイティブタブ上で探すのは簡単ではない。この状況を打破するために、アイテムグループでクリエイティブタブが拡張でき、任意のタブを追加することができる。

ソースコード

  • SampleMod.java
package com.example.itemgroup;

import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;

public class SampleMod implements ModInitializer
    {
        /**
         * ModID文字列
         */
        public static final String MOD_ID = "samplemod";

		//クリエイティブタグの作成
 	public static final ItemGroup SAMPLE_GROUP = FabricItemGroupBuilder.build(
		new Identifier(MOD_ID, "sampletag"),
		//クリエイティブタグのアイコン
		() -> new ItemStack(Blocks.COBBLESTONE));
    }
}

作成したクリエイティブタグにアイテムを登録

Fabric/アイテム追加Fabric/ブロック追加で作成したアイテムを登録するには、

public static final Item SAMPLE_ITEM = new Item(new Item.Settings().group(ItemGroup.MISC));

//省略

Registry.register(Registry.ITEM, new Identifier(MOD_ID, "sample_block"), new BlockItem(SAMPLE_BLOCK, new Item.Settings().group(ItemGroup.MISC)));

group(SampleMod.SAMPLE_GROUP));

に変更する必要がある。

解説

() -> new ItemStack(Blocks.COBBLESTONE));

クリエイティブタブ上に表示されるアイコンのIDを指定する。ブロックなら"Blocks.バニラのID"。アイテムなら"Items.バニラのID"である。MODのアイテム・ブロックなら例として"SampleMod.SAMPLE_ITEM"(アイテムを登録しているクラス.アイテムの文字列)である。