minecraft:behavior.melee_box_attack por ti con un interruptor.Get GodCraftResumen
minecraft:behavior.melee_box_attack es un componente de entidad: va en el objeto components de una criatura personalizada o en uno de sus grupos de componentes. Objetivo de IA cuerpo a cuerpo en el que el alcance del golpe es una caja alrededor de la caja de colisión de la criatura, así que las criaturas grandes llegan tan lejos como aparentan.
Campos
| Campo | Tipo | Predeterminado | Descripción |
|---|---|---|---|
horizontal_reach | number | 0.8 | Hasta qué distancia horizontal más allá de la caja de colisión de la criatura puede seguir acertando un ataque.Rango: de 0 a … |
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"} | Evento que se activa cuando esta criatura mata a su objetivo. |
cooldown_time | number | 1 | Segundos de espera entre dos ataques.Rango: de 0 a … |
melee_fov | number | 90 | Campo de visión en grados que se usa para detectar un objetivo al que golpear.Rango: de 0 a … |
x_max_rotation | number | 30 | Máximo de grados que la criatura puede inclinar la cabeza arriba o abajo mientras mira al objetivo.Rango: de 0 a … |
y_max_head_rotation | number | 30 | Máximo de grados que la criatura puede girar la cabeza hacia los lados mientras mira al objetivo.Rango: de 0 a … |
random_stop_interval | integer | 0 | Da una probabilidad de 1 entre N de dejar de atacar, donde N es este número.Rango: de 0 a … |
attack_once | boolean | false | Si es true, la criatura solo hace este ataque una única vez. |
can_spread_on_fire | boolean | false | Si es true, una criatura en llamas y con las manos vacías prende fuego a su objetivo al golpearlo. |
min_path_time | number | 0.2 | Espera mínima en segundos antes de volver a calcular el camino hacia el objetivo.Rango: de 0 a … |
max_path_time | number | 0.55 | Espera máxima en segundos antes de volver a calcular el camino hacia el objetivo.Rango: de 0 a … |
path_fail_time_increase | number | 0.75 | Segundos que se suman a la espera del camino cuando la criatura se atasca.Rango: de 0 a … |
inner_boundary_time_increase | number | 0.25 | Segundos que se suman a la espera del camino cuando el objetivo está más allá de path_inner_boundary.Rango: de 0 a … |
outer_boundary_time_increase | number | 0.5 | Segundos que se suman a la espera del camino cuando el objetivo está más allá de path_outer_boundary.Rango: de 0 a … |
path_inner_boundary | number | 16 | Distancia a partir de la cual se aplica inner_boundary_time_increase.Rango: de 0 a … |
path_outer_boundary | number | 32 | Distancia a partir de la cual se aplica outer_boundary_time_increase.Rango: de 0 a … |
speed_multiplier | number | 1 | Multiplicador de velocidad mientras se mueve hacia el objetivo.Rango: de 0 a … |
require_complete_path | boolean | false | Si es true, la criatura solo persigue cuando existe un camino completo hasta el objetivo. |
track_target | boolean | false | Si es true, la criatura sigue a su objetivo incluso sin un componente de detección. |
attack_types | string | "" | Qué tipos de entidad atacará esta criatura. |
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"} | Evento que se activa cada vez que un ataque acierta. |
priority | integer | 0 | Los números más bajos se ejecutan primero: si dos objetivos compiten, gana el de prioridad más baja.Rango: de 0 a … |
control_flags | Goal's control flags[] | ninguno | Qué partes del cuerpo controla este objetivo (moverse, mirar, saltar), para que no se ejecuten a la vez objetivos que usan las mismas partes. |
Ejemplo
Dentro del objeto components de BP/entities/<name>.json (los valores son los predeterminados o de ejemplo):
BP/entities/<name>.json
{
"minecraft:behavior.melee_box_attack": {
"horizontal_reach": 0.8,
"on_kill": {
"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": 1,
"melee_fov": 90,
"x_max_rotation": 30,
"y_max_head_rotation": 30,
"random_stop_interval": 0,
"attack_once": false
}
}