From c8db8bbfe6bdc65f5d0aca01519d8150ac6cb9c1 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Fri, 14 Oct 2022 15:06:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/library/module.go | 52 +++++++++++++++++++++------------------ 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/modules/library/module.go b/modules/library/module.go index 4052f1631..0d61d6442 100644 --- a/modules/library/module.go +++ b/modules/library/module.go @@ -136,33 +136,35 @@ func (this *Library) QueryOneHeroFetter(uid string, cid string) *pb.DBHeroFetter // 创建一条羁绊信息 func (this *Library) AddHeroFetterData(uid string, heroConfId string) (code pb.ErrorCode) { - // 推送 + _conf := this.configure.GetLibraryHero(heroConfId) // 配置表中没有这个英雄数据 直接返回 + if _conf == nil { + return + } + var ( + objFetter *pb.DBHeroFetter // 详细羁绊信息数据 + ) rsp := &pb.LibraryChangePush{} _data := this.QueryOneHeroFetter(uid, heroConfId) - this.Debugf("%v", _data) if _data == nil { - objFetter, c := this.createHeroFetter(uid, heroConfId) - if c != pb.ErrorCode_Success { - code = c + objFetter, code = this.createHeroFetter(uid, heroConfId) + if code == pb.ErrorCode_Success { + rsp.Fetter = append(rsp.Fetter, objFetter) + } else { this.Errorf("createHeroFetter failed:%v,uid:%s,heroid:%s", code, uid, heroConfId) } - _conf := this.configure.GetLibraryHero(heroConfId) - if _conf != nil { - szFid := _conf.Fid - for _, fid := range szFid { - // 查询是否存在这个羁绊对象 - obj := this.GetLibraryListByFid(uid, fid) - if obj == nil { // 没有羁绊信息 - code, obj = this.CreateLibrary(uid, fid, heroConfId) - if code != pb.ErrorCode_Success { - this.Errorf("CreateLibrary failed: %v,uid:%s,fid:%d", code, uid, fid) - } - } else { // 羁绊信息中没有这个heroid 也需要加进来 - for k, v := range obj.Hero { - if v == 0 && k == heroConfId { - obj.Hero[k] = 1 - } - } + } + for _, fid := range _conf.Fid { + // 查询是否存在这个羁绊对象 + obj := this.GetLibraryListByFid(uid, fid) + if obj == nil { // 没有羁绊信息 + code, obj = this.CreateLibrary(uid, fid, heroConfId) + if code != pb.ErrorCode_Success { + this.Errorf("CreateLibrary failed: %v,uid:%s,fid:%d", code, uid, fid) + } + } else { // 羁绊信息中没有这个heroid 也需要加进来 + for k, v := range obj.Hero { + if v == 0 && k == heroConfId { + obj.Hero[k] = 1 // 重新计算最低等级 var minLv int32 for _, v := range obj.Hero { @@ -176,11 +178,13 @@ func (this *Library) AddHeroFetterData(uid string, heroConfId string) (code pb.E mapData["hero"] = obj.Hero mapData["fetterlv"] = obj.Fetterlv this.modelLibrary.modifyLibraryDataByObjId(uid, obj.Id, mapData) + rsp.Data = append(rsp.Data, obj) + break } - rsp.Data = append(rsp.Data, obj) } } - rsp.Fetter = append(rsp.Fetter, objFetter) + } + if len(rsp.Data) != 0 || len(rsp.Fetter) != 0 { this.SendMsgToUser(string(this.GetType()), LibraryChangePush, rsp, uid) }