minecraft:behavior.use_kinetic_weapon за тебя одним переключателем.Get GodCraftОбзор
minecraft:behavior.use_kinetic_weapon - компонент сущности: он пишется в объект components своего моба или в одну из его групп компонентов. Позволяет мобу сражаться оружием для таранного удара, например копьём: он бросается на цель, потом отходит и снова разгоняется. Предмету-оружию нужен minecraft:kinetic_weapon.
Поля
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
approach_distance | number | 8 | Моб начинает использовать оружие, когда цель настолько близко.Диапазон: от 0 до … |
reposition_distance | FloatRange | {"max":2,"min":2} | Насколько моб отходит после того, как цель подошла слишком близко, прежде чем снова разогнаться. Прибавляется к середине дальности оружия. |
reposition_speed_multiplier | number | 1 | Множитель скорости при отходе для нового разгона.Диапазон: от 0 до … |
cooldown_distance | FloatRange | {"max":8,"min":8} | Насколько моб отходит, когда время заряда оружия истекло. Прибавляется к середине дальности оружия. |
cooldown_speed_multiplier | number | 1 | Множитель скорости при отходе во время перезарядки.Диапазон: от 0 до … |
weapon_reach_multiplier | number | 1 | Масштабирует дальность оружия для этого моба.Диапазон: от 0 до … |
weapon_min_speed_multiplier | number | 1 | Масштабирует минимальные скорости, нужные оружию для нанесения урона.Диапазон: от 0 до … |
hijack_mount_navigation | boolean | false | Если true, моб управляет своим скакуном с помощью этой цели. У скакуна должна быть цель mount_pathing. |
on_kill | ActorDefinitionTrigger | {"event":"","filters":{"AND":null,"NOT":null,"OR":null,"all":null,"all_of":null,"any":null,"any_of":null,"none_of":null},"target":"self"} | Событие, которое запускается, когда этот моб убивает цель. |
cooldown_time | number | 1 | Секунды между атаками.Диапазон: от 0 до … |
melee_fov | number | 90 | Угол обзора в градусах, в котором моб замечает цель для атаки.Диапазон: от 0 до … |
x_max_rotation | number | 30 | На сколько градусов моб может наклонять голову вверх или вниз, глядя на цель.Диапазон: от 0 до … |
y_max_head_rotation | number | 30 | На сколько градусов моб может поворачивать голову в стороны, глядя на цель.Диапазон: от 0 до … |
random_stop_interval | integer | 0 | Даёт шанс 1 из N прервать текущую атаку, где N - это значение. Укажите 0, чтобы никогда не прерывать случайно.Диапазон: от 0 до … |
attack_once | boolean | false | Если true, моб использует эту атаку только один раз за всю жизнь. |
can_spread_on_fire | boolean | false | Если true, горящий моб с пустой рукой поджигает цель при ударе. |
min_path_time | number | 0.2 | Минимальное базовое время в секундах, прежде чем моб проложит новый путь к цели.Диапазон: от 0 до … |
max_path_time | number | 0.55 | Максимальное базовое время в секундах, прежде чем моб проложит новый путь к цели.Диапазон: от 0 до … |
path_fail_time_increase | number | 0.75 | Дополнительные секунды перед прокладкой нового пути, когда моб не может идти по текущему.Диапазон: от 0 до … |
inner_boundary_time_increase | number | 0.25 | Дополнительные секунды перед прокладкой нового пути, когда цель дальше path_inner_boundary.Диапазон: от 0 до … |
outer_boundary_time_increase | number | 0.5 | Дополнительные секунды перед прокладкой нового пути, когда цель дальше path_outer_boundary.Диапазон: от 0 до … |
path_inner_boundary | number | 16 | Расстояние, после которого добавляется inner_boundary_time_increase.Диапазон: от 0 до … |
path_outer_boundary | number | 32 | Расстояние, после которого добавляется outer_boundary_time_increase.Диапазон: от 0 до … |
speed_multiplier | number | 1 | Множитель скорости при движении к цели.Диапазон: от 0 до … |
require_complete_path | boolean | false | Если true, моб преследует только цель, до которой есть полный путь. |
track_target | boolean | false | Если true, моб продолжает следить за целью, даже не имея встроенного способа её чувствовать. |
attack_types | string | "" | Какие типы сущностей атакует этот моб. |
on_attack | ActorDefinitionTrigger | {"event":"","filters":{"AND":null,"NOT":null,"OR":null,"all":null,"all_of":null,"any":null,"any_of":null,"none_of":null},"target":"self"} | Событие, которое запускается каждый раз, когда моб попадает по цели. |
priority | integer | 0 | Решает, какая цель победит, если запуститься хотят несколько: меньшие числа выполняются первыми.Диапазон: от 0 до … |
control_flags | Goal's control flags[] | нет | Перечисляет части тела, которыми управляет эта цель (например, движение, взгляд или прыжок), чтобы цели, которым нужна одна и та же часть, не работали одновременно. |
Пример
Внутри объекта components в BP/entities/<name>.json (значения - по умолчанию или примерные):
BP/entities/<name>.json
{
"minecraft:behavior.use_kinetic_weapon": {
"approach_distance": 8,
"reposition_distance": {
"max": 2,
"min": 2
},
"reposition_speed_multiplier": 1,
"cooldown_distance": {
"max": 8,
"min": 8
},
"cooldown_speed_multiplier": 1,
"weapon_reach_multiplier": 1,
"weapon_min_speed_multiplier": 1,
"hijack_mount_navigation": false
}
}