```
Some checks failed
ci/woodpecker/push/my-first-workflow Pipeline failed

fix(fight): 完善boss技能37注释并修复技能48伤害计算逻辑

- 移除NewSeIdx_37.go中TODO注释,完善技能描述
- 修复NewSeIdx_48.go中技能48的伤害减免逻辑,统一使用Ctx().Category()
- 优化modules/config/service/base.go中的缓存配置逻辑
```
This commit is contained in:
昔念
2026-02-19 00:31:10 +08:00
parent f4438b9000
commit 79c5dfbdcb
4 changed files with 50 additions and 8 deletions

View File

@@ -5,8 +5,7 @@ import (
"blazing/logic/service/fight/input"
)
// 37. 自身 一次受到大于n 的伤害时直接将对方体力降至0;a1: high 16, a2: low 16
// TODO: 实现自身 一次受到大于n 的伤害时直接将对方体力降至0;a1: high 16, a2: low 16的核心逻辑
// 37. 自身 一次受到大于n 的伤害时直接将对方体力降至0;
type NewSel37 struct {
NewSel0
}

View File

@@ -30,12 +30,12 @@ func (e *NewSel48) DamageDivEx(t *info.DamageZone) bool {
attackCategory := int(e.Args()[0].IntPart())
switch attackCategory {
case 1:
if e.Ctx().SkillEntity.Category() == info.Category.PHYSICAL {
if e.Ctx().Category() == info.Category.PHYSICAL {
// 物理攻击无效
t.Damage = alpacadecimal.Zero
}
case 2:
if e.Ctx().SkillEntity.Category() == info.Category.SPECIAL {
if e.Ctx().Category() == info.Category.SPECIAL {
// 特殊攻击无效
t.Damage = alpacadecimal.Zero
}