Files
2025-08-25 18:36:29 +08:00

98 lines
2.8 KiB
Markdown
Raw Permalink 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: https://nie.res.netease.com/r/pic/20211104/69055361-2e7a-452f-8b1a-f23e1262a03a.jpg
hard: 高级
time: 15分钟
---
# 制作一个新盔甲
在本节中,我们将一起新建一个盔甲,使其具备一定的防御能力。
## 创建配置
我们打开我的世界开发工作台的编辑器,通过创建**配置**的方式快速创建一个新物品。
![](./images/9.4_armor_create.png)
我们以“**自定义盔甲**”为基础,这样便可以创建一个盔甲。
![](./images/9.4_armor_created.png)
我们可以看到,盔甲相比于其他物品,多出了一个盔甲穿戴属性栏。这里便是盔甲的**附着物****Attachable*****挂件***)定义的位置。
## 更改属性
我们先着眼于行为包组件。我们可以看到,盔甲具有一个“**盔甲属性**”组件其本质是JSON中的`netease:armor`组件。该组件可以做到修改盔甲的**护甲值****Armor Value**)和附魔能力等。
对于盔甲的附着物其JSON文件存放在资源包的`attachables`文件夹中。它的定义文件与实体的资源包定义文件几乎一致,只不过它只有那么一个资源包定义。附着物的作用是单纯显示一个没有行为逻辑的模型,比如玩家身上穿着的盔甲模型。因此它只需要一个资源包定义文件。
我们将该物品对应的JSON文件的示例放出供大家参考。首先是行为包定义文件。
```json
{
"format_version": "1.10",
"minecraft:item": {
"description": {
"category": "Equipment",
"identifier": "tutorial_demo:armor",
"custom_item_type": "armor"
},
"components": {
"minecraft:max_damage": 10,
"netease:armor": {
"armor_slot": 1,
"defense": 20,
"enchantment": 10
}
}
}
}
```
然后是资源包。
```json
{
"format_version": "1.10",
"minecraft:item": {
"description": {
"identifier": "tutorial_demo:armor"
},
"components": {
"minecraft:icon": "tutorial_demo:armor"
}
}
}
```
附着物的定义文件也非常简单,因为这种格式我们之前在第八章中就已经充分学习过了。
```json
{
"format_version": "1.8.0",
"minecraft:attachable": {
"description": {
"identifier": "tutorial_demo:armor",
"geometry": {
"default": "geometry.humanoid.armor.chestplate"
},
"materials": {
"default": "armor",
"enchanted": "armor_enchanted"
},
"textures": {
"default": "textures/models/armor/diamond_1",
"enchanted": "textures/misc/enchanted_item_glint"
},
"render_controllers": [
"controller.render.armor"
],
"scripts": {
"parent_setup": "variable.chest_layer_visible = 0.0;"
}
}
}
}
```
在下一节的挑战中我们将为这个物品添加一个3D模型这将用到我们的附着物功能。