Files
netease-bedrock-wiki/mconline/10-addon教程/第09章:自定义方块/课程03.自定义特殊方块.md
2025-08-25 18:36:29 +08:00

166 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
front:
hard: 进阶
time: 15分钟
---
# 自定义特殊方块
#### 作者:境界
原版的部分方块具有特殊功能开花组为开发者提供了方块继承的形式来继承这些特殊方块的能力本章将教给开发者如何自定义红石元件方块和刷怪箱方块。由于McStudio当前尚不支持完整自定义这两种特殊方块的功能这里会使用JSON语法来演示。
#### 自定义红石元件方块
```
{
"format_version": "1.16.0",
"minecraft:block": {
"description": {
"identifier": "design:redstone_consumer"
},
"components": {
"minecraft:destroy_time": 2.0,
"minecraft:map_color": "#ffffff",
"netease:tier": {
"digger": "pickaxe",
"level": 0
},
"netease:redstone": {
"type": "consumer"
}
}
}
}
```
11.16.0是当前下界更新的自定义方块内容格式所以我们在format_version里填1.16.0
2identifier是自定义方块的名称域这里可以由开发者自己定义。
3components下的参数会储存方块的各项功能。主要来看netease:redstone组件它可以传入两种类型这里我们传入consumer这样该方块即可接收红石信号成为红石元件方块。
```
{
"format_version": [
1,
1,
0
],
"design:redstone_producer": {
"textures": "gold_block",
"sound": "metal"
},
"design:redstone_consumer": {
"textures": "gold_block",
"sound": "metal"
}
}
```
4最后还应在blocks.json下进行如下配置示例图中将方块贴图设置为金方块贴图则6个面都是金方块面走在该方块上和破坏方块时产生的音效类型是金属音效。
#### 自定义红石信号源方块
```
{
"format_version": "1.16.0",
"minecraft:block": {
"description": {
"identifier": "design:redstone_producer"
},
"components": {
"minecraft:destroy_time": 2.0,
"minecraft:map_color": "#ffffff",
"netease:tier": {
"digger": "pickaxe",
"level": 0
},
"netease:redstone": {
"type": "producer",
"strength": 10
}
}
}
}
```
11.16.0是当前下界更新的自定义方块内容格式所以我们在format_version里填1.16.0
2identifier是自定义方块的名称域这里可以由开发者自己定义。
3components下的参数会储存方块的各项功能。主要来看netease:redstone组件它可以传入两种类型这里我们传入producer这样该方块即可接发送红石信号strength掌管红石信号的强度即信号每传递一格强度会降低1点。
4最后还应在blocks.json下进行如下配置示例图中将方块贴图设置为金方块贴图则6个面都是金方块面走在该方块上和破坏方块时产生的音效类型是金属音效。
#### 自定义刷怪箱方块
```
{
"format_version": "1.16.0",
"minecraft:block": {
"description": {
"identifier": "design:chicken_mob_spawner",
"base_block": "mob_spawner"
},
"components": {
"minecraft:block_light_absorption": 0,
"netease:tier": {
"digger": "pickaxe",
"level": 0
},
"netease:render_layer": {
"value": "alpha"
},
"netease:mob_spawner": {
"type": "minecraft:chicken"
},
"minecraft:block_light_emission": 1.0,
"minecraft:destroy_time": 2.0,
"minecraft:map_color": "#ffffff"
}
}
}
```
11.16.0是当前下界更新的自定义方块内容格式所以我们在format_version里填1.16.0
2identifier是自定义方块的名称域这里可以由开发者自己定义。在这里还要额外指定base_block键对将方块继承刷怪箱即"mob_spawner"。
3components下的参数会储存方块的各项功能。主要来看netease:mob_spawner组件它里面的键类型会指向一种生物名称域该组件功能同时支持自定义生物和MC原版生物。
```
{
"format_version": [
1,
1,
0
],
"design:chicken_mob_spawner": {
"textures": "mob_spawner",
"sound": "metal"
}
}
```
4最后还应在blocks.json下进行如下配置示例图中将方块贴图设置为原版刷怪箱贴图。则6个面都是刷怪箱子贴图走在该方块上和破坏方块时产生的音效类型是金属音效。