hxp
2022-08-11 8a5cd920235eefda418bba0e949ba522cab72a4c
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipPlus.py
@@ -35,6 +35,8 @@
import EventShell
import ChPyNetSendPack
import NetPackCommon
import PlayerWeekParty
import PlayerActGarbageSorting
#-------------------------------------------------------------------------------------------
#===============================================================================
@@ -148,11 +150,12 @@
        curPartPlusLV += 1
        __EquipMayaPlusChange(curPlayer, packType, curEquip, index, curPartPlusLV)
        
    DataRecordPack.DR_UpStarLVSuccess(curPlayer, curExp, curPartPlusLV)
    #DataRecordPack.DR_UpStarLVSuccess(curPlayer, curExp, curPartPlusLV)
    ChEquip.SetEquipPartProficiency(curPlayer, packType, index, curExp)
    ChEquip.NotifyEquipPartPlusLV(curPlayer, packType, index)
    PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_EquipPlus)
    PlayerActLogin.AddLoginAwardActionCnt(curPlayer, ChConfig.Def_LoginAct_EquipPlus, 1)
    PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_Plus, 1)
    return
def __EquipMayaPlusChange(curPlayer, packType, curEquip, index, updPlusLV):
@@ -169,18 +172,36 @@
        PlayerControl.WorldNotify(0, "StrengthenCongratulation", msgParamList)
        
    classLV = ItemCommon.GetItemClassLV(curEquip) 
    # 成就
    #PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_EquipPlusLV, 1, [updPlusLV])
    
    DoLogic_OnEquipPartStarLVChange(curPlayer, packType, classLV)
    # 增加强化成就
    PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_EquipPlus, 1)
    # 强化成就
    __UpdateEquipPlusSuccess(curPlayer, classLV)
    EventShell.EventRespons_EquipPlus(curPlayer, classLV, updPlusLV)
    
    # 开服活动数据
    #OpenServerCampaign.UpdOpenServerCampaignRecordData(curPlayer, ShareDefine.Def_Campaign_Type_Plus, ChEquip.GetTotalPlusLV(curPlayer))
    return
def __UpdateEquipPlusSuccess(curPlayer, classLV):
    ipyDataList = IpyGameDataPY.GetIpyGameDataByCondition('EquipPlaceIndexMap', {'ClassLV':classLV}, True)
    if not ipyDataList:
        return
    packType = IPY_GameWorld.rptEquip
    plusLVCountDict = {}
    for ipyData in ipyDataList:
        index = ipyData.GetGridIndex()
        plusLV = ChEquip.GetEquipPartPlusLV(curPlayer, packType, index)
        if not plusLV:
            continue
        conditionKey = (classLV, plusLV)
        plusLVCountDict[conditionKey] = plusLVCountDict.get(conditionKey, 0) + 1
    #GameWorld.DebugLog("强化成就数据: classLV=%s,plusLVCountDict=%s" % (classLV, plusLVCountDict))
    PlayerSuccess.UpdateSuccessProgressByConditions(curPlayer, ShareDefine.SuccType_EquipPlus, plusLVCountDict)
    PlayerActGarbageSorting.AddActGarbageTaskProgress(curPlayer, ChConfig.Def_GarbageTask_EquipPlus)
    return
def DoLogic_OnEquipPartStarLVChange(curPlayer, packType, classLV):
    #先刷装备BUFF 再计算属性
    curPlayer.SetDict(ChConfig.Def_PlayerKey_AttrActivatyNotify, ChConfig.Def_AttrActivatyNotify_Plus)