ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -122,6 +122,11 @@
                        ("dict", "NotifyInfoDict", 0),
                        ),
                "FBFunc":(
                        ("DWORD", "DataMapID", 1),
                        ("WORD", "HelpPoint", 0),
                        ),
                "FBLine":(
                        ("DWORD", "DataMapID", 1),
                        ("BYTE", "LineID", 1),
@@ -186,6 +191,26 @@
                "PlayerLV":(
                        ("WORD", "LV", 1),
                        ("DWORD", "ReFightPower", 0),
                        ),
                "VipPrivilege":(
                        ("DWORD", "VIPPriID", 1),
                        ("DWORD", "VIP0", 0),
                        ("DWORD", "VIP1", 0),
                        ("DWORD", "VIP2", 0),
                        ("DWORD", "VIP3", 0),
                        ("DWORD", "VIP4", 0),
                        ("DWORD", "VIP5", 0),
                        ("DWORD", "VIP6", 0),
                        ("DWORD", "VIP7", 0),
                        ("DWORD", "VIP8", 0),
                        ("DWORD", "VIP9", 0),
                        ("DWORD", "VIP10", 0),
                        ("DWORD", "VIP11", 0),
                        ("DWORD", "VIP12", 0),
                        ("DWORD", "VIP13", 0),
                        ("DWORD", "VIP14", 0),
                        ("DWORD", "VIP15", 0),
                        ),
                "ActSpringSale":(
@@ -350,6 +375,26 @@
                        ("dict", "NotifyInfoEnd", 0),
                        ("list", "NotifyInfoLoop", 0),
                        ("BYTE", "IsDayReset", 0),
                        ),
                "CrossRealmPKZone":(
                        ("BYTE", "ZoneID", 1),
                        ("char", "ZoneName", 0),
                        ("list", "ServerGroupIDList", 0),
                        ),
                "CrossRealmPKSeason":(
                        ("BYTE", "ZoneID", 1),
                        ("BYTE", "SeasonID", 0),
                        ("char", "StartDate", 0),
                        ("char", "EndDate", 0),
                        ("char", "EndTime", 0),
                        ),
                "CrossRealmPKDan":(
                        ("BYTE", "DanLV", 1),
                        ("WORD", "LVUpScore", 0),
                        ("list", "MatchRange", 0),
                        ),
                }
@@ -543,6 +588,17 @@
    def GetStateValue(self): return self.StateValue # ״ֵ̬
    def GetNotifyInfoDict(self): return self.NotifyInfoDict # 广播提示信息
# 副本总表
class IPY_FBFunc():
    def __init__(self):
        self.DataMapID = 0
        self.HelpPoint = 0
        return
    def GetDataMapID(self): return self.DataMapID # 数据地图ID
    def GetHelpPoint(self): return self.HelpPoint # 助战仙缘币(0代表不可助战)
# 副本功能线路表
class IPY_FBLine():
    
@@ -683,6 +739,47 @@
        
    def GetLV(self): return self.LV # 玩家等级
    def GetReFightPower(self): return self.ReFightPower # 战斗力
# VIP特权表
class IPY_VipPrivilege():
    def __init__(self):
        self.VIPPriID = 0
        self.VIP0 = 0
        self.VIP1 = 0
        self.VIP2 = 0
        self.VIP3 = 0
        self.VIP4 = 0
        self.VIP5 = 0
        self.VIP6 = 0
        self.VIP7 = 0
        self.VIP8 = 0
        self.VIP9 = 0
        self.VIP10 = 0
        self.VIP11 = 0
        self.VIP12 = 0
        self.VIP13 = 0
        self.VIP14 = 0
        self.VIP15 = 0
        return
    def GetVIPPriID(self): return self.VIPPriID # 特权ID
    def GetVIP0(self): return self.VIP0 # VIP0对应的特权值
    def GetVIP1(self): return self.VIP1 # VIP1对应的特权值
    def GetVIP2(self): return self.VIP2 # VIP2对应的特权值
    def GetVIP3(self): return self.VIP3 # VIP3对应的特权值
    def GetVIP4(self): return self.VIP4 # VIP4对应的特权值
    def GetVIP5(self): return self.VIP5 # VIP5对应的特权值
    def GetVIP6(self): return self.VIP6 # VIP6对应的特权值
    def GetVIP7(self): return self.VIP7 # VIP7对应的特权值
    def GetVIP8(self): return self.VIP8 # VIP8对应的特权值
    def GetVIP9(self): return self.VIP9 # VIP9对应的特权值
    def GetVIP10(self): return self.VIP10 # VIP10对应的特权值
    def GetVIP11(self): return self.VIP11 # VIP11对应的特权值
    def GetVIP12(self): return self.VIP12 # VIP12对应的特权值
    def GetVIP13(self): return self.VIP13 # VIP13对应的特权值
    def GetVIP14(self): return self.VIP14 # VIP14对应的特权值
    def GetVIP15(self): return self.VIP15 # VIP15对应的特权值
