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 49 RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR = "2107"
50 50 RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR = "2108"
51 51 RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR = "2109"
  52 + RECODE_MERGE_CARDHOLDER_ROUND_NOTFINISH_ERROR = "2110"
52 53 )
53 54  
54 55 var recodeText = map[string]string{
... ... @@ -98,6 +99,7 @@ var recodeText = map[string]string{
98 99 RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR: "卡组ID错误",
99 100 RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR: "卡组奖励已领取",
100 101 RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR: "卡组卡牌未集齐",
  102 + RECODE_MERGE_CARDHOLDER_ROUND_NOTFINISH_ERROR: "卡册未集齐",
101 103 }
102 104  
103 105 func RecodeText(code string) string {
... ...
service/ht-cardholder/handle.go
... ... @@ -234,55 +234,44 @@ func HandleGetRewardRound(req *models.ReqHtCardHolderGetRewardRound) (code strin
234 234 rsp = models.RspHtCardHolderGetRewardRound{}
235 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 276 return
288 277 }
... ...
service/ht-cardholder/logic.go
... ... @@ -128,3 +128,10 @@ func GetNewCard(gameData *dto.HtCardHolderData) int {
128 128 indexMin := uttype.Min(list...)
129 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 +}
... ...