diff --git a/modules/hero/model_hero.go b/modules/hero/model_hero.go index 362a2dd8f..69c84480c 100644 --- a/modules/hero/model_hero.go +++ b/modules/hero/model_hero.go @@ -298,6 +298,7 @@ func (this *ModelHero) setEnergyProperty(hero *pb.DBHero, star int32) { func (this *ModelHero) setEquipProperty(hero *pb.DBHero, equip []*pb.DB_Equipment) { addProperty := make(map[string]int32) //副属性 + equipSkill := make([]*pb.SkillData, 0) for i, v := range equip { if v == nil { continue @@ -317,8 +318,16 @@ func (this *ModelHero) setEquipProperty(hero *pb.DBHero, equip []*pb.DB_Equipmen addProperty[comm.Hp] += int32(math.Floor((float64(v) / 1000) * float64(hero.Property[comm.Hp]))) } } + if v.Adverbskill != nil { + for _, v := range v.Adverbskill { + equipSkill = append(equipSkill, &pb.SkillData{ + SkillID: v.SkillId, + SkillLv: v.Lv, + }) + } + } } - this.mergeAddProperty(hero.Uid, hero, addProperty) + this.mergeAddProperty(hero.Uid, hero, addProperty, equipSkill) } //设置装备 @@ -390,11 +399,12 @@ func (this *ModelHero) mergeMainProperty(uid string, hero *pb.DBHero, data map[s } //合并附加属性 -func (this *ModelHero) mergeAddProperty(uid string, hero *pb.DBHero, data map[string]int32) { +func (this *ModelHero) mergeAddProperty(uid string, hero *pb.DBHero, data map[string]int32, skills []*pb.SkillData) { hero.AddProperty = data if err := this.ChangeList(uid, hero.Id, map[string]interface{}{ "addProperty": data, + "equipSkill": skills, }); err != nil { this.moduleHero.Errorf("mergeAddProperty err %v", err) }