伤害
简介
/damage 命令于 Minecraft 版本 1.18.10 引入,可对指定实体造成精确伤害。这一改动使得以往笨拙的伤害方法(如使用 /effect 命令)被淘汰,让地图和其他创作变得更加强大。
语法
- 该命令有两种使用方式:
/damage <目标> <伤害值> [伤害原因]/damage <目标> <伤害值> <伤害原因> entity <伤害来源>
参数说明
- 未包含在尖括号
<>或方括号[]中的短语需按原样输入。 - 包含在括号中的内容为变量,需替换为实际值:
<>尖括号表示该变量为必填项。[]方括号表示该变量为可选项。
变量详解
目标这是常见的实体选择器,例如@s、@e或"cda94581"。可以同时选择多个实体,从而对多个目标造成伤害。伤害值这是一个整数,指定对目标造成的伤害量。最小值为0,最大值为2147483647(即 32 位有符号整数的上限)。伤害原因指定造成伤害的"原因"。该原因会出现在死亡消息中(例如X 因坠落受到致命伤害),并用于护甲减伤计算(实际伤害值可能因穿戴护甲而不同),还会影响行为包/附加包等多种机制。完整的伤害原因列表请参见下文。伤害来源如果伤害原因与实体相关(例如entity_attack),此参数指定伤害来源(发动攻击的实体)。该参数仅限选择单个目标。若选择器返回多个目标,则会报错。
注意:
<伤害原因> entity <伤害来源>仅在伤害原因涉及其他实体时(如entity_attack)需要填写。其他情况下请使用第一种语法。
使用示例
yaml
# 对所有玩家造成4点伤害
/damage @a 4
# 对所有绵羊造成3点"火焰"伤害
/damage @e[type=sheep] 3 fire
# 让随机玩家对所有绵羊造成40点"实体攻击"伤害
/damage @e[type=sheep] 40 entity_attack entity @r伤害原因列表
以下是 MCBE 中 /damage 命令当前支持的所有伤害原因:
all
anvil
block_explosion
campfire
charging
contact
drowning
entity_attack
entity_explosion
fall
falling_block
fire
fire_tick
fireworks
fly_into_wall
freezing
lava
lightning
magic
magma
none
override
piston
projectile
self_destruct
ram_attack
sonic_boom
soul_campfire
stalactite
stalagmite
starve
suffocation
temperature
thorns
void
wither如需获取最新列表,请访问官方附加包文档页面 此处。

