From 107ac98d81bc341f37ab345c5cfed8a267fde2c3 Mon Sep 17 00:00:00 2001 From: by <123456@qq.com> Date: Tue, 30 Jul 2024 17:04:41 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=A5=96=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- worldsrv/action_player.go | 62 +++++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 28 deletions(-) diff --git a/worldsrv/action_player.go b/worldsrv/action_player.go index 4159d88..6b101d6 100644 --- a/worldsrv/action_player.go +++ b/worldsrv/action_player.go @@ -2914,27 +2914,31 @@ func CSAwardLog(s *netlib.Session, packetId int, data interface{}, sid int64) er awardData.AwardLog = append(awardData.AwardLog, infoData) } //处理后台数据 - for _, awardLog := range awardLogConfig.AwardLog { - if awardLog.TypeId == msg.TypeId { - for _, log := range awardLog.AwardLog { - status := false - for _, info := range awardData.AwardLog { - if log.ItemId == info.ItemId { - status = true - if log.Num > info.Num { - info.Num = log.Num + if awardLogConfig != nil { + for _, awardLog := range awardLogConfig.AwardLog { + if awardLog.TypeId == msg.TypeId { + for _, log := range awardLog.AwardLog { + status := false + for _, info := range awardData.AwardLog { + if log.ItemId == info.ItemId { + status = true + info.Order = log.Order + if log.Num > info.Num { + info.Num = log.Num + } + break } - break + } + if !status { + infoData := &player_proto.AwardLogInfo{} + infoData.ItemId = log.ItemId + infoData.Num = log.Num + infoData.Order = log.Order + awardData.AwardLog = append(awardData.AwardLog, infoData) } } - if !status { - infoData := &player_proto.AwardLogInfo{} - infoData.ItemId = log.ItemId - infoData.Num = log.Num - awardData.AwardLog = append(awardData.AwardLog, infoData) - } + awardData.SortId = awardLog.SortId } - awardData.SortId = awardLog.SortId } } ret.AwardLog = awardData @@ -2952,17 +2956,19 @@ func CSAwardLog(s *netlib.Session, packetId int, data interface{}, sid int64) er //处理实时播报数据 if len(ret.AnnouncerLog) < 100 { //后台数据 - for _, info := range awardLogConfig.AnnouncerLog { - if info.TypeId == msg.TypeId { - infoData := &player_proto.AnnouncerLogInfo{} - //infoData.Snid = info.Snid - infoData.Name = info.Name - infoData.Phone = info.Phone[len(info.Phone)-4:] - infoData.ItemId = info.ItemId - infoData.TypeId = info.TypeId - ret.AnnouncerLog = append(ret.AnnouncerLog, infoData) - if len(ret.AnnouncerLog) >= 100 { - break + if awardLogConfig != nil { + for _, info := range awardLogConfig.AnnouncerLog { + if info.TypeId == msg.TypeId { + infoData := &player_proto.AnnouncerLogInfo{} + //infoData.Snid = info.Snid + infoData.Name = info.Name + infoData.Phone = info.Phone[len(info.Phone)-4:] + infoData.ItemId = info.ItemId + infoData.TypeId = info.TypeId + ret.AnnouncerLog = append(ret.AnnouncerLog, infoData) + if len(ret.AnnouncerLog) >= 100 { + break + } } } }