From aebb62c6097eb8cba70a1aa1338d4befb19a7a4e Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 29 十二月 2018 01:22:22 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(广播周围玩家当前护盾值)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
index 2a65f95..f87e025 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
@@ -71,6 +71,7 @@
         GameWorld.ErrLog("找不到该合成表数据配置! ID=%s" % compoundID)
         return
     
+    composeGroup = ipyData.GetComposeGroup()
     makeIDList = ipyData.GetMakeID()
     unfixedItemIDList = ipyData.GetUnfixedItemID()
     fixedItemIDList = ipyData.GetFixedItemID()
@@ -223,12 +224,16 @@
         totalSuccRate = min(successRateMax, totalSuccRate)
     GameWorld.DebugLog("合成成功率: successRate=%s,addSuccRate=%s,incRate=%s,successRateMax=%s,totalSuccRate=%s" 
                        % (successRate, addSuccRate, incRate, successRateMax, totalSuccRate), playerID)
-    # 首次合成一代翅膀成功率百分百
-    if makeItemData.GetType() == ChConfig.Def_ItemType_retWing and ItemCommon.GetWingLV(makeItemData) == 1:
-        if not curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HadCompoundWing):
+    # 前X次合成成功率百分百
+    composeMustSuccessDict = IpyGameDataPY.GetFuncEvalCfg("ComposeMustSuccess", 1, {})
+    if composeGroup in composeMustSuccessDict:
+        mustSuccessCountTotal = composeMustSuccessDict[composeGroup]
+        hisComposeCount = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ComposeMustSuccess % composeGroup)
+        if hisComposeCount < mustSuccessCountTotal:
             totalSuccRate = ShareDefine.Def_MaxRateValue
-            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HadCompoundWing, 1)
-            GameWorld.DebugLog("首次合成一代翅膀,必定成功!totalSuccRate=%s" % totalSuccRate, playerID)
+            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_ComposeMustSuccess % composeGroup, hisComposeCount + 1)
+            GameWorld.DebugLog("前X次合成必定成功!composeGroup=%s,hisComposeCount=%s,mustSuccessCountTotal=%s,totalSuccRate=%s" 
+                               % (composeGroup, hisComposeCount, mustSuccessCountTotal, totalSuccRate), playerID)
             
     # 合成成功
     maxRateValue = ShareDefine.Def_MaxRateValue

--
Gitblit v1.8.0