最近突发奇想的一个问题,我指的这个计算公式是对任何实体(能移动且不免疫摔落伤害的)的,在别的地方找了一下,好像也只有玩家的摔落伤害的计算公式...
似乎是等同的。
跌落伤害值为 3 方格后1(Half Heart.svg)每方格。换句话说,从4方格的高度跌落会造成1(Half Heart.svg)的伤害,5 方格、6 方格的高度跌落分别造成2(Heart.svg)和3(Heart.svgHalf Heart.svg)的伤害,以此类推。理论上,如果玩家处于满生命值状态下(无摔落保护或对应的状态效果),从23方格及更高的高度跌落是致命的(23 - 3 = 20(Heart.svg × 10)伤害),但由于跌落高度的计算方式,致命高度实际为 23.5 方格。[note 1]
https://minecraft-zh.gamepedia.c ... #.E8.B7.8C.E8.90.BD
貌似玩家和其他实体的计算方式都是通用的
掉落伤害代码于net.minecraft.entity.EntityLivingBase中 (从代码位置也能看出来是生物通用的)
掉落伤害公式
复制代码
如果生物在飞行状态下下降速度不大于10格每秒或者不处于下降状态时认为距离为1
生物在爬梯子状态下掉落距离归零
生物当被骑上的一瞬间掉落距离归零
任意实体在水里掉落距离归零
任意实体在蜘蛛网里掉落距离归零
等等...我感觉我甚至在抄维基百科
顺便一提, 比较冷门的知识点
如果一个生物掉出世界的话, 她的掉落距离将加上y轴坐标的绝对值(在1.12中)
比如说一只苦力怕在虚空y=-10中呆着, 她的掉落距离将会被加上10
然后如果一个生物被骑着的话, 掉落伤害也会传递到骑着她的生物上
掉落伤害代码于net.minecraft.entity.EntityLivingBase中 (从代码位置也能看出来是生物通用的)
掉落伤害公式
- 伤害=向上取整((距离-3-跳跃提升buff强度)*方块伤害倍率)
如果生物在飞行状态下下降速度不大于10格每秒或者不处于下降状态时认为距离为1
生物在爬梯子状态下掉落距离归零
生物当被骑上的一瞬间掉落距离归零
任意实体在水里掉落距离归零
任意实体在蜘蛛网里掉落距离归零
等等...
顺便一提, 比较冷门的知识点
如果一个生物掉出世界的话, 她的掉落距离将加上y轴坐标的绝对值(在1.12中)
比如说一只苦力怕在虚空y=-10中呆着, 她的掉落距离将会被加上10
然后如果一个生物被骑着的话, 掉落伤害也会传递到骑着她的生物上