9731 【越南】【主干】【BT7】【BT8】转职业(转职附加重置专精相关字典记录数据)
1个文件已修改
22 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerChangeJob.py 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerChangeJob.py
@@ -234,6 +234,28 @@
        DR_ChangeJob(curPlayer, {"skillTypeID":skillTypeID, "skillID":skillID, "skillLV":skillLV, "skillName":skillName,
                                 "repSkillTypeID":repSkillTypeID, "repSkillID":repSkillID, "repSkillName":repSkillName})
        
    GameWorld.Log("删除专精相关字典记录数据", playerID)
    for index in range(ipyDataMgr.GetSkillElementCount()):
        ipyData = ipyDataMgr.GetSkillElementByIndex(index)
        elementSkillID = ipyData.GetElementSkillID()
        mainSkillID = ipyData.GetMainSkillID()
        selectElementSkillID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_SkillElementID % mainSkillID)
        if selectElementSkillID:
            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_SkillElementID % mainSkillID, 0)
            mainSkillData = GameWorld.GetGameData().GetSkillBySkillID(mainSkillID)
            mainSkillName = mainSkillData.GetSkillName() if mainSkillData else ""
            selSkillData = GameWorld.GetGameData().GetSkillBySkillID(selectElementSkillID)
            selSkillName = selSkillData.GetSkillName() if selSkillData else ""
            GameWorld.Log("    取消使用中的专精: mainSkillID=%s(%s),selectElementSkillID=%s(%s)"
                          % (mainSkillID, mainSkillName, selectElementSkillID, selSkillName), playerID)
        elementSkillIDLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_SkillElementLV % elementSkillID)
        if elementSkillIDLV:
            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_SkillElementLV % elementSkillID, 0)
            elmSkillData = GameWorld.GetGameData().GetSkillBySkillID(elementSkillID)
            elmSkillName = elmSkillData.GetSkillName() if elmSkillData else ""
            GameWorld.Log("    重置专精记录等级: elementSkillID=%s(%s),elementSkillIDLV=%s" % (elementSkillID, elmSkillName, elementSkillIDLV), playerID)
    # 处理物品
    GameWorld.Log("替换物品: 个数=%s" % len(assignItemList), playerID)
    for num, itemInfo in enumerate(assignItemList, 1):