From 927de56a0a32333087885c0e29ba156f25eb96b6 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 07 一月 2025 17:56:40 +0800
Subject: [PATCH] 10289 【越南】【英语】【砍树】【BT】运势-服务端(A801增加领取累计寻宝次数奖励事件名通知 TreasureCntAward)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/CalcNoLineEffect.py |   25 +++++++++++++++----------
 1 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/CalcNoLineEffect.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/CalcNoLineEffect.py
index ca8511d..4ea3121 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/CalcNoLineEffect.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/CalcNoLineEffect.py
@@ -21,13 +21,27 @@
 import ChConfig
 import EffGetSet
 import GameWorld
+import FBCommon
 #---------------------------------------------------------------------
+
+def AddPlayerMapAttrNolineEffect(curPlayer, effectDict):
+    ## 根据玩家当前属性给玩家添加非线性效果加成 - 某些地图才生效的
+    mapID = FBCommon.GetRecordMapID(curPlayer.GetMapID())
+    mapAttrNolineInfo = ChConfig.MapAttrInfoDict_Noline.get(mapID, {})
+    for attrIndex, effAttrIndexList in mapAttrNolineInfo.items():
+        curValue = EffGetSet.GetValueByEffIndex(curPlayer, attrIndex)
+        if not curValue:
+            #GameWorld.DebugLog("    没有该类属性: attrIndex=%s" % attrIndex)
+            continue
+        for effAttrIndex in effAttrIndexList:
+            effectDict[effAttrIndex] = effectDict.get(effAttrIndex, 0) + curValue
+    return
 
 ## 给玩家添加非线性Buff效果 
 #  @param curPlayer 当前玩家
 #  @param effectDict 效果列表
 #  @return None
-def ChangePlayerAttrInNoLineEffectList(curPlayer, effectDict, mfpObjAttrDict=None, isBuffAttr=False):
+def ChangePlayerAttrInNoLineEffectList(curPlayer, effectDict, isBuffAttr=False):
     for key, value in effectDict.items():
         if value == 0:
             continue
@@ -64,15 +78,6 @@
 ##            # 衰减算法
 ##            EffGetSet.SetValueByEffIndex(curPlayer, key, tmpValue)
 #        else:
-        if mfpObjAttrDict:
-            for mfpObj, attrDict in mfpObjAttrDict.items():
-                #if not attrDict.has_key(key): # 如果该模块没有增加该属性,则跳过
-                if key not in attrDict: # 如果该模块没有增加该属性,则跳过
-                    continue
-                curMValue = attrDict[key]
-                curMAddValue = curValue * curMValue / ChConfig.Def_MaxRateValue # 相对增加值
-                mfpObj.AddCalcMFPAttr(key, curMAddValue) # 给对应模块累加上非线性增加的战斗属性值
-                
         EffGetSet.SetValueByEffIndex(curPlayer, key, curValue * (ChConfig.Def_MaxRateValue + value) / ChConfig.Def_MaxRateValue)
     
     return

--
Gitblit v1.8.0