| | |
| | | def __GetFamilyBossAward(rank, worldLV):
|
| | | familyAuctionItemList, menberItemList = [], []
|
| | | awardRateList = []
|
| | | awardPieRateDict = {}
|
| | | ipyMgr = IpyGameDataPY.IPY_Data()
|
| | | for i in xrange(ipyMgr.GetFamilyBossAwardCount()):
|
| | | ipyData = ipyMgr.GetFamilyBossAwardByIndex(i)
|
| | |
| | | rankList = ipyData.GetRank()
|
| | | if rank < rankList[0] or rank > rankList[1]:
|
| | | continue
|
| | | awardRateList = ipyData.GetAward()
|
| | | if not awardRateList:
|
| | | awardRateList = ipyData.GetAward1()
|
| | | awardPieRateDict = ipyData.GetAward2()
|
| | | if not awardRateList and not awardPieRateDict:
|
| | | GameWorld.ErrLog('仙盟Boss奖励表 未配置该奖励 rank=%s,worldLV=%s' % (rank, worldLV))
|
| | | return familyAuctionItemList, menberItemList
|
| | | for rate, itemInfo in awardRateList:
|
| | |
| | | familyAuctionItemList.append(itemInfo)
|
| | | else:
|
| | | menberItemList.append(itemInfo)
|
| | | for doCnt, awardPieRateList in awardPieRateDict.items():
|
| | | for _ in xrange(doCnt):
|
| | | resultItem = GameWorld.GetResultByRandomList(awardPieRateList)
|
| | | if len(resultItem) != 3:
|
| | | GameWorld.ErrLog('仙盟Boss奖励表配置错误 itemInfo=%s' % resultItem)
|
| | | continue
|
| | | if resultItem[2]:
|
| | | familyAuctionItemList.append(resultItem)
|
| | | else:
|
| | | menberItemList.append(resultItem)
|
| | |
|
| | | return familyAuctionItemList, menberItemList
|
| | |
|