CombatIndicator - 战斗指示器
显示实体和玩家通过全息影像进行治疗/伤害。高度可定制。
Bukkit / Spigot
作者 Coder
支持版本 1.20.1 - 1.20.1
服务器使用量
未统计
服务玩家数
未统计
下载量
14,692
插件详细介绍
请在讨论区提交 Bug 与建议!
简介
CombatIndicator 是一款在玩家或生物受到伤害或治疗时,显示浮动提示信息的插件。它依赖全息显示插件来生成这些提示,并提供了高度可定制的配置选项。
安装步骤
- 停止你的服务器(如果正在运行)。
- 下载本插件的最新版本,并将其放入服务器的
plugins文件夹。 - 下载并安装 Holographic-Displays(如果你尚未安装)。
- 注意:本插件理论上也兼容 HoloAPI 和 Holograms,但未经测试,不推荐使用。
- 启动你的服务器即可。
关于 ProtocolLib
由于 Holographic-Displays 需要 ProtocolLib 来实现仅对特定玩家显示全息图的功能,因此如果你计划在配置中使用诸如 permission-see 之类的限制条件,则必须安装 ProtocolLib。
配置
配置文件位于 /your_plugin_folder/CombatIndicator/config.yml,首次运行插件时会自动生成。修改此文件后,请务必执行 /combatindicator reload 命令,或使用 /reload 命令,或重启服务器以使更改生效。
基础配置项
check-updates:插件是否自动检查更新。建议保持为true。radius-x、radius-y、radius-z:伤害/治疗信息显示给周围玩家的最大半径。ticks-till-remove:全息图在被移除前持续存在的游戏刻数。update-ticks:更新全息图(如移动位置、检查是否应消失等)的频率(以游戏刻为单位)。yOffsetNormal:为没有自定义名称的实体指定 Y 轴偏移量。yOffsetName:为有自定义名称的实体指定 Y 轴偏移量。
自定义伤害与治疗信息
配置主要通过 damage 和 healing 两个部分进行。
简单格式
直接在配置中插入格式字符串即可。
damage: '&c-%final_val%'
healing: '&2+%final_val%'其中 &c 和 &2 是颜色代码,%final_val% 是变量。
进阶格式(使用修饰符)
你可以为信息添加更多控制条件。
damage:
-
format: '&c-%final_val%'
df: '0.0#'
permission-see: combatindicator.can_see_damaging
visibleTo: attacker
healing:
-
format: '&2+%final_val% (%health_percentage% %)'
permission-see: combatindicator.can_see_healing此配置将
- 仅对拥有
combatindicator.can_see_damaging权限的攻击者显示红色伤害数值,并使用0.0#小数格式。 - 仅对拥有
combatindicator.can_see_healing权限的玩家显示绿色治疗数值及生命值百分比。
多重格式
你可以为同一事件定义多个显示规则,插件将按顺序匹配并应用第一个符合条件的格式。
damage:
-
format: '&c-%final_val%'
df: '0.#'
visibleTo: attacker
-
format: '-%final_val% by %attacker%'
df: '0.000'
visibleTo: non-attacker
healing:
-
format: '+%final_val'
permission-see: combatindicator.see_healing
-
format: '&2+%final_val'
permission-see: combatindicator.see_healing_colored可用变量
%final_val%:最终值(伤害计算护甲减免后;治疗实际增加的生命值)。%half_final_val%:与%final_val%相同,但除以二。%val%:原始值(未计算护甲的伤害;可能的最大治疗量)。%who%:受到伤害或接受治疗的实体(显示)名称。%attacker%:(仅伤害部分)攻击者的显示名称,或攻击生物的名称。如果是弹射物造成伤害,则为发射者的名称。%viewer%:正在观看信息的玩家名称。%health%:事件发生后实体的生命值。%health_percentage%:事件发生后实体的生命值百分比。
可用修饰符
df:使用指定的小数格式格式化数字。- 示例:
"0.0"(7.46 => 7.5, 7 => 7.0),"0.#"(7.46 => 7.5, 7 => 7),"00"(7.5 => 08, 0.1 => 00)。 visibleTo:(仅伤害部分)控制谁可见。可选值:everyone、attacker、non-attacker、none。source:(仅伤害部分)限制伤害来源。可选值:player、entity、environment。可使用数组,如[player, entity]。permission-see:查看此全息图所需的权限。permission-attacker:攻击者触发生成此全息图所需的权限(非玩家原因,如火,仍会显示)。permission-who:被伤害/治疗者触发生成此全息图所需的权限(非玩家实体,如村民,仍会显示)。- 注意:所有权限前均可加
!表示否定。例如permission-who: '!combatindicator.not_seen'将使拥有该权限的玩家永不触发全息图。 - 数值比较修饰符:用于根据伤害/治疗量显示不同信息。包括
valSmallerEq、valBiggerEq、finalDamageSmallerEq、finalDamageBiggerEq、valSmaller、valBigger、finalDamageSmaller、finalDamageBigger。
配置示例
根据伤害量显示不同颜色
damage:
-
format: '&4-%val%'
valSmallerEq: 5
-
format: '&c-%val%'
valSmallerEq: 10
valBigger: 5
-
format: '&e-%val%'
valBigger: 10为 VIP 玩家显示额外生命信息
damage:
-
format: '&4-%val% &r(%health%)'
permission-see: 'player.has.vip'
-
format: '&4-%val%'
permission-see: '!player.has.vip'治疗信息随机颜色
healing:
-
format: '&2+%final_val%'
-
format: '&a+%final_val%'
-
format: '&b+%final_val%'VIP 玩家不显示治疗信息且独享伤害信息
damage:
format: '&c-%final_val%'
permission-see: 'vip.permission'
healing:
format: '&2+%final_val%'
permission-who: '!vip.permission'命令与权限
- 命令:
/combatindicator reload- 重载插件配置。 - 权限:
commandindicator.reload- 使用上述重载命令所需的权限。 - 全息图相关的查看与触发权限均在配置文件中设置。默认配置要求拥有
combatindicator.see.damage权限才能看到伤害提示,拥有combatindicator.see.healing权限才能看到治疗提示。
性能优化
如果遇到由本插件引起的性能问题,可以尝试以下方法:
- 减小配置文件中的
radiusX、radiusY、radiusZ参数。 - 减小
ticks-till-remove配置值。 - 增大
update-ticks配置值。 - 不要使用
permission-see和visibleTo配置选项。 - 如果不需要治疗/伤害提示,直接删除配置文件中的
healing或damage配置项。
开发者 API
插件开发者若想排除某个实体,使其不显示任何提示信息,可调用以下 API:
me.combatindicator.api.CombatIndicatorAPI.excludeEntity(Entity);其他信息
- 本插件会向 http://mcstats.org 发送匿名统计数据。你可以在
/plugins/PluginMetrics/config.yml文件中禁用此功能。 - 如果你制作了相关视频并希望在此列出,请联系我(PM)!
- 致谢:葡萄牙语翻译由 @AbsintoJ(YT channel)提供。
感谢你的每一次下载、投票、评论和建议!
测试支持版本
版本分布
基本信息
插件名称
CombatIndicator
作者
Coder
平台
Bukkit / Spigot
支持版本
1.20.1 - 1.20.1
点赞数
18
Modrinth 下载
819
最近版本
暂无数据
-