package effect import ( "blazing/logic/service/fight/info" "blazing/logic/service/fight/input" "blazing/logic/service/fight/node" "github.com/alpacahq/alpacadecimal" ) //对方所受伤害的1/n会反弹给自己 //被动效果都是自己施加给自己的,所以不能免疫 func init() { input.InitEffect(input.EffectType.Skill, 6, &Effect6{}) } type Effect6 struct { node.EffectNode } // 我方使用效果 func (e *Effect6) Skill_Use() bool { t := &info.DamageZone{ Type: info.DamageType.Fixed, //这个对面计算前是在他的回合,所以后手也能拿到伤害 Damage: e.Ctx().Our.SumDamage.Div(alpacadecimal.NewFromInt(int64(e.SideEffectArgs[0]))), } t.Damage = alpacadecimal.Min(t.Damage, e.Ctx().Our.CurrentPet.GetHP().Sub(alpacadecimal.NewFromInt(1))) e.Ctx().Our.Damage(e.Ctx().Our, t) return true }