Files
bl/logic/service/fight/boss/NewSeIdx_112.go
1 9199768c37 ```feat(fight): 新增特性实现及逻辑优化
1. 实现NewSel114免疫瞬杀特性逻辑
2. 完善NewSel113异常状态伤害锁定逻辑
3. 修复Effect13技能效果添加错误
4. 优化ParasiticSeed状态切换处理
5. 移除无用TODO注释和废弃代码
2026-01-23 20:18:58 +00:00

40 lines
943 B
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package effect
import (
"blazing/logic/service/fight/info"
"blazing/logic/service/fight/input"
)
// NewSel112 受到物理时使自身的一种 battle_lv 提升1个等级可提升n次;a1: which blv, a2: max_blv_up_times
type NewSel112 struct {
NewSel0
count int
}
func (e *NewSel112) DamageDivEx(t *info.DamageZone) bool {
// fmt.Println(e.ID().GetCatchTime(), e.Ctx().Our.CurrentPet.Info.CatchTime)
if e.ID().GetCatchTime() != e.Ctx().Our.CurrentPet.Info.CatchTime {
return true
}
// 2. 技能为空或非物理攻击,不触发
skill := e.Ctx().SkillEntity
if skill == nil {
return true
}
if skill.Category() != info.Category.PHYSICAL {
return true
}
if e.count >= int(e.Args()[1].IntPart()) {
return true
}
e.Ctx().Our.SetProp(e.Ctx().Our, int8(e.Args()[0].IntPart()), 1, info.AbilityOpType.ADD)
e.count++
return true
}
func init() {
input.InitEffect(input.EffectType.NewSel, 112, &NewSel112{})
}