こんばんは。Nakanishiです。
Discordサーバーを運営中です。
一緒にゆるくMod制作を楽しみませんか?
※)日本語での会話ができる方のみ参加可能です。
条件に合わない方は参加をご遠慮ください。
前回までは食料編としてオリジナルのニンジンを作ってみました。
食料編 カテゴリーの記事一覧 - NakanishiのForge1.20.1のJavaMod開発講座
今回からは既存のニンジン同様に、植えて収穫出来るようにしていこうと思います。
①テクスチャ、JSONファイルを追加しよう
最初にテクスチャを用意しますが、公式のニンジンはステージ0からステージ7まで成長し、その中で使われるテクスチャは4枚必要になります。
割り当てとしては
ステージ0~1=carrots_stage0
ステージ2~3=carrots_stage1
ステージ4~6=carrots_stage2
ステージ7=carrots_stage3
となっています。
なので、公式同様に4枚の成長過程のテクスチャを用意します。
今回は例として【Prismarine Carrots】のテクスチャを用意しました。




これらのpngファイルを【textures/block】に入れていきます。
次に【models/block】にJSONファイルを準備していきます。
ここでのJSONファイルは各テクスチャに必要なので、4つのファイルが必要になります。
例)
{
"parent": "minecraft:block/crop",
"textures": {
"crop": "nakanishi_mod:block/prismarine_carrots_stage0"
}
}




これで【models/block】のJSONファイルは完成です。
ブロックとしては1つのブロックでも、テクスチャが複数枚必要な場合はその枚数分だけmodelのJSONファイルが必要になります。
次に【blockstates】のJSONファイルを作っていきます。
ここで先ほど書いてもらった【models/block】の指定を行います。
まず、例として公式の【carrots】の【blockstate】のJSONファイルを確認しましょう。
例)
{
"variants": {
"age=0": {
"model": "minecraft:block/carrots_stage0"
},
"age=1": {
"model": "minecraft:block/carrots_stage0"
},
"age=2": {
"model": "minecraft:block/carrots_stage1"
},
"age=3": {
"model": "minecraft:block/carrots_stage1"
},
"age=4": {
"model": "minecraft:block/carrots_stage2"
},
"age=5": {
"model": "minecraft:block/carrots_stage2"
},
"age=6": {
"model": "minecraft:block/carrots_stage2"
},
"age=7": {
"model": "minecraft:block/carrots_stage3"
}
}
}
💡ポイント
・ageは成長段階です
これを【prismarine_carrots】に置き換えていきます。
例)
{
"variants": {
"age=0": {
"model": "nakanishi_mod:block/prismarine_carrots_stage0"
},
"age=1": {
"model": "nakanishi_mod:block/prismarine_carrots_stage0"
},
"age=2": {
"model": "nakanishi_mod:block/prismarine_carrots_stage1"
},
"age=3": {
"model": "nakanishi_mod:block/prismarine_carrots_stage1"
},
"age=4": {
"model": "nakanishi_mod:block/prismarine_carrots_stage2"
},
"age=5": {
"model": "nakanishi_mod:block/prismarine_carrots_stage2"
},
"age=6": {
"model": "nakanishi_mod:block/prismarine_carrots_stage2"
},
"age=7": {
"model": "nakanishi_mod:block/prismarine_carrots_stage3"
}
}
}

💡ポイント
・ファイル名は【prismarine_carrots】のように、ブロックのID名にする必要があります。
これで見た目のJSONファイルは完成です。
ここまでお疲れ様でした☆
次回はブロック側【Prismarine Carrots】のCLASSファイルを制作していこうと思います。
もしこの記事が参考になった、または「JavaでMod制作を始めてみたい!」と思っていただけたら、ぜひ読者登録をお願いします。
それではまた次回お会いしましょう。
ここまでお読みいただき、ありがとうございました。
【次回記事】
JavaでMinecraftのModを作ろう☆ 農業編② 〜CropBlock(ブロック)のCLASSファイルを作ろう〜 - NakanishiのForge1.20.1のJavaMod開発講座