From df2aaca6d5b503cc993ec2bf782de6a3a6d900cb Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期六, 27 四月 2019 11:52:45 +0800
Subject: [PATCH] 6636 【后端】【2.0】仙宝寻主

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py |   49 ++++++++++++-------------------------------------
 1 files changed, 12 insertions(+), 37 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py
index 1345f99..6e8e0f0 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMagicWeapon.py
@@ -347,47 +347,22 @@
     conditionList = ipyData.GetCondition()
     cnt = 0
     if curType == 1:
-        #角色防御到XX
-        cnt = PlayerControl.GetFuncDef(curPlayer)
-        
-    elif curType == 2:
-        #穿戴三阶橙色1星或四阶紫色1星以上头盔
+        #穿戴X阶X颜色是否套装X部位装备
+        cnt = 0
         playerEquip = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip)
-        SamboSpecialUnlock = IpyGameDataPY.GetFuncEvalCfg('SamboSpecialUnlock')
-        for equipIndex in xrange(playerEquip.GetCount()):
-            curEquip = playerEquip.GetAt(equipIndex)
+        for classlv, color, suite, place in conditionList:
+            equipIpyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap',classlv,place)
+            if not equipIpyData:
+                continue
+            gridIndex = equipIpyData.GetGridIndex()
+            curEquip = playerEquip.GetAt(gridIndex)
             if curEquip.IsEmpty():
                 continue
-            curClassLV = ItemCommon.GetItemClassLV(curEquip)
-            itemColor = curEquip.GetItemColor()
-            itemQuality = curEquip.GetItemQuality()
-            itemID = curEquip.GetItemTypeID()
-            for classlv, color, star, place in conditionList:
-                if equipIndex is place and itemID in SamboSpecialUnlock:
-                    cnt = 1
-                    break
-                if equipIndex is place and curClassLV >= classlv and itemColor >= color and itemQuality >= star:
-                    cnt = 1
-                    break
-            if cnt:
+            curItemColor = curEquip.GetItemColor()
+            curIsSuite = curEquip.GetSuiteID()
+            if curItemColor >= color and curIsSuite >= suite:
+                cnt = 1
                 break
-#    elif curType == 3:
-#        #全身装备X星
-#        cnt = ChEquip.GetTotalEquipStars(curPlayer)
-        
-#    elif curType == 4:
-#        #X阶普通、强化套装
-#        suiteCntDict = {}
-#        playerEquip = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip)
-#        for equipIndex in xrange(playerEquip.GetCount()):
-#            curEquip = playerEquip.GetAt(equipIndex)
-#            if curEquip.IsEmpty():
-#                continue
-#            suiteInfo = ChEquip.GetSuiteInfoByPlace(curPlayer, equipIndex, curEquip)
-#            for suitelv, suiteType in conditionList:
-#                if suiteInfo.get(suiteType, 0) >= suitelv:
-#                    suiteCntDict[suiteType] = suiteCntDict.get(suiteType, 0)+1
-#        cnt = max(suiteCntDict.values()) if suiteCntDict else 0
         
     else:
         return

--
Gitblit v1.8.0