| | |
| | | # 跨服不处理运营活动
|
| | | return
|
| | |
|
| | | isReload, OperationActionInfo = __GetOperationActionInfo()
|
| | | # 玩家登录的不触发重载活动,不然刚好在0点服务器处理OnDay之前登录的时候会有问题
|
| | | isReload, OperationActionInfo = __GetOperationActionInfo(needReload=False)
|
| | | if not OperationActionInfo:
|
| | | return
|
| | | operationActionDict = OperationActionInfo[OperationAction_TodayInfo]
|
| | |
|
| | | if isReload:
|
| | |
| | | % (actName, cfgID, recStartDateStr, recEndDateStr, recLimitWorldLV, recWorldLV))
|
| | | return actWorldLVLimitInfo
|
| | |
|
| | | def __GetOperationActionInfo(isRefreshState=True):
|
| | | def __GetOperationActionInfo(isRefreshState=True, needReload=True):
|
| | | # @return: isReload, OperationActionInfo
|
| | |
|
| | | key = "OperationActionInfo"
|
| | |
| | | reloadSign = [openServerDay, isMixServer, mixServerDay, reloadSignHour]
|
| | | if OperationActionInfo and OperationActionInfo[OperationAction_ReloadSign] == reloadSign:
|
| | | #GameWorld.DebugLog("已经加载过本日运营活动处理信息!openServerDay=%s" % openServerDay)
|
| | | return False, OperationActionInfo
|
| | | |
| | | if not needReload:
|
| | | return False, OperationActionInfo
|
| | |
|
| | | # 因为后面的时间判断都是精确到分的,而处理此逻辑的时候可能不是0秒,所以这里的datetime取当前时间精确到分的
|
| | |
| | | dailyIpyData = ipyDataMgr.GetDailyActionByIndex(i)
|
| | | dailyID = dailyIpyData.GetDailyID()
|
| | |
|
| | | if dailyID in [ShareDefine.DailyActionID_CrossBattlefield]:
|
| | | GameWorld.Log(" 不需要处理的日常活动! dailyID=%s" % dailyID)
|
| | | continue
|
| | | |
| | | # 是当天开服天定制活动的不处理常规活动
|
| | | if dailyID in customDailyIDList:
|
| | | GameWorld.Log(" 常规活动ID配置是今天的定制活动ID,不处理!: dailyID=%s" % dailyID)
|