hxp
2019-12-10 ed70a10c9930216ebc72713e37e21cb1d33349e2
8346 【恺英】【后端】协助系统(增加协助感谢礼盒表)
5个文件已修改
72 ■■■■■ 已修改文件
PySysDB/PySysDBG.h 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
PySysDB/PySysDBPY.h 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
PySysDB/PySysDBG.h
@@ -690,6 +690,14 @@
    list        RankAuctionItem;    //拍品奖励[[拍品ID,个数], ...]
};
//协助感谢礼盒表
struct tagAssistThanksGift
{
    DWORD        _GiftID;    //礼盒物品ID
    BYTE        AssistAwardCount;    // 协助奖励每日次数
};
//缥缈仙域表
struct tagFairyDomain
PySysDB/PySysDBPY.h
@@ -1980,6 +1980,14 @@
    BYTE        SkinIndex;    //外观
};
//协助感谢礼盒表
struct tagAssistThanksGift
{
    DWORD        _GiftID;    //礼盒物品ID
    list        RequestPlayerAward;    // 发布奖励物品 物品ID|个数
    list        AssistPlayerAward;    // 协助奖励物品 物品ID|个数
};
//累计充值奖励表
ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -569,6 +569,11 @@
                        ("list", "RankAuctionItem", 0),
                        ),
                "AssistThanksGift":(
                        ("DWORD", "GiftID", 1),
                        ("BYTE", "AssistAwardCount", 0),
                        ),
                "FairyDomain":(
                        ("WORD", "ID", 1),
                        ("DWORD", "HourCntPubLimit", 0),
@@ -1702,6 +1707,17 @@
    def GetWarRank(self): return self.WarRank # 联赛排名
    def GetRankAuctionItem(self): return self.RankAuctionItem # 拍品奖励[[拍品ID,个数], ...]
# 协助感谢礼盒表
class IPY_AssistThanksGift():
    def __init__(self):
        self.GiftID = 0
        self.AssistAwardCount = 0
        return
    def GetGiftID(self): return self.GiftID # 礼盒物品ID
    def GetAssistAwardCount(self): return self.AssistAwardCount #  协助奖励每日次数
# 缥缈仙域表
class IPY_FairyDomain():
    
@@ -1841,6 +1857,8 @@
        self.ipyEquipStarUpLen = len(self.ipyEquipStarUpCache)
        self.ipyFamilyWarRankAwardCache = self.__LoadFileData("FamilyWarRankAward", IPY_FamilyWarRankAward)
        self.ipyFamilyWarRankAwardLen = len(self.ipyFamilyWarRankAwardCache)
        self.ipyAssistThanksGiftCache = self.__LoadFileData("AssistThanksGift", IPY_AssistThanksGift)
        self.ipyAssistThanksGiftLen = len(self.ipyAssistThanksGiftCache)
        self.ipyFairyDomainCache = self.__LoadFileData("FairyDomain", IPY_FairyDomain)
        self.ipyFairyDomainLen = len(self.ipyFairyDomainCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
@@ -2111,6 +2129,8 @@
    def GetEquipStarUpByIndex(self, index): return self.ipyEquipStarUpCache[index]
    def GetFamilyWarRankAwardCount(self): return self.ipyFamilyWarRankAwardLen
    def GetFamilyWarRankAwardByIndex(self, index): return self.ipyFamilyWarRankAwardCache[index]
    def GetAssistThanksGiftCount(self): return self.ipyAssistThanksGiftLen
    def GetAssistThanksGiftByIndex(self, index): return self.ipyAssistThanksGiftCache[index]
    def GetFairyDomainCount(self): return self.ipyFairyDomainLen
    def GetFairyDomainByIndex(self, index): return self.ipyFairyDomainCache[index]
ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
@@ -32,6 +32,7 @@
        ('NPCID', ctypes.c_ulong),
        ('ExDataLen', ctypes.c_ushort),
        ('ExData', ctypes.c_char_p),
        ('DailyDateStr', ctypes.c_char * 10),
        ('TimeStr', ctypes.c_char * 19),
        ('ThanksState', ctypes.c_ubyte),
        ('AssistPlayerLen', ctypes.c_ushort),
@@ -57,6 +58,7 @@
        self.NPCID = 0
        self.ExDataLen = 0
        self.ExData = ''
        self.DailyDateStr = ''
        self.TimeStr = ''
        self.ThanksState = 0
        self.AssistPlayerLen = 0
@@ -82,6 +84,7 @@
        self.ExDataLen, pos = CommFunc.ReadWORD(buf, pos)
        tmp, pos = CommFunc.ReadString(buf, pos, self.ExDataLen)
        self.ExData = ctypes.c_char_p(tmp)
        self.DailyDateStr, pos = CommFunc.ReadString(buf, pos, 10)
        self.TimeStr, pos = CommFunc.ReadString(buf, pos, 19)
        self.ThanksState, pos = CommFunc.ReadBYTE(buf, pos)
        self.AssistPlayerLen, pos = CommFunc.ReadWORD(buf, pos)
@@ -104,6 +107,7 @@
        buf = CommFunc.WriteDWORD(buf, self.NPCID)
        buf = CommFunc.WriteWORD(buf, self.ExDataLen)
        buf = CommFunc.WriteString(buf, self.ExDataLen, self.ExData)
        buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 10, self.DailyDateStr)
        buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 19, self.TimeStr)
        buf = CommFunc.WriteBYTE(buf, self.ThanksState)
        buf = CommFunc.WriteWORD(buf, self.AssistPlayerLen)
