package effect import ( "blazing/logic/service/fight/info" "blazing/logic/service/fight/input" "blazing/logic/service/fight/node" "github.com/alpacahq/alpacadecimal" ) // 419 - m回合内,若对手处于能力强化状态,则每回合都会受到k点固定伤害 type Effect419 struct { node.EffectNode } func (e *Effect419) Skill_Use() bool { if e.Ctx().Opp.HasPropADD() { fixedDamage := alpacadecimal.NewFromInt(int64(e.Args()[1].IntPart())) // k点固定伤害 damageZone := &info.DamageZone{ Type: info.DamageType.Fixed, Damage: fixedDamage, } e.Ctx().Opp.Damage(e.Ctx().Our, damageZone) return true } return true } func (e *Effect419) SetArgs(t *input.Input, a ...int) { e.EffectNode.SetArgs(t, a...) e.EffectNode.Duration(a[0]) // 持续m回合 } func init() { input.InitEffect(input.EffectType.Skill, 419, &Effect419{}) }