Commit 8f92ce682652595c44a59dc7ba8328def6d3e3a4

Authored by 王家文
1 parent 39034fa0
Exists in master

feat✨:卡牌系统

models/cardholder.go
... ... @@ -92,9 +92,11 @@ type ReqAutoExchangeInfo struct {
92 92 // RspAutoExchangeInfo 返回 上期剩余星星自动兑换信息
93 93 type RspAutoExchangeInfo struct {
94 94 CardHolderInfo
95   - NewCards [][]int `form:"new_cards" json:"new_cards"` // 新获得的卡牌列表
96   - AwardAlbum map[int]string `form:"award_album" json:"award_album"` // 触发的卡组奖励列表 k=出发的卡组ID v=对应奖励
97   - AwardRound string `form:"award_round" json:"award_round"` // 触发的轮次奖励列表 空字符串未触发
98   - LastStarCount int `form:"last_star_count" json:"last_star_count"` // 上期活动剩余星星点数
99   - AutoExchangeHolder []int `form:"auto_exchange_holder" json:"auto_exchange_holder"` // 活动切换时自动兑换的卡包
  95 + AwardAlbum map[int]string `form:"award_album" json:"award_album"` // 触发的卡组奖励列表 k=出发的卡组ID v=对应奖励
  96 + AwardRound string `form:"award_round" json:"award_round"` // 触发的轮次奖励列表 空字符串未触发
  97 + LastStarCount int `form:"last_star_count" json:"last_star_count"` // 上期活动剩余星星点数
  98 + NewCards []int `form:"new_cards" json:"new_cards"` // 新获得的卡牌列表
  99 + AutoExchangeHolder int `form:"auto_exchange_holder" json:"auto_exchange_holder"` // 活动切换时自动兑换的卡包
  100 + NewCardsV2 [][]int `form:"new_cards_v2" json:"new_cards_v2"` // 新获得的卡牌列表
  101 + AutoExchangeHolderV2 []int `form:"auto_exchange_holder_v2" json:"auto_exchange_holder_v2"` // 活动切换时自动兑换的卡包
100 102 }
... ...
service/cardholder/handle.go
... ... @@ -318,9 +318,11 @@ func HandleShopExchange(req *models.ReqStarShopExchange) (code string, rsp model
318 318 // HandleAutoExchangeInfo 上期剩余星星自动兑换信息
319 319 func HandleAutoExchangeInfo(req *models.ReqAutoExchangeInfo) (code string, rsp models.RspAutoExchangeInfo) {
320 320 rsp = models.RspAutoExchangeInfo{
321   - NewCards: make([][]int, 0),
322   - AwardAlbum: make(map[int]string),
323   - AutoExchangeHolder: make([]int, 0),
  321 + AwardAlbum: make(map[int]string),
  322 + NewCards: make([]int, 0),
  323 + AutoExchangeHolder: 0,
  324 + NewCardsV2: make([][]int, 0),
  325 + AutoExchangeHolderV2: make([]int, 0),
324 326 }
325 327 code = code_msg.RECODE_OK
326 328 gameId := req.GameID
... ... @@ -347,14 +349,18 @@ func HandleAutoExchangeInfo(req *models.ReqAutoExchangeInfo) (code string, rsp m
347 349 return
348 350 }
349 351  
350   - if player.Details.LastStarCount <= 0 {
  352 + if player.Details.LastStarCount <= 0 ||
  353 + len(player.Details.AutoExchangeHolderIds) <= 0 ||
  354 + len(player.Details.AutoExchangeNewCards) <= 0 {
351 355 code = code_msg.RECODE_MERGE_CARDHOLDER_NOAUTOEXCHANGEINFO_ERROR
352 356 return
353 357 }
354 358  
355 359 rsp.LastStarCount = player.Details.LastStarCount
356   - rsp.AutoExchangeHolder = player.Details.AutoExchangeHolderIds
357   - rsp.NewCards = player.Details.AutoExchangeNewCards
  360 + rsp.AutoExchangeHolderV2 = player.Details.AutoExchangeHolderIds
  361 + rsp.NewCardsV2 = player.Details.AutoExchangeNewCards
  362 + rsp.AutoExchangeHolder = player.Details.AutoExchangeHolderIds[0]
  363 + rsp.NewCards = player.Details.AutoExchangeNewCards[0]
358 364  
359 365 player.Details.LastStarCount = 0
360 366 player.Details.AutoExchangeHolderIds = make([]int, 0)
... ...