自定义方块是minecraft1.12.02beta中的新增内容,可以修改原版方块的部分特性及增加一个全新的方块。
行为包
首先,你需要一个可用的模板,然后在于manifest.json同层的地方,新建一个blocks的文件夹,在文件夹中放入你新增的方块的json
{
"format_version": "1.10.0",
"minecraft:block": {
"description": {
"identifier": "test:space",
"is_experimental": false,
"register_to_creative_menu":true
},
"components": {
"minecraft:destroy_time":{
"value":1
}
}
}
}
identifier中表示的是方块的ID,与实体的用法相同,为"类名:子名"的形式,is_experimental的true和false分别表示该方块是否需要开启实验模式,register_to_creative_menu则决定了该方块是否出现在创造模式的物品栏中。
"minecraft:destroy_time"用于控制该方块被挖掘的时间长度。该json名为该方块的子名,
资源包
同样需要一个可用的模板包。在与manifest.json同层的地方,创建一个blocks.json的文件,将方块的属性写进去,写法可参照原版的blocks.json。
{
"format_version": [
1,
1,
0
],
"test:space": {
"textures": "space",
"sound": "stone"
}
}
三个东西分别为ID,材质,音效,ID直接改引号内的内容,材质及音效需要更改红色部分。若材质及音效为自定义,则需要在terrain_texture.json和sound_definitions中增加对应的路径。 接着创建一个textures的文件夹,在文件夹中创建一个名为terrain_textures.json的文件。
{
"resource_pack_name": "vanilla",
"texture_name": "atlas.terrain",
"padding": 8,
"num_mip_levels": 4,
"texture_data": {
"space":{
"textures":[
"textures/blocks/space"
]
}
}
}
从texture_data开始写,space为在blocks.json中所指定的材质ID。textureS的红色部分为该材质的路径位置。
之后需要根据路径在textures中创建一个blocks的文件夹,在内放入一个名字为space的图片,导入即可。
ps:路径与贴图位置需对齐。
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||