Files
bl/logic/service/fight/effect/137.go

36 lines
778 B
Go
Raw Normal View History

2026-03-08 14:55:53 +08:00
package effect
import (
"blazing/logic/service/fight/info"
"blazing/logic/service/fight/input"
"blazing/logic/service/fight/node"
"github.com/alpacahq/alpacadecimal"
)
// Effect 137: 损失一半当前体力值自身攻击和速度提升2个等级
2026-03-08 14:55:53 +08:00
type Effect137 struct {
node.EffectNode
}
func (e *Effect137) OnSkill() bool {
// 损失一半当前体力值
currentHp := e.Ctx().Our.CurrentPet.GetHP()
halfHp := currentHp.Div(alpacadecimal.NewFromInt(2))
damageZone := &info.DamageZone{
Type: info.DamageType.Fixed,
Damage: halfHp,
}
e.Ctx().Our.Damage(e.Ctx().Our, damageZone)
e.Ctx().Our.SetProp(e.Ctx().Our, 4, 2)
2026-03-08 14:55:53 +08:00
e.Ctx().Our.SetProp(e.Ctx().Our, 0, 2)
2026-03-08 14:55:53 +08:00
return true
}
func init() {
input.InitEffect(input.EffectType.Skill, 137, &Effect137{})
}