9939 【BT0.1】【主干】装备升星修改(装备分解支持按品质、阶级、是否套装给固定物品)
1个文件已修改
17 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEquipDecompose.py 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEquipDecompose.py
@@ -152,8 +152,7 @@
    totalAddExp = 0
    allitemCnt = 0
    awardItemDict = {}
    eatEquipAwardDict = IpyGameDataPY.GetFuncEvalCfg('EquipDecomposeAward', 4, {})
    eatEquipAwardDictSuite = IpyGameDataPY.GetFuncEvalCfg('EquipDecomposeAward', 5, {})
    eatEquipAwardItemID = IpyGameDataPY.GetFuncCfg("EquipDecomposeAward", 4)
    petEatItemAddExpPer = PlayerVip.GetPrivilegeValue(curPlayer, ChConfig.VIPPrivilege_EatItem)
    itemPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
    for i, index in enumerate(expIndexList):
@@ -172,20 +171,18 @@
        elif ItemCommon.CheckItemIsEquip(eatItem):
            itemColor = eatItem.GetItemColor()
            itemClass = eatItem.GetLV()
            isSuite = 1 if eatItem.GetSuiteID() else 0
            ipyData = IpyGameDataPY.GetIpyGameData("PetEatEquip", itemColor, itemClass)
            if not ipyData:
                GameWorld.DebugLog("    tagPetEatEquip.txt,未配置该物品! eatItemID=%s, EquipColor=%s,EquipClass=%s" % (eatItemID, itemColor, itemClass))
                continue
            baseExp = ipyData.GetExp()
            
            equipAwardDict = eatEquipAwardDictSuite if eatItem.GetSuiteID() else eatEquipAwardDict
            if str(itemColor) in equipAwardDict:
                awardItemList = equipAwardDict[str(itemColor)]
                for awardID, awardCount in awardItemList:
                    awardItemDict[awardID] = awardItemDict.get(awardID, 0) + awardCount
                GameWorld.DebugLog("分解装备额外奖励: eatEquip=%s,itemColor=%s,suiteID=%s,awardItemList=%s total:%s"
                                   % (eatItem.GetItemTypeID(), itemColor, eatItem.GetSuiteID(), awardItemList, awardItemDict))
            if itemColor >= ChConfig.Def_Quality_Orange:
                awardCount = eval(IpyGameDataPY.GetFuncCompileCfg("EquipDecomposeAward", 5))
                awardItemDict[eatEquipAwardItemID] = awardItemDict.get(eatEquipAwardItemID, 0) + awardCount
                GameWorld.DebugLog("分解橙装以上额外奖励: eatEquip=%s,itemClass=%s,itemColor=%s,isSuite=%s,awardCount=%s total:%s"
                                   % (eatItem.GetItemTypeID(), itemClass, itemColor, isSuite, awardCount, awardItemDict))
        else:
            GameWorld.ErrLog('    不可分解的道具index=%s eatItemID=%s'%(index, eatItemID))
            continue