| | |
| | |
|
| | | #---------------------------------------------------------------------
|
| | | 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
|
| | |
| | | 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
|