minecraft:behavior.ranged_attack pour toi avec un simple interrupteur.Get GodCraftVue d'ensemble
minecraft:behavior.ranged_attack est un composant d'entité : il se place dans l'objet components d'une créature personnalisée, ou dans l'un de ses groupes de composants. Permet à la créature d'attaquer à distance en tirant des projectiles, comme un squelette ou un blaze. Le projectile lui-même se règle avec minecraft:shooter. Mets charge_shoot_trigger au-dessus de 0 pour des rafales chargées.
Champs
| Champ | Type | Par défaut | Description |
|---|---|---|---|
burst_shots | integer | 1 | Nombre de tirs dans une rafale chargée. |
target_in_sight_time | number | 1 | Secondes pendant lesquelles la créature doit voir la cible avant de s'en approcher. |
burst_interval | number | 0 | Secondes entre chaque tir d'une rafale. |
charge_charged_trigger | number | 0 | Secondes supplémentaires, ajoutées à charge_shoot_trigger, avant que la charge soit complète. La charge diminue quand la cible est hors de vue. |
charge_shoot_trigger | number | 0 | Durée de charge de la créature avant de tirer une rafale (cette valeur est doublée en jeu). Mets-la au-dessus de 0 pour activer les rafales chargées. |
attack_interval | FloatRange | {"max":-1,"min":-1} | Temps de rechargement aléatoire, en secondes, entre deux tirs normaux. Il augmente avec la distance à la cible. |
attack_range | FloatRange | {"max":0,"min":0} | La créature ne tire que si la cible se trouve entre ces distances. |
x_max_rotation | number | 30 | Angle, en degrés, dont la créature peut lever ou baisser la tête en visant.Plage : de 0 à … |
y_max_head_rotation | number | 30 | Angle, en degrés, dont la créature peut tourner la tête sur le côté en visant.Plage : de 0 à … |
ranged_fov | number | 90 | Champ de vision, en degrés, utilisé pour repérer une cible sur laquelle tirer.Plage : de 0 à … |
speed_multiplier | number | 1 | Multiplicateur de vitesse en s'approchant de la cible pendant l'attaque. |
set_persistent | boolean | false | Si true, la créature ne disparaît pas après avoir ciblé un joueur. |
swing | boolean | false | Si true et que la créature a une animation de coup, elle balance le bras à chaque tir. |
in_range_movement_mode | RangedAttackGoalDefinition::InRangeMovementMode | "hold_position" | Comment la créature se déplace quand la cible est à portée : "hold_position" reste immobile et tire, "follow_target" continue de s'approcher jusqu'à la portée minimale. |
priority | integer | 0 | Décide quel objectif l'emporte quand plusieurs veulent s'exécuter : les plus petits nombres passent en premier.Plage : de 0 à … |
control_flags | Goal's control flags[] | aucune | Liste les parties du corps que cet objectif contrôle (comme le déplacement, le regard ou le saut), pour que deux objectifs qui ont besoin de la même partie ne s'exécutent pas ensemble. |
Exemple
Dans l'objet components de BP/entities/<name>.json (les valeurs sont celles par défaut ou des exemples) :
BP/entities/<name>.json
{
"minecraft:behavior.ranged_attack": {
"burst_shots": 1,
"target_in_sight_time": 1,
"burst_interval": 0,
"charge_charged_trigger": 0,
"charge_shoot_trigger": 0,
"attack_interval": {
"max": -1,
"min": -1
},
"attack_range": {
"max": 0,
"min": 0
},
"x_max_rotation": 30
}
}