From 27a35e96b8a8bcedc8d28a561b31bb4b9306c2cd Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 05 七月 2024 16:33:18 +0800
Subject: [PATCH] 10198 【香港】【越南】【主干】【砍树】【后端】BOSS凭证优化(优化凭证转化: 活动开始后到参与结束都不转化,包含活动开始参与前;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
index deeb53e..3a054f0 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -6085,15 +6085,16 @@
 
 #---------------------------------------------------------------------
 def IsInOperationAction(curPlayer, actName, actIDKey, crossActName="", crossActIDKey=""):
-    ## 玩家是否有正在参与中的活动中运营活动
+    ## 玩家是否有正在进行中运营活动,不含参与结束阶段
     
     if crossActName and crossActIDKey:
         playerActID = curPlayer.NomalDictGetProperty(crossActIDKey)
         actInfo = CrossRealmPlayer.GetPlayerCrossActInfo(curPlayer, crossActName)
         actID = actInfo.get(ShareDefine.ActKey_ID, 0)
         cfgID = actInfo.get(ShareDefine.ActKey_CfgID, 0)
+        state = actInfo.get(ShareDefine.ActKey_State, 0)
         stateJoin = actInfo.get(ShareDefine.ActKey_StateJoin, 0)
-        if stateJoin == ShareDefine.ActStateJoin_Start and actID == playerActID:
+        if state and stateJoin != ShareDefine.ActStateJoin_End and actID == playerActID:
             GameWorld.DebugLog("%s活动玩家正在参与中! cfgID=%s,actID=%s,stateJoin=%s" 
                                % (crossActName, cfgID, actID, stateJoin), curPlayer.GetPlayerID())
             return True
@@ -6101,9 +6102,10 @@
     for actInfo in PyGameData.g_operationActionDict.get(actName, {}).values():
         actNum = actInfo.get(ShareDefine.ActKey_ActNum, 0)
         actID = actInfo.get(ShareDefine.ActKey_ID, 0)
+        state = actInfo.get(ShareDefine.ActKey_State, 0)
         stateJoin = actInfo.get(ShareDefine.ActKey_StateJoin, 0)
         playerActID = curPlayer.NomalDictGetProperty(actIDKey % actNum)
-        if stateJoin == ShareDefine.ActStateJoin_Start and actID == playerActID:
+        if state and stateJoin != ShareDefine.ActStateJoin_End and actID == playerActID:
             GameWorld.DebugLog("%s玩家正在参与中! actNum=%s,actID=%s,stateJoin=%s" 
                                % (actName, actNum, actID, stateJoin), curPlayer.GetPlayerID())
             return True

--
Gitblit v1.8.0