こんばんは。Nakanishiです。
Discordサーバーを運営中です。
一緒にゆるくMod制作を楽しみませんか?
※)日本語での会話ができる方のみ参加可能です。
条件に合わない方は参加をご遠慮ください。
前回のおさらい
苗木から木を生成するところまで作りました。
JavaでMinecraftのModを作ろう☆ 木材編⑮ 〜苗木を成長させよう〜 - NakanishiのForge1.20.1のJavaMod開発講座
今回は木材編の締めとして、レシピ周りを整理しようと思います。

①レシピのJSONファイルを用意しよう
JavaでModを作ろう☆ 共通編① ~翻訳とレシピを作ろう~ - NakanishiのForge1.20.1のJavaMod開発講座
基本は上記の記事で扱ってます。
レシピのフォルダ先は
【resources/data/<modid>/recipes】
となります。
まず、原木から板材を作るレシピから書いていきましょう。
その前に原木・木・樹皮を剝いだ原木・木をまとめて板材にクラフト出来るようにタグ付けしておきましょう。
場所)
【resources/data/<modid>/tags/items/pale_oak_logs.json】
pale_oak_logs.json例)
{
"values": [
"nakanishi_mod:pale_oak_log",
"nakanishi_mod:pale_oak_wood",
"nakanishi_mod:stripped_pale_oak_log",
"nakanishi_mod:stripped_pale_oak_wood"
]
}
レシピのJSONファイルはこうなります。
pale_oak_planks.json例)
{
"type": "minecraft:crafting_shapeless",
"ingredients": [
{
"tag": "nakanishi_mod:pale_oak_logs"
}
],
"result": {
"count": 4,
"item": "nakanishi_mod:pale_oak_planks"
}
}

このように原木で板材が4つ作れたら成功です。
次に板材から棒をクラフトするレシピを作ります。
ここでもタグ付けをするのですが、次はタグを入れるフォルダが変わります。
場所)
【resources/data/minecraft/tags/items/planks.json】
planks.json例)
{
"values": [
"nakanishi_mod:pale_oak_planks"
]
}
これでマインクラフトの板材タグに加えられ、レシピを書かなくとも棒や作業台といった、木材共通のレシピが作れるようになります。


次にハーフブロックのレシピを書いていきます。
pale_oak_slab.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "nakanishi_mod:pale_oak_planks"
}
},
"pattern": [
"###"
],
"result": {
"count": 6,
"item": "nakanishi_mod:pale_oak_slab"
},
"show_notification": true
}

次に階段のレシピを書いていきます。
pale_oak_stairs.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "nakanishi_mod:pale_oak_planks"
}
},
"pattern": [
"# ",
"## ",
"###"
],
"result": {
"count": 4,
"item": "nakanishi_mod:pale_oak_stairs"
},
"show_notification": true
}

次にフェンスのレシピを書いていきます。
pale_oak_fence.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "minecraft:stick"
},
"W": {
"item": "nakanishi_mod:pale_oak_planks"
}
},
"pattern": [
"W#W",
"W#W"
],
"result": {
"count": 3,
"item": "nakanishi_mod:pale_oak_fence"
},
"show_notification": true
}

次にフェンスゲートのレシピを書いていきます。
pale_oak_fence_gate.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "minecraft:stick"
},
"W": {
"item": "nakanishi_mod:pale_oak_planks"
}
},
"pattern": [
"#W#",
"#W#"
],
"result": {
"item": "nakanishi_mod:pale_oak_fence_gate"
},
"show_notification": true
}

次にドアのレシピを書いていきます。
pale_oak_door.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "nakanishi_mod:pale_oak_planks"
}
},
"pattern": [
"##",
"##",
"##"
],
"result": {
"count": 3,
"item": "nakanishi_mod:pale_oak_door"
},
"show_notification": true
}

次にトラップドアのレシピを書いていきます。
pale_oak_trapdoor.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "nakanishi_mod:pale_oak_planks"
}
},
"pattern": [
"###",
"###"
],
"result": {
"count": 2,
"item": "nakanishi_mod:pale_oak_trapdoor"
},
"show_notification": true
}

次に感圧板のレシピを書いていきます。
pale_oak_pressure_plate.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "nakanishi_mod:pale_oak_planks"
}
},
"pattern": [
"##"
],
"result": {
"item": "nakanishi_mod:pale_oak_pressure_plate"
},
"show_notification": true
}

次にボタンのレシピを書いていきます。
pale_oak_button.json例)
{
"type": "minecraft:crafting_shapeless",
"ingredients": [
{
"item": "nakanishi_mod:pale_oak_planks"
}
],
"result": {
"item": "nakanishi_mod:pale_oak_button"
}
}

次に原木から木を作るレシピを書いていきます。
pale_oak_wood.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "nakanishi_mod:pale_oak_log"
}
},
"pattern": [
"##",
"##"
],
"result": {
"count": 3,
"item": "nakanishi_mod:pale_oak_wood"
},
"show_notification": true
}
stripped_pale_oak_wood.json例)
{
"type": "minecraft:crafting_shaped",
"key": {
"#": {
"item": "nakanishi_mod:stripped_pale_oak_log"
}
},
"pattern": [
"##",
"##"
],
"result": {
"count": 3,
"item": "nakanishi_mod:stripped_pale_oak_wood"
},
"show_notification": true
}


これで基本的に作れるレシピが完了しました。
看板、ボートは今までのように簡単には作れないので、記事にするのが難しいので、
興味のある方は自分のDiscordサーバーに来てください。

看板とボートは書けませんでしたが、これで木材編は一度終わりにしたいと思います。
ここまでお疲れ様でした☆
もしこの記事が参考になった、または「JavaでMod制作を始めてみたい!」と思っていただけたら、ぜひ読者登録をお願いします。
それではまた次回お会いしましょう。
ここまでお読みいただき、ありがとうございました。





























































































