| | |
| | | import PlayerFamilyRedPacket
|
| | | import PlayerFairyCeremony
|
| | | import PlayerNewFairyCeremony
|
| | | import PlayerActFamilyCTGAssist
|
| | | import PlayerActGarbageSorting
|
| | | import PlayerActBossTrial
|
| | | import PlayerActXianXiaMJ
|
| | | import PlayerActGubao
|
| | | import PlayerActHorsePetTrain
|
| | | import PlayerUniversalGameRec
|
| | | import GameWorldAverageLv
|
| | | import PlayerFamilyBoss
|
| | |
| | | for sendMapServerMsgDict in curActMapInfoDictList:
|
| | |
|
| | | state = 0 # 默认关闭
|
| | | stateJoin = 0 # 可参与状态
|
| | | stateJoin = ShareDefine.ActStateJoin_None # 可参与状态,0-参与前;1-可参与;2-参与结束
|
| | | ipyData = None
|
| | |
|
| | | actNum = sendMapServerMsgDict.get(ShareDefine.ActKey_ActNum, 0)
|
| | |
| | | for jIndex, joinStartDateTime in enumerate(joinStartTimeList):
|
| | | endJoinDateTime = joinEndTimeList[jIndex]
|
| | | if joinStartDateTime <= curDateTime < endJoinDateTime:
|
| | | stateJoin = state
|
| | | stateJoin = ShareDefine.ActStateJoin_Start
|
| | | break
|
| | | elif curDateTime >= endJoinDateTime:
|
| | | stateJoin = ShareDefine.ActStateJoin_End
|
| | | else:
|
| | | stateJoin = state
|
| | | stateJoin = ShareDefine.ActStateJoin_Start if state else ShareDefine.ActStateJoin_None
|
| | |
|
| | | # 全服广播提示信息
|
| | | if curDateTime in notifyDict:
|
| | |
| | | if dbActID:
|
| | | if actName == ShareDefine.OperationActionName_BossTrial:
|
| | | PlayerActBossTrial.OnActEnd(actNum, ipyData, dayIndex)
|
| | | elif actName == ShareDefine.OperationActionName_XianXiaMJ:
|
| | | PlayerActXianXiaMJ.OnActEnd(actNum, ipyData, dayIndex)
|
| | | elif actName == ShareDefine.OperationActionName_Gubao:
|
| | | PlayerActGubao.OnActEnd(actNum, ipyData, dayIndex)
|
| | | elif actName == ShareDefine.OperationActionName_HorsePetTrain:
|
| | | PlayerActHorsePetTrain.OnActEnd(actNum, ipyData, dayIndex)
|
| | |
|
| | | if curActID:
|
| | | if actName in ShareDefine.NeedWorldLVOperationActNameList:
|
| | |
| | | PlayerActGarbageSorting.OnActStart(actNum)
|
| | | elif actName == ShareDefine.OperationActionName_BossTrial:
|
| | | PlayerActBossTrial.OnActStart(actNum)
|
| | | elif actName == ShareDefine.OperationActionName_XianXiaMJ:
|
| | | PlayerActXianXiaMJ.OnActStart(actNum, ipyData)
|
| | | elif actName == ShareDefine.OperationActionName_Gubao:
|
| | | PlayerActGubao.OnActStart(actNum, ipyData)
|
| | | elif actName == ShareDefine.OperationActionName_HorsePetTrain:
|
| | | PlayerActHorsePetTrain.OnActStart(actNum, ipyData)
|
| | | elif actName == ShareDefine.OperationActionName_FamilyCTGAssist:
|
| | | PlayerActFamilyCTGAssist.OnActStart(actNum)
|
| | | else:
|
| | | if actName == ShareDefine.OperationActionName_GarbageSorting:
|
| | | PlayerActGarbageSorting.OnActEnd(actNum)
|
| | |
| | | else:
|
| | | GameWorld.Log(" dbActID不变: dbActID=%s,curActID=%s" % (dbActID, curActID))
|
| | |
|
| | | # 仅活动有配置参与时间段的会触发
|
| | | if curActID and dbActID == curActID and preStateJoin != stateJoin:
|
| | | GameWorld.Log(" 参与状态变更: preStateJoin=%s,stateJoin=%s" % (preStateJoin, stateJoin))
|
| | | # 参与开始
|
| | | if stateJoin == ShareDefine.ActStateJoin_Start:
|
| | | pass
|
| | | # 参与结束
|
| | | elif stateJoin == ShareDefine.ActStateJoin_End:
|
| | | if actName == ShareDefine.OperationActionName_BossTrial:
|
| | | PlayerActBossTrial.OnActJoinEnd(actNum, ipyData, dayIndex)
|
| | | elif actName == ShareDefine.OperationActionName_XianXiaMJ:
|
| | | PlayerActXianXiaMJ.OnActJoinEnd(actNum, ipyData, dayIndex)
|
| | | elif actName == ShareDefine.OperationActionName_Gubao:
|
| | | PlayerActGubao.OnActJoinEnd(actNum, ipyData, dayIndex)
|
| | | elif actName == ShareDefine.OperationActionName_HorsePetTrain:
|
| | | PlayerActHorsePetTrain.OnActJoinEnd(actNum, ipyData, dayIndex)
|
| | | |
| | | if ipyData and actName in ShareDefine.NeedWorldLVOperationActNameList:
|
| | | actWorldLV = PlayerDBGSEvent.GetDBGSTrig_ByKey(dbOperationActWorldLVKey)
|
| | | sendMapServerMsgDict[ShareDefine.ActKey_WorldLV] = actWorldLV
|