ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetEquipWash.py
@@ -29,19 +29,18 @@
#  @remarks 函数详细说明.
def OnExec(curPlayer, cmdList):
    if not cmdList:
        GameWorld.DebugAnswer(curPlayer, "重置所有部位洗练信息: SetEquipWash 0")
        GameWorld.DebugAnswer(curPlayer, "设置所有部位洗练信息: SetEquipWash 洗练等级 当前等级洗练属性百分比")
        GameWorld.DebugAnswer(curPlayer, "设置指定部位洗练信息: SetEquipWash 阶级 装备位 洗练等级 当前等级洗练属性百分比")
        __GMHelpAnswer(curPlayer)
        return
    
    classLV = 0
    allIndexList = Operate_EquipWash.GetAllEquipWashPlace()
    syncPlace = -1
    if len(cmdList) == 1 and cmdList[0] == 0:
        for place in allIndexList:
            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_EquipWashLV % (place), 0)
        for index in allIndexList:
            Operate_EquipWash.SetEquipWashLV(curPlayer, index, 0)
            for attrNum in range(1, Operate_EquipWash.Def_EquipWashMaxAttrCount + 1):
                PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_EquipWashValue % (place, attrNum), 0)
                PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_EquipWashValueTemp % (place, attrNum), 0)
                PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_EquipWashValue % (index, attrNum), 0)
                PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_EquipWashValueTemp % (index, attrNum), 0)
        GameWorld.DebugLog("重置所有洗练数据")
                
    elif len(cmdList) == 2:
@@ -53,8 +52,8 @@
                continue
            equipPlace = ipyData.GetEquipPlace()
            maxWashLV = Operate_EquipWash.GetEquipWashMaxLV(curPlayer, equipPackindex, equipPlace)
            if maxWashLV < 1:
                continue
            #if maxWashLV < 1:
            #    continue
            __SetEquipPlaceWashLV(curPlayer, equipPackindex, equipPlace, washLV, attrPer, maxWashLV)
            isSync = True
        if not isSync:
@@ -69,29 +68,30 @@
        gridIndex = ipyData.GetGridIndex()
        syncPlace = gridIndex
        maxWashLV = Operate_EquipWash.GetEquipWashMaxLV(curPlayer, gridIndex, place)
        if maxWashLV < 1:
            return
        #if maxWashLV < 1:
        #    return
        __SetEquipPlaceWashLV(curPlayer, gridIndex, place, washLV, attrPer, maxWashLV)
        
    else:
        __GMHelpAnswer(curPlayer)
        return
    
    Operate_EquipWash.RefreshEquipWashAttr(curPlayer)
    Operate_EquipWash.RefreshEquipWashAttr(curPlayer, classLV)
    Operate_EquipWash.Sycn_EquipWashInfo(curPlayer, syncPlace)
    return
def __SetEquipPlaceWashLV(curPlayer, equipPackindex, place, washLV, attrPer, maxWashLV):
    washLV = min(maxWashLV, washLV)
    washLV = max(1, washLV)
    washLV = max(0, washLV)
    attrPer = max(0, attrPer)
    attrPer = min(100, attrPer)
    
    washType = Operate_EquipWash.GetEquipWashType(place)
    washData = Operate_EquipWash.GetEquipWashData(washType, washLV)
    preWashData = None if washLV <= 1 else Operate_EquipWash.GetEquipWashData(washType, washLV - 1)
    preWashData = None if washLV <= 0 else Operate_EquipWash.GetEquipWashData(washType, washLV - 1)
    
    #GameWorld.DebugLog("设置洗练: place=%s,washType=%s,washLV=%s,attrPer=%s" % (place, washType, washLV, attrPer))
    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_EquipWashLV % (equipPackindex), washLV - 1)
    Operate_EquipWash.SetEquipWashLV(curPlayer, equipPackindex, washLV)
    for attrNum in range(1, Operate_EquipWash.Def_EquipWashMaxAttrCount + 1):
        preMaxValue = 0 if not preWashData else getattr(preWashData, "GetAttrMax%s" % attrNum)()
        curMaxValue = getattr(washData, "GetAttrMax%s" % attrNum)()
@@ -102,4 +102,10 @@
        
    return
def __GMHelpAnswer(curPlayer):
    GameWorld.DebugAnswer(curPlayer, "重置所有部位洗练: SetEquipWash 0")
    GameWorld.DebugAnswer(curPlayer, "设置所有部位洗练: SetEquipWash 等级 百分比")
    GameWorld.DebugAnswer(curPlayer, "设置指定部位洗练: SetEquipWash 阶级 装备位 等级 百分比")
    return