From 4b857588a060f62383b85ee501ff7555e7d2edc6 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期二, 16 七月 2019 18:37:48 +0800
Subject: [PATCH] 8008 【2.0.300】【开发】升星功能调整

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py
index 1c9560a..fb7d7bf 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py
@@ -124,9 +124,8 @@
     totalEquipStars = ChEquip.GetTotalEquipStars(curPlayer)
     
     if not costEquipCnt:
-        curRate = suitTotalRate / 2
+        curRate = 100
     else:
-        singleSuitRate = float(suitTotalRate) / costEquipCnt
         curRate = 0 #成功概率
         
         for i, index in enumerate(clientData.CostEquipIndex):
@@ -137,16 +136,23 @@
             if equipID != clientData.CostEquipID[i]:
                 GameWorld.ErrLog('   装备升星 客户端发的物品索引与实际物品ID不对应  index=%s,eatItemID=%s,wantEatItemID=%s' % (index, equipID, clientData.CostEquipID[i]))
                 return result
-            if costEquip.GetItemColor() not in costEquipColorList:
+            itemColor = costEquip.GetItemColor()
+            equipPlace = costEquip.GetEquipPlace()
+            if itemColor not in costEquipColorList:
                 return result
-            if costEquip.GetEquipPlace() not in costEquipPlaceList:
+            if equipPlace not in costEquipPlaceList:
                 return result
             if isJobLimit and not ItemCommon.CheckJob(curPlayer, costEquip):
                 return result
             delEquipIndexList.append(index)
             isSuite = costEquip.GetSuiteID()
-            addRate = singleSuitRate if isSuite else singleSuitRate / 2
-            curRate += addRate
+            
+            ipyData = IpyGameDataPY.GetIpyGameData('EquipStarUpRate', ItemCommon.GetItemClassLV(costEquip), 
+                                                   itemColor, equipPlace, isSuite
+                                                   )
+            if not ipyData:
+                return
+            curRate += ipyData.GetRate()
     if totalEquipStars < IpyGameDataPY.GetFuncCfg('EquipStarCustomized'):
         curRate = 100
     if curRate <= 0:

--
Gitblit v1.8.0