(ページの作成:「{{前提MOD|reqmod="Minecraft Forge 1.14-28.0.x~"}} {{チュートリアル難易度|difficulty=0|clear=none}} {{チュートリアルカテゴリー|difficulty=0|type=…」) |
細 |
||
46行目: | 46行目: | ||
ブロックステートモデルの設置フォルダはassets.(モッドid).blockstate.(ブロック名)になります。 | ブロックステートモデルの設置フォルダはassets.(モッドid).blockstate.(ブロック名)になります。 | ||
− | ブロックアイテムテクスチャモデルの設置フォルダはassets.(モッドid).models. | + | ブロックアイテムテクスチャモデルの設置フォルダはassets.(モッドid).models.item.(ブロック名)になります。 |
テクスチャの設定はMinecraft Wiki([//minecraft.fandom.com/ja/wiki/モデル モデル])にありますのでそちらを見てください。 | テクスチャの設定はMinecraft Wiki([//minecraft.fandom.com/ja/wiki/モデル モデル])にありますのでそちらを見てください。 |
2021年10月27日 (水) 09:06時点における版
この記事は"Minecraft Forge 1.14-28.0.x~"を前提MODとしています。 |
ここでは、1.14.x以降のブロックの追加の方法を解説します。
1.17以降で使用する場合は、 「ItemGroup」の部分を「CreativeModeTab」に、「.group」の部分を「.tab」変更してください。
また、Block.Propertiesは、バージョンによって違うので、Block型のコンストラクタを生成している部分を見てください。
ソース
SampleMod.java
/*パッケージ・インポートは省略*/ @Mod(SampleMod.MOD_ID) public class SampleMod { public static final String MOD_ID = "sample"; public static final Block sample_block = new Block(new Block.Properties() .setRegistryName(new ResourceRocation(SampleMod.MOD_ID, "sample_item")); @Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD) public static class Eventhandler{ @SubscribeEvent public void registerItems(final RegistryEvent.Register<Block> event) { event.getRegistry.register(sample_block); } @SubscribeEvent public void registerItems(final RegistryEvent.Register<Item> event) { event.getRegistry.register(new BlockItem(sample_block, new Item.Properties().group(ItemGroup.BUILDING_BLOCKS)).setRegistryName(sample_block.getRegistryName())); } } }
解説
1.13から、@ModにはMOD_IDだけ記述するようになったので注意です。
Block型のコンストラクターを定数に代入します。
コンストラクターの中のBlock.Propertiesのコンストラクターでアイテムの色々な設定をします。
Block型のコンストラクターで.setRegistryName(new ResourceRocation(SampleMod.MOD_ID, ブロック名))は絶対に要ります。
ブロックステートモデルの設置フォルダはassets.(モッドid).blockstate.(ブロック名)になります。
ブロックアイテムテクスチャモデルの設置フォルダはassets.(モッドid).models.item.(ブロック名)になります。
テクスチャの設定はMinecraft Wiki(モデル)にありますのでそちらを見てください。
また、このままではブロックを壊しても何もドロップしないので、LootTableをdata.(モッドid).loot_table.block.(ブロック名)に配置します。
ルートテーブルの設定はMinecraft Wiki(ルートテーブル)にありますのでそちらを見てください。