跳到主要内容

模型与 MythicMobs 身体

宠物一定有一个原版生物身体(负责移动、碰撞、受伤、骑乘)。外观可以是:

外观写法需要
原版生物entity.type + entity.looks无
云模型 CloudModel 模型model.id云模型 CloudModel
ModelEngine 模型model.idModelEngine 4
MythicMobs 怪物(可以自带 ModelEngine 模型)entity.mythicmobsMythicMobs

云模型 / ModelEngine 模型​

entity:
type: WOLF # 身体:决定碰撞箱、走路方式、骑乘高度
scale: 1.0
model:
id: fox_model # 模型编号
engine: auto # auto = 先找云模型,再找 ModelEngine;也可以写 cloudmodel / modelengine
scale: 1.0 # 模型本身的大小
  • 有写 model.id 时,原版身体会自动隐藏,只显示模型;不用另外写 entity.invisible。
  • 云模型的模型会自动播放 idle / walk 等状态动画;ModelEngine 模型照 ModelEngine 自己的状态动画。
  • 「隐藏别人的宠物」与「主人隐身时宠物也隐身」对模型一样有效。
  • 找不到模型(编号写错、没装模型插件)时先用原版外型显示,开服与 /cp admin reload 时后台会提示是哪个文件、哪个编号。
  • 皮肤可以换成另一个模型,见 皮肤。

大模型:调大 entity.scale​

模型看起来很大、身体却还是一只狼的大小时,会出现「点不到」「骑上去坐在模型里面」这类问题。把身体一起调大(1.20.5+):

entity:
type: HORSE
scale: 2.0 # 身体变两倍大:碰撞箱变大,骑上去的高度也跟着变高
model:
id: dragon_mount
scale: 1.0
nametag:
height: 1.5 # 名牌再往上移 1.5 格,不会埋在模型里
想调整的用哪个键
点得到、打得到的范围entity.scale(身体的碰撞箱)
骑上去坐多高entity.scale(座位高度是原版身体的乘客高度,身体变大就变高),或换一种比较高的身体(例如 HORSE)
模型本身多大model.scale
名牌多高nametag.height(加在 config.yml 的 pets.nametag-height 上)
选身体

身体决定走路方式:要会跳上方块的选陆地生物(WOLF、HORSE),飞行宠物把 movement.flying 设 true(身体不受重力影响)。身体的 AI 会被全部拿掉,不用担心它乱跑或攻击人。

MythicMobs 怪物当身体​

entity:
mythicmobs: FireSpirit # MythicMobs 怪物编号(大小写要一样)
mythicmobs-level: 1
mount:
enabled: true
type: fly
controller: flying # ModelEngine 模型的坐骑控制器
combat:
skills:
- skill: FireSpirit_Attack
trigger: attack
  • 写了 entity.mythicmobs 就用那只怪物生成身体,entity.type 不使用。怪物一定要是生物(不能是盔甲架之类)。
  • 怪物自己的 model{} 技能挂上的 ModelEngine 模型会被沿用:骑乘时用那个模型的坐骑骨骼。
  • 怪物的 ~onSignal 技能可以用宠物的 信号 触发;宠物技能写在 combat.skills,施放者是宠物,见 战斗与技能。
  • 宠物保护照样有效:别人打不到、不会被太阳烧、不会被其他插件加药水效果。
  • 没有安装 MythicMobs、或怪物编号不存在时,这只宠物召唤不出来(玩家会看到提示,后台也会说明)。

更多 MythicMobs 用法见 MythicMobs。

ModelEngine 坐骑骨骼​

宠物的模型是 ModelEngine 模型(model.id 或 MythicMobs 怪物自带的模型),而且模型里有驾驶骨骼(driver / mount 骨骼)时,骑乘会直接用 ModelEngine 的坐骑:

  • 玩家坐在骨骼的位置,由 ModelEngine 的坐骑控制器操作。
  • 控制器用 mount.controller(例如 walking、flying、walking_force);不写时 mount.type: walk 用 walking、fly 用 flying。
  • 模型没有驾驶骨骼时,改用云宠物自己的骑乘(玩家坐在原版身体上)。

其他骑乘设置见 骑乘。