# 限时特惠表
class IPY_ActSpringSale():
@@ -1023,6 +1120,49 @@
    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
# 跨服竞技场赛区表
class IPY_CrossRealmPKZone():
    def __init__(self):
        self.ZoneID = 0
        self.ZoneName = ""
        self.ServerGroupIDList = []
        return
    def GetZoneID(self): return self.ZoneID # 赛区ID
    def GetZoneName(self): return self.ZoneName # 赛区名字
    def GetServerGroupIDList(self): return self.ServerGroupIDList # 赛区服务器组ID列表
# 跨服竞技场赛季表
class IPY_CrossRealmPKSeason():
    def __init__(self):
        self.ZoneID = 0
        self.SeasonID = 0
        self.StartDate = ""
        self.EndDate = ""
        self.EndTime = ""
        return
    def GetZoneID(self): return self.ZoneID # 赛区ID
    def GetSeasonID(self): return self.SeasonID # 赛季ID
    def GetStartDate(self): return self.StartDate # 开始日期   yyyy-MM-dd
    def GetEndDate(self): return self.EndDate # 结束日期   yyyy-MM-dd
    def GetEndTime(self): return self.EndTime # 结算时间   hh:mm
# 跨服竞技场段位表
class IPY_CrossRealmPKDan():
    def __init__(self):
        self.DanLV = 0
        self.LVUpScore = 0
        self.MatchRange = []
        return
    def GetDanLV(self): return self.DanLV # 段位等级
    def GetLVUpScore(self): return self.LVUpScore # 升段位所需积分
    def GetMatchRange(self): return self.MatchRange # 可匹配到的玩家段位区间 [从段位A, 到段位B],配[]代表只匹配本段位的
def Log(msg, playerID=0, par=0):
@@ -1066,6 +1206,8 @@
        self.ipyFBStateTimeLen = len(self.ipyFBStateTimeCache)
        self.ipyFBStateTimeCustomCache = self.__LoadFileData("FBStateTimeCustom", IPY_FBStateTimeCustom)
        self.ipyFBStateTimeCustomLen = len(self.ipyFBStateTimeCustomCache)
        self.ipyFBFuncCache = self.__LoadFileData("FBFunc", IPY_FBFunc)
        self.ipyFBFuncLen = len(self.ipyFBFuncCache)
        self.ipyFBLineCache = self.__LoadFileData("FBLine", IPY_FBLine)
        self.ipyFBLineLen = len(self.ipyFBLineCache)
        self.ipyFBHelpBattleCache = self.__LoadFileData("FBHelpBattle", IPY_FBHelpBattle)
@@ -1084,6 +1226,8 @@
        self.ipyChinNPCLen = len(self.ipyChinNPCCache)
        self.ipyPlayerLVCache = self.__LoadFileData("PlayerLV", IPY_PlayerLV)
        self.ipyPlayerLVLen = len(self.ipyPlayerLVCache)
        self.ipyVipPrivilegeCache = self.__LoadFileData("VipPrivilege", IPY_VipPrivilege)
        self.ipyVipPrivilegeLen = len(self.ipyVipPrivilegeCache)
        self.ipyActSpringSaleCache = self.__LoadFileData("ActSpringSale", IPY_ActSpringSale)
        self.ipyActSpringSaleLen = len(self.ipyActSpringSaleCache)
        self.ipyActFlashGiftbagCache = self.__LoadFileData("ActFlashGiftbag", IPY_ActFlashGiftbag)
