
战斗状态
适用于 Minecraft 模组和整合包的共享战斗状态追踪器。
战斗状态
追踪玩家是否仍处于战斗状态,即使生物已切换目标。
战斗状态是一个轻量级的共享依赖模组,适用于需要感知战斗状态的 Minecraft 模组和整合包。它为其他模组提供一个明确的服务器端答案:“该玩家是否仍处于战斗状态?”
战斗规则
当某个生物以玩家为目标时,玩家即与该生物进入战斗状态。
如果该生物在战斗中切换目标,玩家仍会保持与该生物的战斗状态。仅目标切换不会结束战斗。
当满足以下任一条件时,玩家与该生物的战斗状态结束:
- 该生物不再拥有目标,或
- 该生物当前未以该玩家为目标,且玩家距离超过 64 格。
提供功能
- 玩家战斗状态的服务器端追踪。
- 为依赖模组提供小型 API。
- 可配置的脱离战斗距离。
- 可选黄色指示器,标记仍让玩家处于战斗状态但当前未以玩家为目标的生物。
- 与仇恨指示器兼容:仇恨指示器可继续显示红色当前目标图标,战斗状态则添加黄色战斗记忆图标。
API
在服务器端使用 CombatStateApi:
CombatStateApi.isInCombat(player);
CombatStateApi.isActivelyTargeted(player);
CombatStateApi.getCombatMobIds(player);
配置
配置文件:
config/combat_state-common.toml
默认值:
[combat]
disengageDistance = 64
syncIntervalTicks = 20
[client]
renderYellowIndicator = true
需求
- Minecraft 1.21.1
- NeoForge
可选集成:
- 仇恨指示器
源码与问题反馈
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。