Commit fd5171c9d2da056cf5b0dfecfbb3227160f257ea

Authored by 王家文
1 parent c0cd7cde
Exists in master and in 1 other branch dev-wjw

feat:领取轮次奖励

service/constd/index.go
@@ -49,6 +49,7 @@ const ( @@ -49,6 +49,7 @@ const (
49 RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR = "2107" 49 RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR = "2107"
50 RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR = "2108" 50 RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR = "2108"
51 RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR = "2109" 51 RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR = "2109"
  52 + RECODE_MERGE_CARDHOLDER_ROUND_NOTFINISH_ERROR = "2110"
52 ) 53 )
53 54
54 var recodeText = map[string]string{ 55 var recodeText = map[string]string{
@@ -98,6 +99,7 @@ var recodeText = map[string]string{ @@ -98,6 +99,7 @@ var recodeText = map[string]string{
98 RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR: "卡组ID错误", 99 RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR: "卡组ID错误",
99 RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR: "卡组奖励已领取", 100 RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR: "卡组奖励已领取",
100 RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR: "卡组卡牌未集齐", 101 RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR: "卡组卡牌未集齐",
  102 + RECODE_MERGE_CARDHOLDER_ROUND_NOTFINISH_ERROR: "卡册未集齐",
101 } 103 }
102 104
103 func RecodeText(code string) string { 105 func RecodeText(code string) string {
service/ht-cardholder/handle.go
@@ -234,55 +234,44 @@ func HandleGetRewardRound(req *models.ReqHtCardHolderGetRewardRound) (code strin @@ -234,55 +234,44 @@ func HandleGetRewardRound(req *models.ReqHtCardHolderGetRewardRound) (code strin
234 rsp = models.RspHtCardHolderGetRewardRound{} 234 rsp = models.RspHtCardHolderGetRewardRound{}
235 code = constd.RECODE_OK 235 code = constd.RECODE_OK
236 236
237 - //// 尝试更新配置  
238 - //TryUpdateConfigs()  
239 - //  
240 - //// 检查活动状态  
241 - //code = CheckStatus()  
242 - //if code != constd.RECODE_OK {  
243 - // return  
244 - //}  
245 - //// 检查卡组ID  
246 - //albumId := strconv.Itoa(req.Id)  
247 - //confAlbum, okAlbum := Config.AlbumConfig[albumId]  
248 - //if !okAlbum {  
249 - // code = constd.RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR  
250 - // return  
251 - //}  
252 - //  
253 - //// 读取游戏数据  
254 - //gameData := LoadData(req.UID)  
255 - //// 检查游戏数据 轮次等  
256 - //code = CheckGameData(gameData)  
257 - //if code != constd.RECODE_OK {  
258 - // return  
259 - //}  
260 - //  
261 - //// 是否已领过  
262 - //countGot := gameData.Details.Album[albumId]  
263 - //if countGot > 0 {  
264 - // code = constd.RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR  
265 - // return  
266 - //}  
267 - //// 检查卡组内卡是否集齐  
268 - //for _, config := range Config.CardConfig {  
269 - // if config.SetId == albumId {  
270 - // count := gameData.Details.Cards[config.Id]  
271 - // if count < 1 {  
272 - // code = constd.RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR  
273 - // return  
274 - // }  
275 - // }  
276 - //}  
277 - //  
278 - //gameData.Details.Album[albumId] += 1  
279 - //SaveData(gameData)  
280 - //  
281 - //// 返回奖励  
282 - //rsp.Award = confAlbum.Rewards  
283 - //  
284 - //// 返回信息  
285 - //rsp.HtCardHolderInfo = gameData.GetInfo() 237 + // 尝试更新配置
  238 + TryUpdateConfigs()
  239 +
  240 + // 检查活动状态
  241 + code = CheckStatus()
  242 + if code != constd.RECODE_OK {
  243 + return
  244 + }
  245 +
  246 + // 读取游戏数据
  247 + gameData := LoadData(req.UID)
  248 + // 检查游戏数据 轮次等
  249 + code = CheckGameData(gameData)
  250 + if code != constd.RECODE_OK {
  251 + return
  252 + }
  253 +
  254 + // 判断所有卡组是否已经集齐
  255 + // 检查卡组内卡是否集齐
  256 + for _, config := range Config.AlbumConfig {
  257 + count := gameData.Details.Album[config.SetId]
  258 + if count < 1 {
  259 + code = constd.RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR
  260 + return
  261 + }
  262 + }
  263 +
  264 + // 当前轮次
  265 + round := gameData.Details.Round
  266 + // 返回奖励
  267 + rsp.Award = Config.Awards[uttype.IntToString(round)]
  268 +
  269 + // 处理轮次完成
  270 + HandleNextRound(gameData)
  271 + SaveData(gameData)
  272 +
  273 + // 返回信息
  274 + rsp.HtCardHolderInfo = gameData.GetInfo()
286 275
287 return 276 return
288 } 277 }
service/ht-cardholder/logic.go
@@ -128,3 +128,10 @@ func GetNewCard(gameData *dto.HtCardHolderData) int { @@ -128,3 +128,10 @@ func GetNewCard(gameData *dto.HtCardHolderData) int {
128 indexMin := uttype.Min(list...) 128 indexMin := uttype.Min(list...)
129 return int(indexMin % rate) 129 return int(indexMin % rate)
130 } 130 }
  131 +
  132 +// HandleNextRound 处理轮次完成 保留卡包 星级序列刻度 卡牌序列刻度
  133 +func HandleNextRound(gameData *dto.HtCardHolderData) {
  134 + gameData.Details.Round += 1
  135 + gameData.Details.Cards = make(map[int]int)
  136 + gameData.Details.Album = make(map[string]int)
  137 +}