package effect import ( "blazing/logic/service/fight/action" "blazing/logic/service/fight/input" ) // 503. g3. 群体攻击技能可额外增加一个目标(最多不超过5个目标) type NewSel503 struct { NewSel0 } // TurnStart 在拥有者本回合准备出手时触发;若本次技能是群体技能,则把目标数额外加 1。 func (e *NewSel503) TurnStart(fattack *action.SelectSkillAction, sattack *action.SelectSkillAction) { owner := e.SourceInput() if owner == nil || !e.IsOwner() { return } for _, act := range []*action.SelectSkillAction{fattack, sattack} { if act == nil || act.SkillEntity == nil || act.SkillEntity.Pet == nil { continue } if act.SkillEntity.Pet.Info.CatchTime != e.ID().GetCatchTime() { continue } if act.SkillEntity.XML.AtkType != 0 { return } if act.SkillEntity.XML.AtkNum <= 0 { act.SkillEntity.XML.AtkNum = 1 } if act.SkillEntity.XML.AtkNum < 5 { act.SkillEntity.XML.AtkNum++ } return } } func init() { input.InitEffect(input.EffectType.NewSel, 503, &NewSel503{}) }