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=名字