1. Wiki
  2. /实体
  3. /minecraft:behavior.ranged_attack

minecraft:behavior.ranged_attack

不想手写?在 GodCraft 里打开一个开关,就能帮你设置好 minecraft:behavior.ranged_attack。Get GodCraft

概览

minecraft:behavior.ranged_attack 是一个实体组件:写在自定义生物的 components 对象中,或其中某个组件组里。 让生物通过发射弹射物进行远程攻击,就像骷髅或烈焰人。弹射物本身用 minecraft:shooter 设置。把 charge_shoot_trigger 设为大于 0 可以启用蓄力连射。

字段

字段类型默认值说明
burst_shotsinteger1一次蓄力连射发射多少发。
target_in_sight_timenumber1生物必须看见目标多少秒才会朝它移动。
burst_intervalnumber0连射中每发之间的秒数。
charge_charged_triggernumber0在 charge_shoot_trigger 基础上额外增加的秒数,之后蓄力才算完成。目标离开视线时蓄力会下降。
charge_shoot_triggernumber0生物发射连射前蓄力的时长(游戏中这个值会翻倍)。设为大于 0 可启用蓄力连射。
attack_intervalFloatRange{"max":-1,"min":-1}普通射击之间的随机装填时间(秒)。离目标越远时间越长。
attack_rangeFloatRange{"max":0,"min":0}只有目标位于这两个距离之间时,生物才会射击。
x_max_rotationnumber30生物瞄准时最多能上下仰俯的角度(度)。范围:0 到 …
y_max_head_rotationnumber30生物瞄准时头部最多能左右转动的角度(度)。范围:0 到 …
ranged_fovnumber90用于发现射击目标的视野角度(度)。范围:0 到 …
speed_multipliernumber1攻击期间朝目标移动时的速度倍率。
set_persistentbooleanfalse设为 true 时,生物锁定玩家后就不会消失。
swingbooleanfalse设为 true 且生物有挥手动画时,每次射击都会挥动手臂。
in_range_movement_modeRangedAttackGoalDefinition::InRangeMovementMode"hold_position"目标在射程内时生物如何移动:"hold_position" 原地站着射击,"follow_target" 会继续靠近,直到最小射程。
priorityinteger0多个目标同时想运行时决定谁优先:数字越小越先运行。范围:0 到 …
control_flagsGoal's control flags[]无列出这个目标要控制的身体部分(比如移动、看向或跳跃),这样需要同一部分的目标就不会同时运行。

示例

写在 BP/entities/<name>.json 的 components 对象中(值为默认值或占位值):

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
  }
}

We use cookies to improve your experience and analyse site traffic. Learn more