概览
minecraft:navigation.swim 是一个实体组件:写在自定义生物的 components 对象中,或其中某个组件组里。 让生物规划在水中的路径。请搭配相应的移动组件使用。
字段
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
avoid_damage_blocks | Boolean | "false" | 为 true 时,路径会绕开会造成伤害的方块,比如仙人掌或岩浆块。 |
avoid_portals | Boolean | "false" | 为 true 时,路径会远离传送门,比如下界传送门。 |
avoid_sun | Boolean | "false" | 为 true 时,路径优先选择阴凉处,避开阳光直射的地方。 |
avoid_water | Boolean | "false" | 为 true 时,路径会避开水。 |
blocks_to_avoid | List | 无 | 生物沿路径行走时绝不会踏入的方块。 |
can_breach | Boolean | "false" | 为 true 时,生物可以跃出水面。 |
can_break_doors | Boolean | "false" | 为 true 时,关着的门算作可通过,因为生物会把门破坏掉。 |
can_jump | Boolean | "true" | 为 true 时,路径可以通过跳跃爬上一格高的台阶。 |
can_open_doors | Boolean | "false" | 为 true 时,关着的门算作可通过,因为生物会把门打开。 |
can_open_iron_doors | Boolean | "false" | 为 true 时,关着的铁门也算作可通过。 |
can_pass_doors | Boolean | "true" | 为 true 时,路径可以穿过门口。 |
can_path_from_air | Boolean | "false" | 为 true 时,生物在空中也能开始新的路径。 |
can_path_over_lava | Boolean | "false" | 为 true 时,路径可以从岩浆表面经过。 |
can_path_over_water | Boolean | "false" | 为 true 时,路径可以从水面经过。 |
can_sink | Boolean | "true" | 为 true 时,生物在水中会下沉而不是漂浮。 |
can_swim | Boolean | "false" | 为 true 时,路径可以在水中任意穿行,生物在水中会使用游泳动画。 |
can_walk | Boolean | "true" | 为 true 时,生物可以在陆地上行走。 |
can_walk_in_lava | Boolean | "false" | 为 true 时,生物在岩浆中移动时就像走在实地上。 |
is_amphibious | Boolean | "false" | 为 true 时,生物可以在水下沿着水底行走。 |
示例
写在 BP/entities/<name>.json 的 components 对象中(值为默认值或占位值):
BP/entities/<name>.json
{
"minecraft:navigation.swim": {
"avoid_damage_blocks": "false",
"avoid_portals": "false",
"avoid_sun": "false",
"avoid_water": "false",
"blocks_to_avoid": {},
"can_breach": "false",
"can_break_doors": "false",
"can_jump": "true"
}
}