From ed70a10c9930216ebc72713e37e21cb1d33349e2 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 10 十二月 2019 18:08:07 +0800
Subject: [PATCH] 8346 【恺英】【后端】协助系统(增加协助感谢礼盒表)
---
ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py | 20 ++++++++++
ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py | 13 ++++++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 23 +++++++++++
PySysDB/PySysDBPY.h | 8 ++++
PySysDB/PySysDBG.h | 8 ++++
5 files changed, 72 insertions(+), 0 deletions(-)
diff --git a/PySysDB/PySysDBG.h b/PySysDB/PySysDBG.h
index 6a7d795..d7f1f7c 100644
--- a/PySysDB/PySysDBG.h
+++ b/PySysDB/PySysDBG.h
@@ -690,6 +690,14 @@
list RankAuctionItem; //拍品奖励[[拍品ID,个数], ...]
};
+//协助感谢礼盒表
+
+struct tagAssistThanksGift
+{
+ DWORD _GiftID; //礼盒物品ID
+ BYTE AssistAwardCount; // 协助奖励每日次数
+};
+
//缥缈仙域表
struct tagFairyDomain
diff --git a/PySysDB/PySysDBPY.h b/PySysDB/PySysDBPY.h
index 8f8aff0..accdfb9 100644
--- a/PySysDB/PySysDBPY.h
+++ b/PySysDB/PySysDBPY.h
@@ -1980,6 +1980,14 @@
BYTE SkinIndex; //外观
};
+//协助感谢礼盒表
+
+struct tagAssistThanksGift
+{
+ DWORD _GiftID; //礼盒物品ID
+ list RequestPlayerAward; // 发布奖励物品 物品ID|个数
+ list AssistPlayerAward; // 协助奖励物品 物品ID|个数
+};
//累计充值奖励表
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index 75acbed..4409089 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/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]
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py b/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
index 7859334..e5a824c 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
+++ b/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
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index b5de14f..9ec7ba6 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/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]
--
Gitblit v1.8.0