From 06f7cfc3b1593efafe8553532c4a422c1a8e199c Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 20 十二月 2022 17:04:16 +0800
Subject: [PATCH] 9731 【越南】【主干】【BT7】【BT8】转职业(转职附加重置专精相关字典记录数据)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerChangeJob.py |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerChangeJob.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerChangeJob.py
index f130383..4db010c 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerChangeJob.py
+++ b/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):

--
Gitblit v1.8.0