| | |
| | | % (highestLineID, passLayerMax, quickStartLayer, todayLineID), playerID)
|
| | |
|
| | | # 快速过关奖励按历史最大过关层级领取
|
| | | awardItemDict = {}
|
| | | awardIpyData = None
|
| | | ipyDataMgr = IpyGameDataPY.IPY_Data()
|
| | | for index in range(ipyDataMgr.GetFBDJGQuickCount()):
|
| | | quickIpyData = ipyDataMgr.GetFBDJGQuickByIndex(index)
|
| | | needLayer = quickIpyData.GetNeedLayer()
|
| | | if needLayer > passLayerMax:
|
| | | break
|
| | | quickItemList = quickIpyData.GetQuickAwardList()
|
| | | for itemInfo in quickItemList:
|
| | | itemID, itemCount = itemInfo[:2]
|
| | | awardItemDict[itemID] = awardItemDict.get(itemID, 0) + itemCount
|
| | | awardItemList = [[itemID, itemCount] for itemID, itemCount in awardItemDict.items()]
|
| | | awardIpyData = quickIpyData
|
| | | if not awardIpyData:
|
| | | return
|
| | | awardItemList = awardIpyData.GetQuickAwardList()
|
| | |
|
| | | # 设置起始层关卡
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DJGLineID, todayLineID)
|
| | |
| | |
|
| | | def __randSelectEff(curPlayer, randEffCnt=0, isReset=False):
|
| | | ## 随机生成待选择加成效果
|
| | | unSelectCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DJGUnSelectCnt)
|
| | | if unSelectCnt <= 0:
|
| | | GameWorld.DebugLog("没有未处理的加成效果次数了")
|
| | | return
|
| | | if not randEffCnt:
|
| | | randEffCnt = IpyGameDataPY.GetFuncCfg("DingjungeEff", 3)
|
| | | effIDList = []
|
| | | if isReset:
|
| | | # 重置
|
| | | for sIndex in range(randEffCnt):
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DJGSelectEffect % sIndex, 0)
|
| | | |
| | | unSelectCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DJGUnSelectCnt)
|
| | | if unSelectCnt <= 0:
|
| | | GameWorld.DebugLog("没有未处理的加成效果次数了")
|
| | | return
|
| | | effIDList = []
|
| | | if isReset:
|
| | | pass
|
| | | else:
|
| | | for sIndex in range(randEffCnt):
|
| | | effID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DJGSelectEffect % sIndex)
|