From a81d36e5c709d7d4465be2ddaed2bd58a6132be0 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期二, 04 六月 2019 10:50:29 +0800
Subject: [PATCH] 6501 仙宝寻主任务接口修改

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActivity.py |   50 ++++++++++++++++++++++++++++++++------------------
 1 files changed, 32 insertions(+), 18 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActivity.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActivity.py
index 9423362..85a2f01 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActivity.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActivity.py
@@ -236,22 +236,35 @@
     __SetPDictValue(curPlayer, key, addPbCnt)
     
     #
-    multiple = 1
-    if addValue:
-        multiple, extraPointLimit = __GetActionAddPer(curPlayer)
-        curExtraPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_ExtraRealmPoint)
-        addExtraPoint = max(0, min(addValue * (multiple - 1), extraPointLimit - curExtraPoint)) if extraPointLimit else addValue * (multiple - 1)
-        __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_ExtraRealmPoint, curExtraPoint + addExtraPoint)
-        addValue = addValue + addExtraPoint
-        curTotalPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint)
-        __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint, curTotalPoint + addValue)
-        AddCanCostActivityPoint(curPlayer, addValue)
-        SyncDailyActivityInfo(curPlayer)
-        EventShell.EventRespons_AddActivityValue(curPlayer)
-        GameWorld.DebugLog("增加活跃度任务次数,activityNum=%s,addPbCnt=%s,addValue=%s, multiple=%s, addExtraPoint=%s,curExtraPoint=%s"  
-                           % (activityNum, addPbCnt, addValue, multiple, addExtraPoint, curExtraPoint), curPlayer.GetPlayerID())
+    DoAddActivity(curPlayer, addValue, True)
     return
 
+def DoAddActivity(curPlayer, addValue, isMultiple=False):
+    if not addValue:
+        return
+    multiple = 1
+    addExtraPoint = 0
+    if isMultiple:
+        multiple, extraPointLimit = __GetActionAddPer(curPlayer)
+        curExtraPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_ExtraRealmPoint)
+        addExtraPoint = max(0, min(addValue * (multiple - 1),
+                                   extraPointLimit - curExtraPoint)) if extraPointLimit else addValue * (multiple - 1)
+        __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_ExtraRealmPoint, curExtraPoint + addExtraPoint)
+        addValue = addValue + addExtraPoint
+    curTotalPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint)
+    __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint, curTotalPoint + addValue)
+    AddCanCostActivityPoint(curPlayer, addValue)
+    historyPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_ActivityHistoryPoint)
+    __SetPDictValue(curPlayer, ChConfig.Def_PDict_ActivityHistoryPoint,
+                    min(ChConfig.Def_UpperLimit_DWord, historyPoint + addValue))
+
+    SyncDailyActivityInfo(curPlayer)
+    EventShell.EventRespons_AddActivityValue(curPlayer)
+    GameWorld.DebugLog(
+        "增加活跃度,addValue=%s, multiple=%s, addExtraPoint=%s"
+        % (addValue, multiple, addExtraPoint), curPlayer.GetPlayerID())
+
+    return
 
 def __GetActionAddPer(curPlayer):
     multiple, extraPointLimit = 1, 0  #倍数、额外可获得修行点上限
@@ -273,14 +286,15 @@
     __SetPDictValue(curPlayer, ChConfig.Def_PDict_ActivityCanCostTotalPoint, min(IpyGameDataPY.GetFuncCfg('ImmortalDomainActivePoint'), curPoint + addValue))
     return
 
-def CostActivityPoint(curPlayer, costPoint):
+def CostActivityPoint(curPlayer, costPoint, isOnlyCheck=False):
     # 消耗活跃点
     curPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_ActivityCanCostTotalPoint)
     if curPoint < costPoint:
         return
-    __SetPDictValue(curPlayer, ChConfig.Def_PDict_ActivityCanCostTotalPoint,
-                    curPoint - costPoint)
-    SyncDailyActivityInfo(curPlayer)
+    if not isOnlyCheck:
+        __SetPDictValue(curPlayer, ChConfig.Def_PDict_ActivityCanCostTotalPoint,
+                        curPoint - costPoint)
+        SyncDailyActivityInfo(curPlayer)
     return True
 
 ## 同步活跃度信息

--
Gitblit v1.8.0