diff --git a/modules/smithy/model_atlas.go b/modules/smithy/model_atlas.go index c53aab760..a6442c7c6 100644 --- a/modules/smithy/model_atlas.go +++ b/modules/smithy/model_atlas.go @@ -75,23 +75,28 @@ func (this *modelAtlas) CheckActivateAtlas(uid string, id string, lv int32, qual update := make(map[string]interface{}, 0) if v, ok := list.Atlas[id]; ok { // 找到相同的 if v.Activate { // 已经激活的 - if v.Data2 == nil { - v.Data2 = &pb.ForgeData{ - ForgeCount: forgeCount, - Lv: lv, - Quality: quality, - Score: atlasScore, - Time: configure.Now().Unix(), + if v.Data1.Score < atlasScore { + if v.Data2 == nil { + v.Data2 = &pb.ForgeData{ + ForgeCount: forgeCount, + Lv: lv, + Quality: quality, + Score: atlasScore, + Time: configure.Now().Unix(), + } + } else { + if v.Data2.Score < atlasScore { + v.Data2.ForgeCount = forgeCount + v.Data2.Lv = lv + v.Data2.Quality = quality + v.Data2.Score = atlasScore + v.Data2.Time = configure.Now().Unix() + } } } else { - if v.Data2.Score < atlasScore { - v.Data2.ForgeCount = forgeCount - v.Data2.Lv = lv - v.Data2.Quality = quality - v.Data2.Score = atlasScore - v.Data2.Time = configure.Now().Unix() - } + v.Data1.ForgeCount = forgeCount } + } else { // 没有激活的 if v.Data1.Score < atlasScore { v.Data1.ForgeCount = forgeCount