@@ -125,6 +129,7 @@
        length += sizeof(ctypes.c_ulong)
        length += sizeof(ctypes.c_ushort)
        length += self.ExDataLen
        length += sizeof(ctypes.c_char) * 10
        length += sizeof(ctypes.c_char) * 19
        length += sizeof(ctypes.c_ubyte)
        length += sizeof(ctypes.c_ushort)
@@ -146,6 +151,7 @@
            NPCID = %s,
            ExDataLen = %s,
            ExData = %s,
            DailyDateStr = %s,
            TimeStr = %s,
            ThanksState = %s,
            AssistPlayerLen = %s,
@@ -165,6 +171,7 @@
                self.NPCID,
                self.ExDataLen,
                self.ExData,
                self.DailyDateStr,
                self.TimeStr,
                self.ThanksState,
                self.AssistPlayerLen,
@@ -186,6 +193,12 @@
        else:
            self.PlayerName = Str[:33]
            
    def SetDailyDateStr(self,Str):
        if len(Str)<=10:
            self.DailyDateStr = Str
        else:
            self.DailyDateStr = Str[:10]
    def SetTimeStr(self,Str):
        if len(Str)<=19:
            self.TimeStr = Str
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1539,6 +1539,12 @@
                        ("BYTE", "SkinIndex", 0),
                        ),
                "AssistThanksGift":(
                        ("DWORD", "GiftID", 1),
                        ("list", "RequestPlayerAward", 0),
                        ("list", "AssistPlayerAward", 0),
                        ),
                "HistoryRechargeAward":(
                        ("BYTE", "ID", 1),
                        ("DWORD", "Recharge", 0),
@@ -4713,6 +4719,19 @@
    def GetAttrInfo(self): return self.AttrInfo # 属性
    def GetSkinIndex(self): return self.SkinIndex # 外观
# 协助感谢礼盒表
class IPY_AssistThanksGift():
    def __init__(self):
        self.GiftID = 0
        self.RequestPlayerAward = []
        self.AssistPlayerAward = []
        return
    def GetGiftID(self): return self.GiftID # 礼盒物品ID
    def GetRequestPlayerAward(self): return self.RequestPlayerAward #  发布奖励物品 物品ID|个数
    def GetAssistPlayerAward(self): return self.AssistPlayerAward #  协助奖励物品 物品ID|个数
# 累计充值奖励表
class IPY_HistoryRechargeAward():
    
@@ -5054,6 +5073,8 @@
        self.ipyLingGenEffectLen = len(self.ipyLingGenEffectCache)
        self.ipyHorsePetSkinCache = self.__LoadFileData("HorsePetSkin", IPY_HorsePetSkin)
        self.ipyHorsePetSkinLen = len(self.ipyHorsePetSkinCache)
        self.ipyAssistThanksGiftCache = self.__LoadFileData("AssistThanksGift", IPY_AssistThanksGift)
        self.ipyAssistThanksGiftLen = len(self.ipyAssistThanksGiftCache)
        self.ipyHistoryRechargeAwardCache = self.__LoadFileData("HistoryRechargeAward", IPY_HistoryRechargeAward)
        self.ipyHistoryRechargeAwardLen = len(self.ipyHistoryRechargeAwardCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
@@ -5526,6 +5547,8 @@
    def GetLingGenEffectByIndex(self, index): return self.ipyLingGenEffectCache[index]
    def GetHorsePetSkinCount(self): return self.ipyHorsePetSkinLen
    def GetHorsePetSkinByIndex(self, index): return self.ipyHorsePetSkinCache[index]
    def GetAssistThanksGiftCount(self): return self.ipyAssistThanksGiftLen
    def GetAssistThanksGiftByIndex(self, index): return self.ipyAssistThanksGiftCache[index]
    def GetHistoryRechargeAwardCount(self): return self.ipyHistoryRechargeAwardLen
    def GetHistoryRechargeAwardByIndex(self, index): return self.ipyHistoryRechargeAwardCache[index]