| | |
| | | import datetime
|
| | | import PlayerFamily
|
| | | import PlayerDBGSEvent
|
| | | import GameWorldActionControl
|
| | | import PlayerViewCache
|
| | | import PlayerFBHelpBattle
|
| | | import PlayerFairyDomain
|
| | | import ChPyNetSendPack
|
| | | import GameWorldArena
|
| | | import NetPackCommon
|
| | | import PlayerManorWar
|
| | | import PlayerDuJie
|
| | | import PlayerCharm
|
| | | import CrossBattlefield
|
| | | import CrossFamilyFlagwar
|
| | | import CrossChampionship
|
| | | import CrossYaomoBoss
|
| | | import GameWorldMineArea
|
| | | #---------------------------------------------------------------------
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | |
| | | def DoLogic_GameServer_OnHour(tick):
|
| | | #处理这个小时发出的邮件
|
| | | #GameWorld.GetMailManager().ProcessAllMail()
|
| | | PlayerFairyDomain.OnHour()
|
| | | return
|
| | |
|
| | | ## 处理玩家每日响应
|
| | |
| | | if isMixServer:
|
| | | PlayerDBGSEvent.SetDBGSTrig_ServerTime(PlayerDBGSEvent.Def_MixServerDay)
|
| | |
|
| | | #设定上次开启活动时间距离现在天数事件
|
| | | GameWorldActionControl.DoLogic_ServerLastOpenActionDay()
|
| | | |
| | | #领地争夺战OnDay
|
| | | #PlayerManorWar.OnDay()
|
| | | |
| | | #魅力
|
| | | PlayerCharm.DoOnDay()
|
| | | #家族更新
|
| | | PlayerFamily.FamilyOnDay(tick)
|
| | | #跨服排位
|
| | | CrossChampionship.DoOnDay()
|
| | | #跨服妖魔boss
|
| | | CrossYaomoBoss.DoOnDay()
|
| | |
|
| | | #合服活动
|
| | | #GameWorldMixServerCampaign.MixServerOnDay()
|
| | | playerManager = GameWorld.GetPlayerManager()
|
| | | for i in xrange(playerManager.GetPlayerCount()):
|
| | | curPlayer = playerManager.GetPlayerByIndex(i)
|
| | |
| | | return
|
| | |
|
| | | def DoLogic_GameServer_OnDayEx(tick):
|
| | | #仙盟
|
| | | PlayerFamily.FamilyOnDayEx(tick)
|
| | | #渡劫OnDay
|
| | | PlayerDuJie.OnDayEx()
|
| | | |
| | | #副本助战
|
| | | PlayerFBHelpBattle.HelpBattleOnDay()
|
| | | #玩家缓存
|
| | | PlayerViewCache.DoOnDayEx()
|
| | | #缥缈OnDay
|
| | | PlayerFairyDomain.OnDayEx()
|
| | | #竞技场
|
| | | GameWorldArena.OnDayEx()
|
| | | #跨服战场
|
| | | CrossBattlefield.DoOnDayEx()
|
| | | #跨服排位
|
| | | CrossChampionship.DoOnDayEx()
|
| | | #福地
|
| | | GameWorldMineArea.DoOnDayEx()
|
| | | playerManager = GameWorld.GetPlayerManager()
|
| | | for i in xrange(playerManager.GetPlayerCount()):
|
| | | curPlayer = playerManager.GetPlayerByIndex(i)
|
| | |
| | | #设定服务器当前周事件
|
| | | PlayerDBGSEvent.SetDBGSTrig_ServerTime(PlayerDBGSEvent.Def_ServerWeek)
|
| | |
|
| | | #魅力
|
| | | PlayerCharm.DoOnWeek()
|
| | | #家族更新
|
| | | PlayerFamily.FamilyOnWeek(tick)
|
| | |
|
| | |
| | | return
|
| | |
|
| | | def DoLogic_GameServer_OnWeekEx(tick):
|
| | | |
| | | # 竞技场
|
| | | GameWorldArena.OnWeekEx()
|
| | | # 跨服战场
|
| | | CrossBattlefield.DoOnWeekEx()
|
| | | # 逐鹿万界
|
| | | CrossFamilyFlagwar.DoOnWeekEx()
|
| | |
|
| | | playerManager = GameWorld.GetPlayerManager()
|
| | | for i in xrange(playerManager.GetPlayerCount()):
|
| | |
| | | # @remarks 函数详细说明.
|
| | | def PlayerOnDay(curPlayer):
|
| | |
|
| | | if GameWorld.IsCrossServer():
|
| | | return
|
| | | |
| | | #通知开服天数
|
| | | Sync_OpenServerDay(curPlayer)
|
| | | |
| | | #通知上次根据开服天数开启的活动到现在的天数
|
| | | #Sync_ServerLastOpenActionDay(curPlayer)
|
| | | |
| | | #通知跨服服务器开启的活动到现在的天数
|
| | | #Sync_MergeServerOpenActionDay(curPlayer)
|
| | |
|
| | | GameWorld.Log("PlayerOnDay!", curPlayer.GetPlayerID())
|
| | | return
|
| | |
| | | packData.Day = openDay
|
| | | packData.IsMixServer = isMixServer
|
| | | packData.MixDay = mixServerDay
|
| | | packData.OpenWeekday = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_InitOpenServerTime)
|
| | | packData.OpenWeekday = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_OpenServerWeekday)
|
| | | packData.NowYear = serverTime.year
|
| | | packData.NowMonth = serverTime.month
|
| | | packData.NowDay = serverTime.day
|
| | |
| | | packData.NowMinute = serverTime.minute
|
| | | packData.NowSecond = serverTime.second
|
| | | packData.NowMicSecond = serverTime.microsecond
|
| | | packData.WeekOfYear = GameWorld.GetWeekOfYear()
|
| | | NetPackCommon.SendFakePack(curPlayer, packData)
|
| | | return
|
| | |
|
| | |
|
| | | ## 通知上次根据开服天数开启的活动到现在的天数
|
| | | # @param curPlayer: 玩家实例
|
| | | # @return: None
|
| | | def Sync_ServerLastOpenActionDay(curPlayer):
|
| | | # lastOpenActionDay = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ServerLastOpenActionDay)
|
| | | # packData = ChPyNetSendPack.tagServerLastOpenActionDay()
|
| | | # packData.Clear()
|
| | | # packData.Day = lastOpenActionDay
|
| | | # NetPackCommon.SendFakePack(curPlayer, packData)
|
| | | return
|
| | |
|
| | |
|