package skill import ( "go_dreamfactory/modules/battle/fight/core" cfg "go_dreamfactory/sys/configure/structs" ) /// /// 主动/队长技能 /// /// /// 遍历触发子技能 /// type FightSkill struct { OwnerRole core.IFightRole CD int32 SkillConf *cfg.GameSkillAtkData } /// /// 触发 /// 遍历所有ChildSkills,生成对应的实例,并Emit触发 /// func (this *FightSkill) Emit() { } /// /// 减少CD回合数 /// /// 新的回合数 func (this *FightSkill) MinusCD(val int32) int32 { if this.CD > 0 { this.CD -= val if this.CD < 0 { this.CD = 0 } this.SetCD(this.CD) } return this.CD } /// /// 增加CD回合数 /// /// 新的回合数 func (this *FightSkill) ResetCD() int32 { this.CD = this.SkillConf.CD this.SetCD(this.CD) return this.CD } /// /// 设置CD回合数为新的值 /// /// /// func (this *FightSkill) SetCD(newVal int32) int32 { this.CD = newVal //记录战报 com := new(core.ComSetSkillCD) com.From = this.OwnerRole.GetData().Rid com.Skillid = this.SkillConf.Id com.Nv = byte(newVal) // this.OwnerRole.GetFightBase().FightLog.AddCommand(com) return this.CD } /// 发送技能日志 func (this *FightSkill) Clear() { } /// 发送技能日志 func (this *FightSkill) SendSkillLog() { }