From eda1c4429db2e7a3b1b79eee0cba0fc7abec7290 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期四, 04 七月 2024 19:12:34 +0800 Subject: [PATCH] 10198 【香港】【越南】【主干】【砍树】【后端】BOSS凭证优化 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 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 a5bd730..deeb53e 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py @@ -6084,6 +6084,32 @@ return #--------------------------------------------------------------------- +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) + stateJoin = actInfo.get(ShareDefine.ActKey_StateJoin, 0) + if stateJoin == ShareDefine.ActStateJoin_Start and actID == playerActID: + GameWorld.DebugLog("%s活动玩家正在参与中! cfgID=%s,actID=%s,stateJoin=%s" + % (crossActName, cfgID, actID, stateJoin), curPlayer.GetPlayerID()) + return True + + for actInfo in PyGameData.g_operationActionDict.get(actName, {}).values(): + actNum = actInfo.get(ShareDefine.ActKey_ActNum, 0) + actID = actInfo.get(ShareDefine.ActKey_ID, 0) + stateJoin = actInfo.get(ShareDefine.ActKey_StateJoin, 0) + playerActID = curPlayer.NomalDictGetProperty(actIDKey % actNum) + if stateJoin == ShareDefine.ActStateJoin_Start and actID == playerActID: + GameWorld.DebugLog("%s玩家正在参与中! actNum=%s,actID=%s,stateJoin=%s" + % (actName, actNum, actID, stateJoin), curPlayer.GetPlayerID()) + return True + + return False + def RefreshOperationAction_ExpRate(): playerManager = GameWorld.GetPlayerManager() for i in xrange(playerManager.GetPlayerCount()): -- Gitblit v1.8.0