``` refactor(fight): 重构状态效果初始化逻辑,统一使用InitEffect方法并内置随机持续回合

This commit is contained in:
1
2025-12-11 19:12:54 +00:00
parent 8eb0a1324b
commit 5ca43fe21f
16 changed files with 42 additions and 72 deletions

View File

@@ -32,16 +32,14 @@ func (e *Effect13) OnSkill() bool {
if gconv.Int(e.Ctx().Opp.CurrentPet.PetInfo.Type) == int(element.ElementTypeGrass) {
return true
}
duration := e.EffectNode.SideEffectArgs[0] - 1
//duration++
// 获取状态效果
eff := input.Geteffect(input.EffectType.Status, int(info.PetStatus.DrainedHP))
eff := e.Ctx().Our.InitEffect(input.EffectType.Status, int(info.PetStatus.DrainedHP))
if eff == nil {
return true
}
eff.Duration(e.EffectNode.SideEffectArgs[0] - 1)
eff.Duration(duration)
eff.SetArgs(e.Ctx().Our)
e.Ctx().Opp.AddEffect(e.Ctx().Our, eff)
return true
}