package effect import ( "blazing/logic/service/fight/info" "blazing/logic/service/fight/input" "blazing/logic/service/fight/node" "github.com/alpacahq/alpacadecimal" ) // Effect 422: 附加所造成伤害值{0}%的固定伤害 type Effect422 struct { node.EffectNode } func (e *Effect422) Skill_Use() bool { damageDone := e.Ctx().Our.SumDamage percent := e.Args()[0].Div(alpacadecimal.NewFromInt(100)) // X% additionalDamage := damageDone.Mul(percent) if additionalDamage.Cmp(alpacadecimal.NewFromInt(0)) > 0 { damageZone := &info.DamageZone{ Type: info.DamageType.Fixed, Damage: additionalDamage, } e.Ctx().Opp.Damage(e.Ctx().Our, damageZone) } return true } func init() { input.InitEffect(input.EffectType.Skill, 422, &Effect422{}) }