From 4c115be5ce3f4be8766b2e10d1982807b787f132 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 18 七月 2024 17:46:34 +0800
Subject: [PATCH] 10223 【越南】【砍树】【主干】【港台】秘境寻宝(仙匣秘境层支持配置物品数、支持消耗道具寻宝;增加本服榜;增加跨服活动榜;任务活动支持仙匣秘境寻宝x次、x层任务类型;充值购买次数礼包活动支持配置额外的活动商城类型,支持配置每日重置的购买次数奖励;)

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

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActTask.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActTask.py
index 7599b0b..27088cf 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActTask.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActTask.py
@@ -111,6 +111,43 @@
         return taskIDMax / 31
     return defKeyNum
 
+def UpdActTaskValue(curPlayer, taskType, updValue):
+    ## 更新任务活动进度值
+    
+    playerID = curPlayer.GetPlayerID()
+    for actInfo in PyGameData.g_operationActionDict.get(ShareDefine.OperationActionName_ActTask, {}).values():
+        actNum = actInfo.get(ShareDefine.ActKey_ActNum, 0)
+        if not actInfo.get(ShareDefine.ActKey_State):
+            continue
+        
+        cfgID = actInfo.get(ShareDefine.ActKey_CfgID)
+        ipyData = IpyGameDataPY.GetIpyGameData("ActTask", cfgID)
+        if not ipyData:
+            continue
+        templateID = ipyData.GetTemplateID()
+        
+        taskIpyDataList = IpyGameDataPY.GetIpyGameDataList("ActTaskTemp", templateID)
+        if not taskIpyDataList:
+            continue
+        
+        needValueMax = 0
+        for taskIpyData in taskIpyDataList:
+            if taskIpyData.GetTaskType() != taskType:
+                continue
+            needValue = taskIpyData.GetNeedValue()
+            if needValue > needValueMax:
+                needValueMax = needValue
+                
+        curValue = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ActTaskValue % (actNum, taskType))
+        if updValue == curValue or needValueMax <= 0:
+            continue
+        
+        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_ActTaskValue % (actNum, taskType), updValue)
+        GameWorld.DebugLog("更新任务活动任务进度值: actNum=%s,taskType=%s,updValue=%s" % (actNum, taskType, updValue), playerID)
+        Sync_ActTaskPlayerValueInfo(curPlayer, actNum, [taskType])
+        
+    return
+    
 def AddActTaskValue(curPlayer, taskType, addValue):
     ## 增加任务活动进度值
     

--
Gitblit v1.8.0