Sprint
基本信息
| 属性 |
值 |
| 类名 |
atomicstryker.infernalmobs.common.modifiers.MM_Sprint |
| 注册名 |
InfernalMobs:Sprint |
| 显示前缀 |
sprinting / swift / charging |
| 显示后缀 |
of Bolting / the Swift One / of being in your Face |
| 触发机制 |
onUpdate (有目标时交替启停 sprinting) |
| 冷却时间 |
5000 ms |
功能
Sprint 词缀让怪物在战斗中获得"冲刺"行为:每 5 秒切换一次 sprinting 状态,sprinting 时:
- 解除原版 Minecraft 的 motionX/motionZ 速度锁(1.5x 倍率)
- 通过
doSprint 重写怪物运动向量
- 在低基础速度下维持高速度
实现细节(doSprint):
- 计算运动方向与朝向角度,处理 yaw 超过 360° 边界
- 若
rotationMovement + rotationLook 绝对值 > 10,rotationLook -= 360
- 解除速度锁:当
entspeed < 0.3D 时,若 GetAbsModSpeed() > 0.6D 或 !mob.onGround,把 modMotionX/Z 各除 1.55(衰减)
- 否则
modMotionX *= 1.5 并写回 mob.motionX/Z
触发方式
| 触发 |
行为 |
| 怪物有目标 |
每 5 秒切换 sprinting |
| sprinting 状态 |
解除运动锁,1.5x 加速 |
数值
| 数值 |
默认值 |
配置项 |
| 冷却时间(毫秒) |
5000 |
MM_Sprint.coolDownMillis |
| 加速倍率 |
1.5 |
源码常量 |
| 解锁触发速度阈值 |
0.3 |
源码常量 |
| 衰减除数 |
1.55 |
源码常量 |
相关条目