| | |
| | | DataRecordPack.DR_CTGError(curPlayer, "DailyGiftbag giftbagType=%s giftbagID=%s can not found!"
|
| | | % (giftbagType, giftbagID), addDRDict)
|
| | | return
|
| | | |
| | | giftItemList = __GetJobItemList(giftbagIpyData.GetGiftItemList(), curPlayer.GetJob())
|
| | | actWorldLV = actInfo.get(ShareDefine.ActKey_WorldLV, 0)
|
| | | giftItemList = __GetJobItemList(giftbagIpyData.GetGiftItemList(), curPlayer.GetJob(), actWorldLV)
|
| | | addDRDict.update({"giftbagType":giftbagType, "giftbagID":giftbagID, "giftItemList":giftItemList})
|
| | | buyCountLimit = giftbagIpyData.GetBuyCountLimit()
|
| | | buyCount = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DailyGiftbagBuyCount % giftbagID)
|
| | |
| | | OnPlayerOrderDailyGiftbag(curPlayer, giftbagID, addDRDict, False)
|
| | | return
|
| | |
|
| | | def __GetJobItemList(itemList, job):
|
| | | def __GetJobItemList(giftItemInfo, job, worldLV):
|
| | | jobItemList = []
|
| | | if isinstance(giftItemInfo, dict):
|
| | | itemList = GameWorld.GetDictValueByRangeKey(giftItemInfo, worldLV, [])
|
| | | else:
|
| | | itemList = giftItemInfo
|
| | | for itemID, itemCnt, isBind in itemList:
|
| | | if type(itemID) == int:
|
| | | jobItemList.append([itemID, itemCnt, isBind])
|
| | |
| | | if not giftbagIpyDataList:
|
| | | return
|
| | |
|
| | | actWorldLV = actInfo.get(ShareDefine.ActKey_WorldLV, 0)
|
| | | # 取玩家APPID,混服使用
|
| | | appID = GameWorld.GetPlayerPlatform(curPlayer)
|
| | |
|
| | |
| | | giftBag.BuyCountLimit = giftIpyData.GetBuyCountLimit()
|
| | | giftBag.RMB = 0 if not orderIpyData else CommFunc.RMBToCoin(orderIpyData.GetPayRMBNum())
|
| | | giftBag.ItemInfo = []
|
| | | for itemID, itemCount, isBind in __GetJobItemList(giftIpyData.GetGiftItemList(), curPlayer.GetJob()):
|
| | | for itemID, itemCount, isBind in __GetJobItemList(giftIpyData.GetGiftItemList(), curPlayer.GetJob(), actWorldLV):
|
| | | item = ChPyNetSendPack.tagMCDailyGiftbagItem()
|
| | | item.ItemID = itemID
|
| | | item.ItemCount = itemCount
|