| | |
| | | ## 获取物品最高强化等级
|
| | | # @param itemType: 物品类型
|
| | | # @return 最大星级,0为不可强化
|
| | | def GetItemMaxPlusLV(curItem):
|
| | | def GetItemMaxPlusLV(curPlayer, equipPackindex, curItem):
|
| | | equipPlace = curItem.GetEquipPlace()
|
| | | plusMaxTypeDict = IpyGameDataPY.GetFuncEvalCfg("StrengthenLevelLimit", 1)
|
| | | if not plusMaxTypeDict:
|
| | |
| | | if equipPlace not in plusMaxTypeDict:
|
| | | return 0
|
| | | findType = plusMaxTypeDict[equipPlace]
|
| | | #仙器特殊取固定值
|
| | | if equipPlace in [ShareDefine.retFairyCan, ShareDefine.retFairyCan2]:
|
| | | rank = 0
|
| | | itemColor = 0
|
| | | else:
|
| | | rank = GetItemClassLV(curItem)
|
| | | itemColor = curItem.GetItemColor()
|
| | | ipyData = IpyGameDataPY.GetIpyGameData("ItemPlusMax", findType, rank, itemColor)
|
| | | if not ipyData:
|
| | | GameWorld.ErrLog("找不到装备强化等级上限表数据配置! rank = %s, %s" % (rank , curItem.GetItemQuality()))
|
| | | return
|
| | | equipStar = ChEquip.GetEquipPartStarByRank(curPlayer, equipPackindex, curItem)
|
| | | ipyData = IpyGameDataPY.GetIpyGameDataNotLog("ItemPlusMax", findType, equipStar)
|
| | | if ipyData:
|
| | | return ipyData.GetLevelMax()
|
| | |
|
| | | return ipyData.GetLevelMax()
|
| | | ipyDataList = IpyGameDataPY.GetIpyGameDataByCondition('ItemPlusMax', {'Type':findType}, True, False)
|
| | | if not ipyDataList:
|
| | | return 0
|
| | | maxStar = ipyDataList[-1].GetStar()
|
| | | if equipStar > maxStar:
|
| | | return ipyDataList[-1].GetLevelMax()
|
| | | findMax = 0
|
| | | for ipyData in ipyDataList:
|
| | | if equipStar >= ipyData.GetStar():
|
| | | findMax = ipyData.GetLevelMax()
|
| | | return findMax
|
| | | |
| | |
|
| | | ## 获取物品最高强化进化等级
|
| | | # @param itemType: 物品类型
|
| | | # @return 最大星级,0为不可强化
|
| | | def GetItemMaxPlusEvolveLV(curPlayer, equipPackindex, curItem):
|
| | | packType = IPY_GameWorld.rptEquip
|
| | | curPlusLV = ChEquip.GetEquipPartPlusLVByRank(curPlayer, packType, equipPackindex, curItem)
|
| | | equipPlace = curItem.GetEquipPlace()
|
| | | ipyDataList = IpyGameDataPY.GetIpyGameDataByCondition('EquipPlusEvolve', {'EquipPlace':equipPlace}, True)
|
| | | if not ipyDataList:
|
| | | return 0
|
| | | maxEvolvelv = 0
|
| | | for ipyData in ipyDataList:
|
| | | if curPlusLV >= ipyData.GetNeedPlusLV():
|
| | | maxEvolvelv = ipyData.GetEvolveLV()
|
| | | else:
|
| | | break
|
| | | return maxEvolvelv
|
| | |
|
| | | ## 获取物品最高星数
|
| | | # @param itemType: 物品类型
|