| | |
| | | treasureIpyData = ipyDataMgr.GetTreasureByIndex(i)
|
| | | magicWeaponID = treasureIpyData.GetID()
|
| | | isActive = GetIsActiveMagicWeapon(curPlayer, magicWeaponID)
|
| | | if not isActive:
|
| | | continue
|
| | | # if not isActive:
|
| | | # continue
|
| | | allAttrDict = {}
|
| | | #=======================================================================
|
| | | # #铸炼属性
|
| | |
| | | # GameWorld.AddDictValue(allAttrDict, attrDict)
|
| | | #=======================================================================
|
| | | treasureType = treasureIpyData.GetTreasureType()
|
| | | #等级属性
|
| | | curMWLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MagicWeaponLV % magicWeaponID)
|
| | | for lv in xrange(curMWLV+1):
|
| | | upIpyData = IpyGameDataPY.GetIpyGameDataNotLog('TreasureUp', magicWeaponID, lv)
|
| | | if upIpyData:
|
| | | attrDict = upIpyData.GetAddAttr()
|
| | | GameWorld.AddDictValue(allAttrDict, attrDict)
|
| | | |
| | | if magicWeaponID == signDayMWID:
|
| | | #签到属性
|
| | | totalSignNum = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalSignNum) # 总签到天数
|
| | | addAttr = {}
|
| | | for attid, attnum in IpyGameDataPY.GetFuncEvalCfg('MWSignDayAttr', 1, {}).items():
|
| | | addAttr[int(attid)] = attnum * totalSignNum
|
| | | GameWorld.AddDictValue(allAttrDict, addAttr)
|
| | | fbpasslv = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MWFBPassLevel % magicWeaponID)
|
| | | if fbpasslv: #副本关卡属性
|
| | | fbipyData = IpyGameDataPY.GetIpyGameData('MagicWeaponFB', magicWeaponID, fbpasslv)
|
| | | if fbipyData:
|
| | | attrDict = fbipyData.GetAttrDict()
|
| | | for effID, value in attrDict.items():
|
| | | effID = int(effID)
|
| | | allAttrDict[effID] = allAttrDict.get(effID, 0) + value
|
| | | if isActive:
|
| | | #等级属性
|
| | | curMWLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MagicWeaponLV % magicWeaponID)
|
| | | for lv in xrange(curMWLV+1):
|
| | | upIpyData = IpyGameDataPY.GetIpyGameDataNotLog('TreasureUp', magicWeaponID, lv)
|
| | | if upIpyData:
|
| | | attrDict = upIpyData.GetAddAttr()
|
| | | GameWorld.AddDictValue(allAttrDict, attrDict)
|
| | | |
| | | if magicWeaponID == signDayMWID:
|
| | | #签到属性
|
| | | totalSignNum = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TotalSignNum) # 总签到天数
|
| | | addAttr = {}
|
| | | for attid, attnum in IpyGameDataPY.GetFuncEvalCfg('MWSignDayAttr', 1, {}).items():
|
| | | addAttr[int(attid)] = attnum * totalSignNum
|
| | | GameWorld.AddDictValue(allAttrDict, addAttr)
|
| | | else:
|
| | | fbpasslv = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MWFBPassLevel % magicWeaponID)
|
| | | if fbpasslv: #副本关卡属性
|
| | | fbipyData = IpyGameDataPY.GetIpyGameData('MagicWeaponFB', magicWeaponID, fbpasslv)
|
| | | if fbipyData:
|
| | | attrDict = fbipyData.GetAttrDict()
|
| | | for effID, value in attrDict.items():
|
| | | effID = int(effID)
|
| | | allAttrDict[effID] = allAttrDict.get(effID, 0) + value
|
| | |
|
| | |
|
| | | for effID, value in allAttrDict.items():
|