【寿司職人になろう】オリジナルのアイテムを追加しよう

【寿司職人になろう】オリジナルのアイテムを追加しよう

sushimodディレクトリにModItems.javaを作成し、以下をコピー。

package mark.sushi.sushimod;

import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroupEntries;
import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents;
import net.minecraft.item.*;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.util.Identifier;

public class ModItems {


  private static Item registerItem(String name, Item item) {
    return Registry.register(Registries.ITEM, new Identifier(SushiMod.MOD_ID,name), item);
  }

  private static void itemGroupIngredients(FabricItemGroupEntries entries) {

  }

  public static void registerModItems() {

    ItemGroupEvents.modifyEntriesEvent(ItemGroups.INGREDIENTS).register(ModItems::itemGroupIngredients);

  }
}

アイテムの追加のため以下のコードを追加(黄色の部分)

public class ModItems {

  public static final Item SUSHI = registerItem("sushi",
      new CustomFoodItem(new FabricItemSettings()));

  private static Item registerItem(String name, Item item) {
    return Registry.register(Registries.ITEM, new Identifier(SushiMod.MOD_ID,name), item);
  }

  private static void itemGroupIngredients(FabricItemGroupEntries entries) {

  }

  public static void registerModItems() {

    ItemGroupEvents.modifyEntriesEvent(ItemGroups.INGREDIENTS).register(ModItems::itemGroupIngredients);

  }
}

SushiMod.javaを編集(黄色の部分)

package mark.sushi.sushimod;

import net.fabricmc.api.ModInitializer;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class SushiMod implements ModInitializer {
	public static final String MOD_ID = "sushimod";


	public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID);

	@Override
	public void onInitialize() {
		ModItems.registerModItems();
		ModItemGroup.registerItemGroups();


		LOGGER.info("Hello Fabric world!");
	}
}

ModItemGroup.javaを編集(黄色の部分)

package mark.sushi.sushimod;

import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroup;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.text.Text;
import net.minecraft.util.Identifier;

public class ModItemGroup {
  public static final ItemGroup SUSHI_GROUP = Registry.register(Registries.ITEM_GROUP,
      new Identifier(SushiMod.MOD_ID,"sushi_group"),
      FabricItemGroup.builder().displayName(Text.translatable("itemgroup.sushi_group"))
          .icon(() -> new ItemStack(ModItems.SUSHI)).entries((displayContext, entries) -> {
            entries.add(ModItems.SUSHI);

          }).build());
  public static void registerItemGroups() {

  }
}

テクスチャーを追加しよう

1-2 : ディレクトリを作成しよう!
resourcesディレクトリをクリック
assetsディレクトリを作成

resources/assetsディレクトリをクリック
sushimodディレクトリを作成

assets/sushimodディレクトリをクリック
texturesディレクトリを作成

sushimod/texturesディレクトリをクリック
itemディレクトリを作成

itemディレクトリにsushi.pngというファイル名でダウンロードしたテクスチャをアップロードしよう!

2-1 : モデルファイルの作成
assets/sushimodディレクトリをクリック
modelsディレクトリを作成

作成したmodelsをクリック
itemディレクトリを作成

models/itemディレクトリにファイル作成をクリックしてsushi.jsonを作成し以下のように編集。


{
  "parent": "minecraft:item/generated",
  "textures": {
  "layer0": "sushimod:item/sushi"
  }
}

タイトルとURLをコピーしました