From 28cf96828011304cd74254017a1af7a0cc8df0be Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 10 九月 2018 10:23:35 +0800 Subject: [PATCH] 3245 【后端】开服限时活动定制; 增加设置开服是星期几的GM命令: SetOpenServerWeekday --- ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py | 100 ++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 85 insertions(+), 15 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py index 7bd60ad..75e262c 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py @@ -80,8 +80,17 @@ "DailyAction":( ("DWORD", "DailyID", 1), - ("BYTE", "OpenServerDay", 0), - ("char", "OpenTime", 0), + ("dict", "OpenTimeDict", 0), + ("DWORD", "Duration", 0), + ("dict", "NotifyInfo", 0), + ), + + "DailyActionCustom":( + ("DWORD", "ID", 0), + ("BYTE", "OpenServerWeek", 1), + ("DWORD", "OpenServerDay", 1), + ("BYTE", "DailyID", 0), + ("list", "OpenTimeList", 0), ("DWORD", "Duration", 0), ("dict", "NotifyInfo", 0), ), @@ -89,12 +98,23 @@ "FBStateTime":( ("DWORD", "ID", 1), ("DWORD", "DataMapID", 0), - ("BYTE", "OpenServerWeek", 0), - ("BYTE", "OpenServerDay", 0), ("BYTE", "StartWeekday", 0), ("BYTE", "StartHour", 0), ("BYTE", "StartMinute", 0), - ("BYTE", "EndWeekday", 0), + ("BYTE", "EndHour", 0), + ("BYTE", "EndMinute", 0), + ("BYTE", "CanEnter", 0), + ("BYTE", "StateValue", 0), + ("dict", "NotifyInfoDict", 0), + ), + + "FBStateTimeCustom":( + ("DWORD", "ID", 0), + ("BYTE", "OpenServerWeek", 1), + ("DWORD", "OpenServerDay", 1), + ("DWORD", "DataMapID", 0), + ("BYTE", "StartHour", 0), + ("BYTE", "StartMinute", 0), ("BYTE", "EndHour", 0), ("BYTE", "EndMinute", 0), ("BYTE", "CanEnter", 0), @@ -363,15 +383,34 @@ def __init__(self): self.DailyID = 0 - self.OpenServerDay = 0 - self.OpenTime = "" + self.OpenTimeDict = {} self.Duration = 0 self.NotifyInfo = {} return def GetDailyID(self): return self.DailyID # 活动ID - def GetOpenServerDay(self): return self.OpenServerDay # 开服第几天开始开启,0为不限制 - def GetOpenTime(self): return self.OpenTime # 开启时间 + def GetOpenTimeDict(self): return self.OpenTimeDict # 开启时间 + def GetDuration(self): return self.Duration # 持续时间, 0为不限制 + def GetNotifyInfo(self): return self.NotifyInfo # 广播提示信息 + +# 日常活动表定制表 +class IPY_DailyActionCustom(): + + def __init__(self): + self.ID = 0 + self.OpenServerWeek = 0 + self.OpenServerDay = 0 + self.DailyID = 0 + self.OpenTimeList = [] + self.Duration = 0 + self.NotifyInfo = {} + return + + def GetID(self): return self.ID # ID + def GetOpenServerWeek(self): return self.OpenServerWeek # 开服是周几 + def GetOpenServerDay(self): return self.OpenServerDay # 开服第几天 + def GetDailyID(self): return self.DailyID # 日常活动ID + def GetOpenTimeList(self): return self.OpenTimeList # 开启时间列表 def GetDuration(self): return self.Duration # 持续时间, 0为不限制 def GetNotifyInfo(self): return self.NotifyInfo # 广播提示信息 @@ -381,12 +420,9 @@ def __init__(self): self.ID = 0 self.DataMapID = 0 - self.OpenServerWeek = 0 - self.OpenServerDay = 0 self.StartWeekday = 0 self.StartHour = 0 self.StartMinute = 0 - self.EndWeekday = 0 self.EndHour = 0 self.EndMinute = 0 self.CanEnter = 0 @@ -396,12 +432,38 @@ def GetID(self): return self.ID # ID def GetDataMapID(self): return self.DataMapID # 所属的玩法数据地图ID - def GetOpenServerWeek(self): return self.OpenServerWeek # 开服X周后开放 - def GetOpenServerDay(self): return self.OpenServerDay # 开服X天后开放 def GetStartWeekday(self): return self.StartWeekday # 开始星期 def GetStartHour(self): return self.StartHour # 开始时 def GetStartMinute(self): return self.StartMinute # 开始分 - def GetEndWeekday(self): return self.EndWeekday # 结束星期 + def GetEndHour(self): return self.EndHour # 结束时 + def GetEndMinute(self): return self.EndMinute # 结束分 + def GetCanEnter(self): return self.CanEnter # 是否可进入副本 + def GetStateValue(self): return self.StateValue # 状态值 + def GetNotifyInfoDict(self): return self.NotifyInfoDict # 广播提示信息 + +# 副本状态时间定制表 +class IPY_FBStateTimeCustom(): + + def __init__(self): + self.ID = 0 + self.OpenServerWeek = 0 + self.OpenServerDay = 0 + self.DataMapID = 0 + self.StartHour = 0 + self.StartMinute = 0 + self.EndHour = 0 + self.EndMinute = 0 + self.CanEnter = 0 + self.StateValue = 0 + self.NotifyInfoDict = {} + return + + def GetID(self): return self.ID # ID + def GetOpenServerWeek(self): return self.OpenServerWeek # 开服是周几 + def GetOpenServerDay(self): return self.OpenServerDay # 开服第几天 + def GetDataMapID(self): return self.DataMapID # 所属的玩法数据地图ID + def GetStartHour(self): return self.StartHour # 开始时 + def GetStartMinute(self): return self.StartMinute # 开始分 def GetEndHour(self): return self.EndHour # 结束时 def GetEndMinute(self): return self.EndMinute # 结束分 def GetCanEnter(self): return self.CanEnter # 是否可进入副本 @@ -774,8 +836,12 @@ self.ipyActionControlLen = len(self.ipyActionControlCache) self.ipyDailyActionCache = self.__LoadFileData("DailyAction", IPY_DailyAction) self.ipyDailyActionLen = len(self.ipyDailyActionCache) + self.ipyDailyActionCustomCache = self.__LoadFileData("DailyActionCustom", IPY_DailyActionCustom) + self.ipyDailyActionCustomLen = len(self.ipyDailyActionCustomCache) self.ipyFBStateTimeCache = self.__LoadFileData("FBStateTime", IPY_FBStateTime) self.ipyFBStateTimeLen = len(self.ipyFBStateTimeCache) + self.ipyFBStateTimeCustomCache = self.__LoadFileData("FBStateTimeCustom", IPY_FBStateTimeCustom) + self.ipyFBStateTimeCustomLen = len(self.ipyFBStateTimeCustomCache) self.ipyFBLineCache = self.__LoadFileData("FBLine", IPY_FBLine) self.ipyFBLineLen = len(self.ipyFBLineCache) self.ipyChinMapCache = self.__LoadFileData("ChinMap", IPY_ChinMap) @@ -986,8 +1052,12 @@ def GetActionControlByIndex(self, index): return self.ipyActionControlCache[index] def GetDailyActionCount(self): return self.ipyDailyActionLen def GetDailyActionByIndex(self, index): return self.ipyDailyActionCache[index] + def GetDailyActionCustomCount(self): return self.ipyDailyActionCustomLen + def GetDailyActionCustomByIndex(self, index): return self.ipyDailyActionCustomCache[index] def GetFBStateTimeCount(self): return self.ipyFBStateTimeLen def GetFBStateTimeByIndex(self, index): return self.ipyFBStateTimeCache[index] + def GetFBStateTimeCustomCount(self): return self.ipyFBStateTimeCustomLen + def GetFBStateTimeCustomByIndex(self, index): return self.ipyFBStateTimeCustomCache[index] def GetFBLineCount(self): return self.ipyFBLineLen def GetFBLineByIndex(self, index): return self.ipyFBLineCache[index] def GetChinMapCount(self): return self.ipyChinMapLen -- Gitblit v1.8.0