package effect import ( "blazing/logic/service/fight/action" "blazing/logic/service/fight/input" "blazing/logic/service/fight/node" ) // Effect 454: 当自身血量少于1/{0}时先制+{1} type Effect454 struct { node.EffectNode } func (e *Effect454) ComparePre(fattack *action.SelectSkillAction, sattack *action.SelectSkillAction) bool { if fattack == nil { return true } //先手是自己 if fattack.PlayerID == e.Ctx().Our.UserID { return true } if sattack == nil { return true } if sattack.SkillEntity == nil { return true } maxHp := e.Ctx().Our.CurrentPet.GetMaxHP() currentHp := e.Ctx().Our.CurrentPet.GetHP() threshold := maxHp.Div(e.Args()[0]) // 1/n if currentHp.Cmp(threshold) < 0 { sattack.SkillEntity.XML.Priority += 1 } //对调 return true } func init() { input.InitEffect(input.EffectType.Skill, 454, &Effect454{}) }