@@ -1108,6 +1252,12 @@
        self.ipyActWishingWellLen = len(self.ipyActWishingWellCache)
        self.ipyActTotalRechargeCache = self.__LoadFileData("ActTotalRecharge", IPY_ActTotalRecharge)
        self.ipyActTotalRechargeLen = len(self.ipyActTotalRechargeCache)
        self.ipyCrossRealmPKZoneCache = self.__LoadFileData("CrossRealmPKZone", IPY_CrossRealmPKZone)
        self.ipyCrossRealmPKZoneLen = len(self.ipyCrossRealmPKZoneCache)
        self.ipyCrossRealmPKSeasonCache = self.__LoadFileData("CrossRealmPKSeason", IPY_CrossRealmPKSeason)
        self.ipyCrossRealmPKSeasonLen = len(self.ipyCrossRealmPKSeasonCache)
        self.ipyCrossRealmPKDanCache = self.__LoadFileData("CrossRealmPKDan", IPY_CrossRealmPKDan)
        self.ipyCrossRealmPKDanLen = len(self.ipyCrossRealmPKDanCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
        Log("IPY_DataMgr InitOK!")
        return
@@ -1292,6 +1442,8 @@
    def GetFBStateTimeByIndex(self, index): return self.ipyFBStateTimeCache[index]
    def GetFBStateTimeCustomCount(self): return self.ipyFBStateTimeCustomLen
    def GetFBStateTimeCustomByIndex(self, index): return self.ipyFBStateTimeCustomCache[index]
    def GetFBFuncCount(self): return self.ipyFBFuncLen
    def GetFBFuncByIndex(self, index): return self.ipyFBFuncCache[index]
    def GetFBLineCount(self): return self.ipyFBLineLen
    def GetFBLineByIndex(self, index): return self.ipyFBLineCache[index]
    def GetFBHelpBattleCount(self): return self.ipyFBHelpBattleLen
@@ -1310,6 +1462,8 @@
    def GetChinNPCByIndex(self, index): return self.ipyChinNPCCache[index]
    def GetPlayerLVCount(self): return self.ipyPlayerLVLen
    def GetPlayerLVByIndex(self, index): return self.ipyPlayerLVCache[index]
    def GetVipPrivilegeCount(self): return self.ipyVipPrivilegeLen
    def GetVipPrivilegeByIndex(self, index): return self.ipyVipPrivilegeCache[index]
    def GetActSpringSaleCount(self): return self.ipyActSpringSaleLen
    def GetActSpringSaleByIndex(self, index): return self.ipyActSpringSaleCache[index]
    def GetActFlashGiftbagCount(self): return self.ipyActFlashGiftbagLen
@@ -1334,6 +1488,12 @@
    def GetActWishingWellByIndex(self, index): return self.ipyActWishingWellCache[index]
    def GetActTotalRechargeCount(self): return self.ipyActTotalRechargeLen
    def GetActTotalRechargeByIndex(self, index): return self.ipyActTotalRechargeCache[index]
    def GetCrossRealmPKZoneCount(self): return self.ipyCrossRealmPKZoneLen
    def GetCrossRealmPKZoneByIndex(self, index): return self.ipyCrossRealmPKZoneCache[index]
    def GetCrossRealmPKSeasonCount(self): return self.ipyCrossRealmPKSeasonLen
    def GetCrossRealmPKSeasonByIndex(self, index): return self.ipyCrossRealmPKSeasonCache[index]
    def GetCrossRealmPKDanCount(self): return self.ipyCrossRealmPKDanLen
    def GetCrossRealmPKDanByIndex(self, index): return self.ipyCrossRealmPKDanCache[index]
IPYData = IPY_DataMgr()
def IPY_Data(): return IPYData