From 7f4a86f84f758774920ea348835954fec6db6588 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 09 八月 2019 11:17:38 +0800
Subject: [PATCH] Merge branch 'master' of http://mobile.173on.com:10010/r/SnxxServerCode

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py |   28 ++++++++++++++++++++++++----
 1 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
index e7341ce..d8bf528 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
@@ -138,6 +138,28 @@
         
     return addSkillList
 
+def GetItemSkillIDList(curItem):
+    ## 获取物品可添加的技能ID列表
+    addSkillIDList = []
+    gameData = GameWorld.GetGameData()
+    for i in xrange(curItem.GetUserAttrCount(ShareDefine.Def_IudetAddSkillItemID)):
+        itemID = curItem.GetUserAttrByIndex(ShareDefine.Def_IudetAddSkillItemID, i)
+        itemData = gameData.GetItemByTypeID(itemID)
+        if not itemData:
+            continue
+        for i in xrange(itemData.GetAddSkillCount()):
+            skillID = itemData.GetAddSkill(i)
+            if skillID == 0:
+                break
+            addSkillIDList.append(skillID)
+    if not addSkillIDList:
+        for i in xrange(curItem.GetAddSkillCount()):
+            skillID = curItem.GetAddSkill(i)
+            if skillID == 0:
+                break
+            addSkillIDList.append(skillID)
+    return addSkillIDList
+
 #---------------------------------------------------------------------
 ## 物品xml参数
 #  @param curItem 物品
@@ -394,10 +416,8 @@
         
     gsValueEx = 0
     skillGSDict = IpyGameDataPY.GetFuncCfg("EquipGSFormula", 4)
-    for i in xrange(curItem.GetAddSkillCount()):
-        addSkillID = curItem.GetAddSkill(i)
-        if not addSkillID:
-            break
+    itemSkillIDList = GetItemSkillIDList(curItem)
+    for addSkillID in itemSkillIDList:
         gsValueEx += skillGSDict.get(str(addSkillID), 0)
         
     itemID = curItem.GetItemTypeID()

--
Gitblit v1.8.0