hxp
2025-08-07 acaf6969af14155837c30e62b85786bd33939f0e
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerSuccess.py
@@ -397,49 +397,6 @@
        SetSuccFinishValue(curPlayer, succType, condition, 0)
    return
def DoEquipSuccessLogic(curPlayer, classLV):
    #玩家当前可装备的装备类型
    ipyDataList = IpyGameDataPY.GetIpyGameDataByCondition('EquipPlaceIndexMap', {'ClassLV':classLV}, True)
    if not ipyDataList:
        return
    placeCountDict, colorCountDict, suitCountDict = {}, {}, {}
    playerEquip = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip)
    for ipyData in ipyDataList:
        equipIndex = ipyData.GetGridIndex()
        curEquip = playerEquip.GetAt(equipIndex)
        if curEquip.IsEmpty():
            continue
        itemPlace = curEquip.GetEquipPlace()
        # 套装、颜色 成就 统计基础部位
        if itemPlace in ChConfig.EquipPlace_Base:
            itemColor = curEquip.GetItemColor()
            colorConditionKey = (classLV, itemColor)
            colorCountDict[colorConditionKey] = colorCountDict.get(colorConditionKey, 0) + 1
            # 统计套装数
            if curEquip.GetSuiteID():
                suitConditionKey = (classLV, )
                suitCountDict[suitConditionKey] = suitCountDict.get(suitConditionKey, 0) + 1
        # 部位 成就 统计特殊部位
        elif itemPlace in ChConfig.EquipPlace_Special:
            placeConditionKey = (classLV, itemPlace)
            placeCountDict[placeConditionKey] = placeCountDict.get(placeConditionKey, 0) + 1
    # 更新成就
    #GameWorld.DebugLog("装备阶部位成就数据: classLV=%s,placeCountDict=%s" % (classLV, placeCountDict))
    UpdateSuccessProgressByConditions(curPlayer, ShareDefine.SuccType_EquipPlace, placeCountDict)
    #GameWorld.DebugLog("装备阶颜色成就数据: classLV=%s,colorCountDict=%s" % (classLV, colorCountDict))
    UpdateSuccessProgressByConditions(curPlayer, ShareDefine.SuccType_EquipColorItem, colorCountDict)
    #GameWorld.DebugLog("装备阶套装成就数据: classLV=%s,suitCountDict=%s" % (classLV, suitCountDict))
    UpdateSuccessProgressByConditions(curPlayer, ShareDefine.SuccType_EquipSuit, suitCountDict)
    return
def UpdateSuccessProgressByConditions(curPlayer, successType, conditionCountDict):
    if successType not in ShareDefine.SuccessTypeList:
        return