From 29a5e154e1628b11815ee5524f54daa9f7069a4f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 25 三月 2021 15:01:06 +0800
Subject: [PATCH] 8877 【主干】【BT2】节日游历任务ID支持绝世寻宝(boss复活、仙界盛典、节日游历都支持)
---
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 594 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 592 insertions(+), 2 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index ed0706d..f8fea6c 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -346,6 +346,7 @@
("NowMinute", c_ubyte),
("NowSecond", c_ubyte),
("NowMicSecond", c_int),
+ ("WeekOfYear", c_ubyte), #一年中的第几周
]
def __init__(self):
@@ -373,6 +374,7 @@
self.NowMinute = 0
self.NowSecond = 0
self.NowMicSecond = 0
+ self.WeekOfYear = 0
return
def GetLength(self):
@@ -395,7 +397,8 @@
NowHour:%d,
NowMinute:%d,
NowSecond:%d,
- NowMicSecond:%d
+ NowMicSecond:%d,
+ WeekOfYear:%d
'''\
%(
self.Cmd,
@@ -410,7 +413,8 @@
self.NowHour,
self.NowMinute,
self.NowSecond,
- self.NowMicSecond
+ self.NowMicSecond,
+ self.WeekOfYear
)
return DumpString
@@ -24733,6 +24737,7 @@
Head = tagHead()
StartDate = "" #(char StartDate[10])// 开始日期 y-m-d
EndtDate = "" #(char EndtDate[10])// 结束日期 y-m-d
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
GroupCount = 0 #(BYTE GroupCount)// 循环购买礼包组数
GroupList = list() #(vector<tagMCActGrowupBuyGroup> GroupList)//循环购买礼包组列表
data = None
@@ -24748,6 +24753,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.GroupCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.GroupCount):
temGroupList = tagMCActGrowupBuyGroup()
@@ -24762,6 +24768,7 @@
self.Head.SubCmd = 0x31
self.StartDate = ""
self.EndtDate = ""
+ self.LimitLV = 0
self.GroupCount = 0
self.GroupList = list()
return
@@ -24771,6 +24778,7 @@
length += self.Head.GetLength()
length += 10
length += 10
+ length += 2
length += 1
for i in range(self.GroupCount):
length += self.GroupList[i].GetLength()
@@ -24782,6 +24790,7 @@
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
data = CommFunc.WriteString(data, 10, self.StartDate)
data = CommFunc.WriteString(data, 10, self.EndtDate)
+ data = CommFunc.WriteWORD(data, self.LimitLV)
data = CommFunc.WriteBYTE(data, self.GroupCount)
for i in range(self.GroupCount):
data = CommFunc.WriteString(data, self.GroupList[i].GetLength(), self.GroupList[i].GetBuffer())
@@ -24792,6 +24801,7 @@
Head:%s,
StartDate:%s,
EndtDate:%s,
+ LimitLV:%d,
GroupCount:%d,
GroupList:%s
'''\
@@ -24799,6 +24809,7 @@
self.Head.OutputString(),
self.StartDate,
self.EndtDate,
+ self.LimitLV,
self.GroupCount,
"..."
)
@@ -25237,6 +25248,308 @@
#------------------------------------------------------
+# AA 48 多日连充活动信息 #tagMCActManyDayRechargeInfo
+
+class tagMCActManyDayRechargeItem(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("ItemID", c_int),
+ ("ItemCount", c_ushort),
+ ("IsBind", c_ubyte),
+ ]
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, stringData, _pos=0, _len=0):
+ self.Clear()
+ memmove(addressof(self), stringData[_pos:], self.GetLength())
+ return _pos + self.GetLength()
+
+ def Clear(self):
+ self.ItemID = 0
+ self.ItemCount = 0
+ self.IsBind = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagMCActManyDayRechargeItem)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// AA 48 多日连充活动信息 //tagMCActManyDayRechargeInfo:
+ ItemID:%d,
+ ItemCount:%d,
+ IsBind:%d
+ '''\
+ %(
+ self.ItemID,
+ self.ItemCount,
+ self.IsBind
+ )
+ return DumpString
+
+
+class tagMCActManyDayRechargeAward(Structure):
+ AwardIndex = 0 #(BYTE AwardIndex)// 奖励索引 0~31
+ NeedRecharge = 0 #(DWORD NeedRecharge)// 单天所需充值额度
+ NeedDays = 0 #(BYTE NeedDays)// 所需充值天数
+ AwardItemCount = 0 #(BYTE AwardItemCount)
+ AwardItemList = list() #(vector<tagMCActManyDayRechargeItem> AwardItemList)// 奖励物品信息
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.AwardIndex,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.NeedRecharge,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ self.NeedDays,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.AwardItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.AwardItemCount):
+ temAwardItemList = tagMCActManyDayRechargeItem()
+ _pos = temAwardItemList.ReadData(_lpData, _pos)
+ self.AwardItemList.append(temAwardItemList)
+ return _pos
+
+ def Clear(self):
+ self.AwardIndex = 0
+ self.NeedRecharge = 0
+ self.NeedDays = 0
+ self.AwardItemCount = 0
+ self.AwardItemList = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 1
+ length += 4
+ length += 1
+ length += 1
+ for i in range(self.AwardItemCount):
+ length += self.AwardItemList[i].GetLength()
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteBYTE(data, self.AwardIndex)
+ data = CommFunc.WriteDWORD(data, self.NeedRecharge)
+ data = CommFunc.WriteBYTE(data, self.NeedDays)
+ data = CommFunc.WriteBYTE(data, self.AwardItemCount)
+ for i in range(self.AwardItemCount):
+ data = CommFunc.WriteString(data, self.AwardItemList[i].GetLength(), self.AwardItemList[i].GetBuffer())
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ AwardIndex:%d,
+ NeedRecharge:%d,
+ NeedDays:%d,
+ AwardItemCount:%d,
+ AwardItemList:%s
+ '''\
+ %(
+ self.AwardIndex,
+ self.NeedRecharge,
+ self.NeedDays,
+ self.AwardItemCount,
+ "..."
+ )
+ return DumpString
+
+
+class tagMCActManyDayRechargeInfo(Structure):
+ Head = tagHead()
+ ActNum = 0 #(BYTE ActNum)//活动编号
+ StartDate = "" #(char StartDate[10])// 开始日期 y-m-d
+ EndtDate = "" #(char EndtDate[10])// 结束日期 y-m-d
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
+ AwardCount = 0 #(BYTE AwardCount)
+ AwardList = list() #(vector<tagMCActManyDayRechargeAward> AwardList)// 奖励信息列表
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ self.Head.Cmd = 0xAA
+ self.Head.SubCmd = 0x48
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ _pos = self.Head.ReadData(_lpData, _pos)
+ self.ActNum,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.AwardCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.AwardCount):
+ temAwardList = tagMCActManyDayRechargeAward()
+ _pos = temAwardList.ReadData(_lpData, _pos)
+ self.AwardList.append(temAwardList)
+ return _pos
+
+ def Clear(self):
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xAA
+ self.Head.SubCmd = 0x48
+ self.ActNum = 0
+ self.StartDate = ""
+ self.EndtDate = ""
+ self.LimitLV = 0
+ self.AwardCount = 0
+ self.AwardList = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ length += 10
+ length += 10
+ length += 2
+ length += 1
+ for i in range(self.AwardCount):
+ length += self.AwardList[i].GetLength()
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.ActNum)
+ data = CommFunc.WriteString(data, 10, self.StartDate)
+ data = CommFunc.WriteString(data, 10, self.EndtDate)
+ data = CommFunc.WriteWORD(data, self.LimitLV)
+ data = CommFunc.WriteBYTE(data, self.AwardCount)
+ for i in range(self.AwardCount):
+ data = CommFunc.WriteString(data, self.AwardList[i].GetLength(), self.AwardList[i].GetBuffer())
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Head:%s,
+ ActNum:%d,
+ StartDate:%s,
+ EndtDate:%s,
+ LimitLV:%d,
+ AwardCount:%d,
+ AwardList:%s
+ '''\
+ %(
+ self.Head.OutputString(),
+ self.ActNum,
+ self.StartDate,
+ self.EndtDate,
+ self.LimitLV,
+ self.AwardCount,
+ "..."
+ )
+ return DumpString
+
+
+m_NAtagMCActManyDayRechargeInfo=tagMCActManyDayRechargeInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCActManyDayRechargeInfo.Head.Cmd,m_NAtagMCActManyDayRechargeInfo.Head.SubCmd))] = m_NAtagMCActManyDayRechargeInfo
+
+
+#------------------------------------------------------
+# AA 49 多日连充活动玩家信息 #tagMCActManyDayRechargePlayerInfo
+
+class tagMCActManyDayRechargePlayerInfo(Structure):
+ Head = tagHead()
+ ActNum = 0 #(BYTE ActNum)//活动编号
+ Days = 0 #(BYTE Days)
+ DayRechargeValues = list() #(vector<DWORD> DayRechargeValues)//活动每天充值列表
+ RecordCount = 0 #(BYTE RecordCount)
+ AwardRecord = list() #(vector<DWORD> AwardRecord)//奖励领奖记录,按奖励索引二进制位存储是否已领取
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ self.Head.Cmd = 0xAA
+ self.Head.SubCmd = 0x49
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ _pos = self.Head.ReadData(_lpData, _pos)
+ self.ActNum,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.Days,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.Days):
+ value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
+ self.DayRechargeValues.append(value)
+ self.RecordCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.RecordCount):
+ value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
+ self.AwardRecord.append(value)
+ return _pos
+
+ def Clear(self):
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xAA
+ self.Head.SubCmd = 0x49
+ self.ActNum = 0
+ self.Days = 0
+ self.DayRechargeValues = list()
+ self.RecordCount = 0
+ self.AwardRecord = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ length += 1
+ length += 4 * self.Days
+ length += 1
+ length += 4 * self.RecordCount
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.ActNum)
+ data = CommFunc.WriteBYTE(data, self.Days)
+ for i in range(self.Days):
+ data = CommFunc.WriteDWORD(data, self.DayRechargeValues[i])
+ data = CommFunc.WriteBYTE(data, self.RecordCount)
+ for i in range(self.RecordCount):
+ data = CommFunc.WriteDWORD(data, self.AwardRecord[i])
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Head:%s,
+ ActNum:%d,
+ Days:%d,
+ DayRechargeValues:%s,
+ RecordCount:%d,
+ AwardRecord:%s
+ '''\
+ %(
+ self.Head.OutputString(),
+ self.ActNum,
+ self.Days,
+ "...",
+ self.RecordCount,
+ "..."
+ )
+ return DumpString
+
+
+m_NAtagMCActManyDayRechargePlayerInfo=tagMCActManyDayRechargePlayerInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCActManyDayRechargePlayerInfo.Head.Cmd,m_NAtagMCActManyDayRechargePlayerInfo.Head.SubCmd))] = m_NAtagMCActManyDayRechargePlayerInfo
+
+
+#------------------------------------------------------
# AA 27 充值返利活动信息 #tagMCActRechargePrizeInfo
class tagMCActRechargePrize(Structure):
@@ -25336,6 +25649,7 @@
Head = tagHead()
StartDate = "" #(char StartDate[10])// 开始日期 y-m-d
EndtDate = "" #(char EndtDate[10])// 结束日期 y-m-d
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
IsDayReset = 0 #(BYTE IsDayReset)//是否每天重置
PrizeDays = 0 #(BYTE PrizeDays)
PrizeDayInfo = list() #(vector<tagMCActRechargePrizeDay> PrizeDayInfo)//每天对应信息; 如果只有一天,但是活动有多天,则代表每天奖励都一样
@@ -25352,6 +25666,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.IsDayReset,_pos = CommFunc.ReadBYTE(_lpData, _pos)
self.PrizeDays,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.PrizeDays):
@@ -25367,6 +25682,7 @@
self.Head.SubCmd = 0x27
self.StartDate = ""
self.EndtDate = ""
+ self.LimitLV = 0
self.IsDayReset = 0
self.PrizeDays = 0
self.PrizeDayInfo = list()
@@ -25377,6 +25693,7 @@
length += self.Head.GetLength()
length += 10
length += 10
+ length += 2
length += 1
length += 1
for i in range(self.PrizeDays):
@@ -25389,6 +25706,7 @@
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
data = CommFunc.WriteString(data, 10, self.StartDate)
data = CommFunc.WriteString(data, 10, self.EndtDate)
+ data = CommFunc.WriteWORD(data, self.LimitLV)
data = CommFunc.WriteBYTE(data, self.IsDayReset)
data = CommFunc.WriteBYTE(data, self.PrizeDays)
for i in range(self.PrizeDays):
@@ -25400,6 +25718,7 @@
Head:%s,
StartDate:%s,
EndtDate:%s,
+ LimitLV:%d,
IsDayReset:%d,
PrizeDays:%d,
PrizeDayInfo:%s
@@ -25408,6 +25727,7 @@
self.Head.OutputString(),
self.StartDate,
self.EndtDate,
+ self.LimitLV,
self.IsDayReset,
self.PrizeDays,
"..."
@@ -25417,6 +25737,196 @@
m_NAtagMCActRechargePrizeInfo=tagMCActRechargePrizeInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCActRechargePrizeInfo.Head.Cmd,m_NAtagMCActRechargePrizeInfo.Head.SubCmd))] = m_NAtagMCActRechargePrizeInfo
+
+
+#------------------------------------------------------
+# AA 29 累计充值返利仙玉活动信息 #tagMCActRechargeRebateGoldInfo
+
+class tagMCActRechargeRebate(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("RMBMin", c_int), # 充值RMB最小值
+ ("RMBMax", c_int), # 充值RMB最大值,0代表无上限
+ ("RebateRate", c_ushort), # 返利仙玉比例百分比
+ ]
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, stringData, _pos=0, _len=0):
+ self.Clear()
+ memmove(addressof(self), stringData[_pos:], self.GetLength())
+ return _pos + self.GetLength()
+
+ def Clear(self):
+ self.RMBMin = 0
+ self.RMBMax = 0
+ self.RebateRate = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagMCActRechargeRebate)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// AA 29 累计充值返利仙玉活动信息 //tagMCActRechargeRebateGoldInfo:
+ RMBMin:%d,
+ RMBMax:%d,
+ RebateRate:%d
+ '''\
+ %(
+ self.RMBMin,
+ self.RMBMax,
+ self.RebateRate
+ )
+ return DumpString
+
+
+class tagMCActRechargeRebateDay(Structure):
+ Rebates = 0 #(BYTE Rebates)// 返利档数
+ RebateInfo = list() #(vector<tagMCActRechargeRebate> RebateInfo)// 返利档信息
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.Rebates,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.Rebates):
+ temRebateInfo = tagMCActRechargeRebate()
+ _pos = temRebateInfo.ReadData(_lpData, _pos)
+ self.RebateInfo.append(temRebateInfo)
+ return _pos
+
+ def Clear(self):
+ self.Rebates = 0
+ self.RebateInfo = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 1
+ for i in range(self.Rebates):
+ length += self.RebateInfo[i].GetLength()
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteBYTE(data, self.Rebates)
+ for i in range(self.Rebates):
+ data = CommFunc.WriteString(data, self.RebateInfo[i].GetLength(), self.RebateInfo[i].GetBuffer())
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Rebates:%d,
+ RebateInfo:%s
+ '''\
+ %(
+ self.Rebates,
+ "..."
+ )
+ return DumpString
+
+
+class tagMCActRechargeRebateGoldInfo(Structure):
+ Head = tagHead()
+ StartDate = "" #(char StartDate[10])// 开始日期 y-m-d
+ EndtDate = "" #(char EndtDate[10])// 结束日期 y-m-d
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
+ IsDayReset = 0 #(BYTE IsDayReset)//是否每天重置
+ RebateDays = 0 #(BYTE RebateDays)
+ RebateDayInfo = list() #(vector<tagMCActRechargeRebateDay> RebateDayInfo)//每天对应信息; 如果只有一天,但是活动有多天,则代表每天奖励都一样
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ self.Head.Cmd = 0xAA
+ self.Head.SubCmd = 0x29
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ _pos = self.Head.ReadData(_lpData, _pos)
+ self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.IsDayReset,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.RebateDays,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.RebateDays):
+ temRebateDayInfo = tagMCActRechargeRebateDay()
+ _pos = temRebateDayInfo.ReadData(_lpData, _pos)
+ self.RebateDayInfo.append(temRebateDayInfo)
+ return _pos
+
+ def Clear(self):
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xAA
+ self.Head.SubCmd = 0x29
+ self.StartDate = ""
+ self.EndtDate = ""
+ self.LimitLV = 0
+ self.IsDayReset = 0
+ self.RebateDays = 0
+ self.RebateDayInfo = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += self.Head.GetLength()
+ length += 10
+ length += 10
+ length += 2
+ length += 1
+ length += 1
+ for i in range(self.RebateDays):
+ length += self.RebateDayInfo[i].GetLength()
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteString(data, 10, self.StartDate)
+ data = CommFunc.WriteString(data, 10, self.EndtDate)
+ data = CommFunc.WriteWORD(data, self.LimitLV)
+ data = CommFunc.WriteBYTE(data, self.IsDayReset)
+ data = CommFunc.WriteBYTE(data, self.RebateDays)
+ for i in range(self.RebateDays):
+ data = CommFunc.WriteString(data, self.RebateDayInfo[i].GetLength(), self.RebateDayInfo[i].GetBuffer())
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Head:%s,
+ StartDate:%s,
+ EndtDate:%s,
+ LimitLV:%d,
+ IsDayReset:%d,
+ RebateDays:%d,
+ RebateDayInfo:%s
+ '''\
+ %(
+ self.Head.OutputString(),
+ self.StartDate,
+ self.EndtDate,
+ self.LimitLV,
+ self.IsDayReset,
+ self.RebateDays,
+ "..."
+ )
+ return DumpString
+
+
+m_NAtagMCActRechargeRebateGoldInfo=tagMCActRechargeRebateGoldInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCActRechargeRebateGoldInfo.Head.Cmd,m_NAtagMCActRechargeRebateGoldInfo.Head.SubCmd))] = m_NAtagMCActRechargeRebateGoldInfo
#------------------------------------------------------
@@ -27120,6 +27630,7 @@
class tagMCDailyGiftbagInfo(Structure):
Head = tagHead()
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
GiftbagCount = 0 #(BYTE GiftbagCount)// 礼包数
GiftbagInfo = list() #(vector<tagMCDailyGiftbag> GiftbagInfo)// 礼包信息
data = None
@@ -27133,6 +27644,7 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
_pos = self.Head.ReadData(_lpData, _pos)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.GiftbagCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.GiftbagCount):
temGiftbagInfo = tagMCDailyGiftbag()
@@ -27145,6 +27657,7 @@
self.Head.Clear()
self.Head.Cmd = 0xAA
self.Head.SubCmd = 0x25
+ self.LimitLV = 0
self.GiftbagCount = 0
self.GiftbagInfo = list()
return
@@ -27152,6 +27665,7 @@
def GetLength(self):
length = 0
length += self.Head.GetLength()
+ length += 2
length += 1
for i in range(self.GiftbagCount):
length += self.GiftbagInfo[i].GetLength()
@@ -27161,6 +27675,7 @@
def GetBuffer(self):
data = ''
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteWORD(data, self.LimitLV)
data = CommFunc.WriteBYTE(data, self.GiftbagCount)
for i in range(self.GiftbagCount):
data = CommFunc.WriteString(data, self.GiftbagInfo[i].GetLength(), self.GiftbagInfo[i].GetBuffer())
@@ -27169,11 +27684,13 @@
def OutputString(self):
DumpString = '''
Head:%s,
+ LimitLV:%d,
GiftbagCount:%d,
GiftbagInfo:%s
'''\
%(
self.Head.OutputString(),
+ self.LimitLV,
self.GiftbagCount,
"..."
)
@@ -27451,6 +27968,7 @@
Head = tagHead()
StartDate = "" #(char StartDate[10])// 开始日期 y-m-d
EndtDate = "" #(char EndtDate[10])// 结束日期 y-m-d
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
DayCount = 0 #(BYTE DayCount)// 总共几天
DayAwardList = list() #(vector<tagMCFeastLoginDayAward> DayAwardList)//登录天奖励列表
data = None
@@ -27466,6 +27984,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.DayCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.DayCount):
temDayAwardList = tagMCFeastLoginDayAward()
@@ -27480,6 +27999,7 @@
self.Head.SubCmd = 0x42
self.StartDate = ""
self.EndtDate = ""
+ self.LimitLV = 0
self.DayCount = 0
self.DayAwardList = list()
return
@@ -27489,6 +28009,7 @@
length += self.Head.GetLength()
length += 10
length += 10
+ length += 2
length += 1
for i in range(self.DayCount):
length += self.DayAwardList[i].GetLength()
@@ -27500,6 +28021,7 @@
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
data = CommFunc.WriteString(data, 10, self.StartDate)
data = CommFunc.WriteString(data, 10, self.EndtDate)
+ data = CommFunc.WriteWORD(data, self.LimitLV)
data = CommFunc.WriteBYTE(data, self.DayCount)
for i in range(self.DayCount):
data = CommFunc.WriteString(data, self.DayAwardList[i].GetLength(), self.DayAwardList[i].GetBuffer())
@@ -27510,6 +28032,7 @@
Head:%s,
StartDate:%s,
EndtDate:%s,
+ LimitLV:%d,
DayCount:%d,
DayAwardList:%s
'''\
@@ -27517,6 +28040,7 @@
self.Head.OutputString(),
self.StartDate,
self.EndtDate,
+ self.LimitLV,
self.DayCount,
"..."
)
@@ -27751,6 +28275,7 @@
Head = tagHead()
StartDate = "" #(char StartDate[10])// 开始日期 y-m-d
EndtDate = "" #(char EndtDate[10])// 结束日期 y-m-d
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
ResetType = 0 #(BYTE ResetType)// 重置类型,0-0点重置;1-5点开,5点重置;2-5点开,0点重置
TravelTaskCount = 0 #(BYTE TravelTaskCount)// 游历任务数
TravelTaskList = list() #(vector<tagMCFeastTravelTask> TravelTaskList)//游历任务信息列表
@@ -27769,6 +28294,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.ResetType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
self.TravelTaskCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.TravelTaskCount):
@@ -27789,6 +28315,7 @@
self.Head.SubCmd = 0x46
self.StartDate = ""
self.EndtDate = ""
+ self.LimitLV = 0
self.ResetType = 0
self.TravelTaskCount = 0
self.TravelTaskList = list()
@@ -27801,6 +28328,7 @@
length += self.Head.GetLength()
length += 10
length += 10
+ length += 2
length += 1
length += 1
for i in range(self.TravelTaskCount):
@@ -27816,6 +28344,7 @@
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
data = CommFunc.WriteString(data, 10, self.StartDate)
data = CommFunc.WriteString(data, 10, self.EndtDate)
+ data = CommFunc.WriteWORD(data, self.LimitLV)
data = CommFunc.WriteBYTE(data, self.ResetType)
data = CommFunc.WriteBYTE(data, self.TravelTaskCount)
for i in range(self.TravelTaskCount):
@@ -27830,6 +28359,7 @@
Head:%s,
StartDate:%s,
EndtDate:%s,
+ LimitLV:%d,
ResetType:%d,
TravelTaskCount:%d,
TravelTaskList:%s,
@@ -27840,6 +28370,7 @@
self.Head.OutputString(),
self.StartDate,
self.EndtDate,
+ self.LimitLV,
self.ResetType,
self.TravelTaskCount,
"...",
@@ -28667,6 +29198,7 @@
Head = tagHead()
StartDate = "" #(char StartDate[10])// 开始日期 y-m-d
EndtDate = "" #(char EndtDate[10])// 结束日期 y-m-d
+ LimitLV = 0 #(WORD LimitLV)// 限制等级
ResetType = 0 #(BYTE ResetType)// 重置类型,0-0点重置;1-5点开,5点重置;2-5点开,0点重置
WishPoolShowCount = 0 #(BYTE WishPoolShowCount)//祝福池展示物品数
WishPoolShowItemList = list() #(vector<DWORD> WishPoolShowItemList)//祝福池展示物品ID列表
@@ -28685,6 +29217,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
+ self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.ResetType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
self.WishPoolShowCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.WishPoolShowCount):
@@ -28704,6 +29237,7 @@
self.Head.SubCmd = 0x43
self.StartDate = ""
self.EndtDate = ""
+ self.LimitLV = 0
self.ResetType = 0
self.WishPoolShowCount = 0
self.WishPoolShowItemList = list()
@@ -28716,6 +29250,7 @@
length += self.Head.GetLength()
length += 10
length += 10
+ length += 2
length += 1
length += 1
length += 4 * self.WishPoolShowCount
@@ -28730,6 +29265,7 @@
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
data = CommFunc.WriteString(data, 10, self.StartDate)
data = CommFunc.WriteString(data, 10, self.EndtDate)
+ data = CommFunc.WriteWORD(data, self.LimitLV)
data = CommFunc.WriteBYTE(data, self.ResetType)
data = CommFunc.WriteBYTE(data, self.WishPoolShowCount)
for i in range(self.WishPoolShowCount):
@@ -28744,6 +29280,7 @@
Head:%s,
StartDate:%s,
EndtDate:%s,
+ LimitLV:%d,
ResetType:%d,
WishPoolShowCount:%d,
WishPoolShowItemList:%s,
@@ -28754,6 +29291,7 @@
self.Head.OutputString(),
self.StartDate,
self.EndtDate,
+ self.LimitLV,
self.ResetType,
self.WishPoolShowCount,
"...",
@@ -30467,6 +31005,58 @@
#------------------------------------------------------
+# AA 30 累计充值返利仙玉玩家活动信息 #tagMCRechargeRebateGoldPlayerInfo
+
+class tagMCRechargeRebateGoldPlayerInfo(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("RechargeRMBTotal", c_int), # 活动已累计充值RMB
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xAA
+ self.SubCmd = 0x30
+ return
+
+ def ReadData(self, stringData, _pos=0, _len=0):
+ self.Clear()
+ memmove(addressof(self), stringData[_pos:], self.GetLength())
+ return _pos + self.GetLength()
+
+ def Clear(self):
+ self.Cmd = 0xAA
+ self.SubCmd = 0x30
+ self.RechargeRMBTotal = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagMCRechargeRebateGoldPlayerInfo)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// AA 30 累计充值返利仙玉玩家活动信息 //tagMCRechargeRebateGoldPlayerInfo:
+ Cmd:%s,
+ SubCmd:%s,
+ RechargeRMBTotal:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.RechargeRMBTotal
+ )
+ return DumpString
+
+
+m_NAtagMCRechargeRebateGoldPlayerInfo=tagMCRechargeRebateGoldPlayerInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCRechargeRebateGoldPlayerInfo.Cmd,m_NAtagMCRechargeRebateGoldPlayerInfo.SubCmd))] = m_NAtagMCRechargeRebateGoldPlayerInfo
+
+
+#------------------------------------------------------
# AA 11 限时特惠活动信息 #tagMCSpringSaleInfo
class tagMCSpringSaleItem(Structure):
--
Gitblit v1.8.0