Minecraft中有許多不同的物品,它們的來源可以大致,它們的來源可以大致尚可分為破壞方塊與擊殺生物的掉落物,或是用合成台與熔爐等等功能性方塊的產物。合成台的3X3區域是minecraft很重要的一環,我們可以在這裡合成出許多重要的物品或方塊,而合成方塊或物品的配方都是以Json檔的形式儲存在遊戲中。
我們先找到原版的json檔,一樣在External Libraries中,shift連點兩下輸入recipe iron block可以找到原版鐵磚的Json檔,我們先看原版是怎麼寫的。
{
"type": "minecraft:crafting_shaped",
"category": "building",
"key": {
"#": {
"item": "minecraft:iron_ingot"
}
},
"pattern": [
"###",
"###",
"###"
],
"result": {
"item": "minecraft:iron_block"
},
"show_notification": true
}
"type": "minecraft:crafting_shaped"
合成表有很多不同的type,shaped代表這個合成表要物品擺出指定的樣子才能合成,以鐵磚為例,他要
* * *
* * *
* * *
這樣才能合成,相反的有shapeless,也就是不指定樣子,比如說鐵磚分解成鐵錠,只需要放上合成台或玩家2X2合成表就可以了。
我們的銀磚與銀錠合成方式與鐵磚鐵錠完全相同,我們先建立recipe這個資料夾在[src/main/resources/data/pokerfirstmod/recipes],然後在recipe資料夾中加入silver_block,內容就像這樣
{
"type": "minecraft:crafting_shaped",
"category": "building",
"key": {
"#": {
"item": "pokerfirstmod:silver_ingot"
}
},
"pattern": [
"###",
"###",
"###"
],
"result": {
"item": "pokerfirstmod:silver_block"
},
"show_notification": true
}
"key": {
"#": {
"item": "pokerfirstmod:silver_ingot"
}
}
以#代表銀錠
"pattern": [
"###",
"###",
"###"
]
這代表在合成台中如何排列
"result": {
"item": "pokerfirstmod:silver_block"
}
代表產生的產物,這裡是銀磚
同樣的我們可以找到鐵磚分解成鐵錠的Json檔,稍作修改
{
"type": "minecraft:crafting_shapeless",
"category": "misc",
"group": "industry",
"ingredients": [
{
"item": "pokerfirstmod:silver_block"
}
],
"result": {
"count": 9,
"item": "pokerfirstmod:silver_ingot"
}
}
這裡使用shapeless,只需要寫上成分ingredients成分 item:pokerfirstmod:silver_block物品 ModId跟物品名稱,result count數量9 ModId跟物品名稱。