| | |
| | | Dispose_ActionGoOnByDayKey()
|
| | | return
|
| | |
|
| | |
|
| | | ## 设定上次开启活动时间距离现在天数事件
|
| | | # @param None: |
| | | # @return: None
|
| | | def DoLogic_ServerLastOpenActionDay():
|
| | | |
| | | #是跨服服务器
|
| | | if GameWorld.IsCrossServer():
|
| | | if not PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_MergeServerOpenActionDay):
|
| | | return
|
| | | |
| | | PlayerDBGSEvent.SetDBGSTrig_ServerTime(PlayerDBGSEvent.Def_MergeServerOpenActionDay)
|
| | | |
| | | #通知子服务器天数
|
| | | SendBroadcastMergeOpenActionDay()
|
| | | return
|
| | | |
| | | DoLogic_ActionByDayKeyOnDay()
|
| | | |
| | | #上次开启活动时间距离现在天数
|
| | | lastOpenActionDay = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ServerLastOpenActionDay)
|
| | | openServerDay = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ServerDay)
|
| | | initDayList = ReadChConfig.GetEvalChConfig('ActionControlByDayInitOpenServerDay')
|
| | | if openServerDay < initDayList[0]:
|
| | | #开服时间未超过30天
|
| | | return
|
| | | |
| | | #新一轮活动从头开始
|
| | | if lastOpenActionDay >= initDayList[1] or openServerDay == initDayList[2]:
|
| | | NewRingOpenActionDay()
|
| | | return
|
| | |
|
| | | PlayerDBGSEvent.SetDBGSTrig_ServerTime(PlayerDBGSEvent.Def_ServerLastOpenActionDay)
|
| | | return
|
| | | |
| | |
|
| | | ## 新一轮活动开始
|
| | | # @param None: |
| | | # @return: |
| | | def NewRingOpenActionDay():
|
| | | |
| | | #设置字典值从1开始, 跟SetDBGSTrig_ServerTime接口同步
|
| | | PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ServerLastOpenActionDay, 1)
|
| | | |
| | | # 活动天数重设
|
| | | OpenActionDay_Reset() |
| | | return
|
| | | |
| | | #------------------------------------------------------------------------------
|
| | | ## 活动天数重设
|
| | | # @param None
|
| | | # @return None
|
| | | def OpenActionDay_Reset(): |
| | | # 设置国王战开始
|
| | | #PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_MergeWarStart, 1)
|
| | | return
|
| | |
|
| | | ### 检查key是否处理
|
| | | #def __CheckIsProcessDictName(dictName):
|
| | | # |
| | | # # 非跨服服务器不处理某些key
|
| | | # if dictName in [ShareDefine.Def_Notify_WorldKey_Merge_King] and not GameWorld.IsCrossServer():
|
| | | # return False
|
| | | # |
| | | # return True
|
| | |
|
| | | ## 当前时间与指定时间比较
|
| | | # @param curTime 当前服务器时间
|
| | | # @param timeInfo 指定时间 [[3,4(星期几)], 年,月,日,时,分]
|
| | |
| | | #跨服PK
|
| | | elif dictName == ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_CrossReamPK:
|
| | | CrossRealmPK.OnCrossRealmPKDailyActionStateChange(isOpen)
|
| | | return
|
| | |
|
| | | #------------------------------------------------------------------------------ |
| | | ## 通知子服务器天数
|
| | | # @param param: None
|
| | | # @return: None
|
| | | def SendBroadcastMergeOpenActionDay():
|
| | | mergeServerOpenActionDay = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_MergeServerOpenActionDay)
|
| | | #.SendBroadcastMerge(ChConfig.Def_MergeServerOpenActionDay, 0, {"Day":mergeServerOpenActionDay})
|
| | | return
|
| | |
|
| | | #-------------------------------------------------------------------------------
|