提供: Minecraft Modding Wiki
移動先: 案内検索
(クリエイティブタブの追加)
 
4行目: 4行目:
  
 
==クリエイティブタブの追加==
 
==クリエイティブタブの追加==
<p>
 
 
ブロックやアイテムの初期化時やコンストラクタで、既存のクリエイティブタブのどのタブに追加するかを指定するメソッド'''group()'''を呼び出すことで、追加したアイテムをどのカテゴリにするか決めることができる。しかし、大量のアイテムを追加した場合や、多くのMODを追加した場合、クリエイティブタブ上で探すのは簡単ではない。この状況を打破するために、アイテムグループでクリエイティブタブが拡張でき、任意のタブを追加することができる。
 
ブロックやアイテムの初期化時やコンストラクタで、既存のクリエイティブタブのどのタブに追加するかを指定するメソッド'''group()'''を呼び出すことで、追加したアイテムをどのカテゴリにするか決めることができる。しかし、大量のアイテムを追加した場合や、多くのMODを追加した場合、クリエイティブタブ上で探すのは簡単ではない。この状況を打破するために、アイテムグループでクリエイティブタブが拡張でき、任意のタブを追加することができる。
  
 
動作確認済みのバージョン:1.14~1.16.3
 
動作確認済みのバージョン:1.14~1.16.3
</p>
+
 
  
 
===ソースコード===
 
===ソースコード===

2020年10月11日 (日) 08:08時点における最新版

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

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


クリエイティブタブの追加[編集]

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

動作確認済みのバージョン:1.14~1.16.3


ソースコード[編集]

  • 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"(アイテムを登録しているクラス.アイテムの文字列)である。