entities实体行为定义为实体在行为包里的核心部分,也是实体在整个Addon里的核心部分
entity实体资源包定义则是资源包的核心部分,但是资源包部分为可选,当一旦选择了资源包部分,那么实体资源包定义将会是必须项。
作用
实体资源包定义将会控制该实体的 材质、模型、贴图、动画、动画控制器、渲染控制器、生物蛋以及Molang脚本。
对于贴图起引导图片路径的作用
对于材料、模型、动画、动画控制器、渲染控制器起绑定对应项目的作用
对于生物蛋、脚本起定义的作用
开始
首先在资源包根目录创建一个“entity”文件夹
再在该文件夹(或该文件夹的子文件夹里)创建 实体ID.json 文件
下面则是一个僵尸的栗子:
//已删减不必要内容,已添加注释
{
"format_version": "1.8.0",
"minecraft:client_entity": {
"description": {
"identifier": "minecraft:zombie", //命名空间:ID,需要与行为包entities里的文件吻合。
"materials": {
"default": "zombie" //材料
},
"textures": { //贴图
"default": "textures/entity/zombie/zombie" //最后的图片名字无需后缀.png
},
"geometry": { //模型
"default": "geometry.zombie.v1.8"
},
"spawn_egg": { //生物蛋
"texture": "spawn_egg",
"texture_index": 12
},
"scripts": { //脚本
"pre_animation": [
"variable.tcos0 = (Math.cos(query.modified_distance_moved * 38.17) * query.modified_move_speed / variable.gliding_speed_value) * 57.3;"
]
},
"animations": { //动画(客户端)
"humanoid_big_head": "animation.humanoid.big_head"
.....
},
"animation_controllers": [ //动画控制器(客户端)
{ "humanoid_baby_big_head": "controller.animation.humanoid.baby_big_head" }
.....
"render_controllers": [ "controller.render.zombie" ] //渲染控制器
}
}
}
生物蛋
首先你需要在行为定义把生物蛋生成 属性打开
接着是实体资源包定义:
官方一共给了两种写法
首先是定义方法1:
"spawn_egg": {
"base_color": "#99e550", //基础颜色
"overlay_color": "#99e550" //套印颜色
}
使用官方提供的配色方案
值类型为字符串,用十六进制颜色表达。
然后是定义方法2:
"spawn_egg": { //生物蛋
"texture": "spawn_egg", //生物蛋ID,建议写成 实体ID_egg
"texture_index": 0 //只允许为正整数
}
然后在textures/item_texture.json 文件里来控制生物蛋贴图位置
"spawn_egg": { //生物蛋ID
"textures": "textures/items/spawn" //贴图路径
}
与物品贴图定义一致。
命名
生物命名
接着是在texts文件夹对生物进行命名
entity.byh:entity.name=测试生物
格式:
entity:命名空间:ID.name=名字
生物蛋命名
item.spawn_egg.entity.byh:entity.name=生成测试生物
格式:
item.spawn_egg.entity.命名空间:ID.name=名字