ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -34216,7 +34216,8 @@
class  tagMCActSingleRechargeAward(Structure):
    AwardIndex = 0    #(BYTE AwardIndex)// 奖励索引 0~31
    AwardIndex = 0    #(BYTE AwardIndex)// 奖励索引
    AwardCountMax = 0    #(WORD AwardCountMax)// 最大领奖次数
    SingleRechargeValue = 0    #(DWORD SingleRechargeValue)// 单笔所需充值额度
    AwardItemCount = 0    #(BYTE AwardItemCount)// 奖励物品数
    AwardItem = list()    #(vector<tagMCActSingleRechargeAwardItem> AwardItem)// 奖励物品信息
@@ -34229,6 +34230,7 @@
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        self.AwardIndex,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.AwardCountMax,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.SingleRechargeValue,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        self.AwardItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.AwardItemCount):
@@ -34239,6 +34241,7 @@
    def Clear(self):
        self.AwardIndex = 0
        self.AwardCountMax = 0
        self.SingleRechargeValue = 0
        self.AwardItemCount = 0
        self.AwardItem = list()
@@ -34247,6 +34250,7 @@
    def GetLength(self):
        length = 0
        length += 1
        length += 2
        length += 4
        length += 1
        for i in range(self.AwardItemCount):
@@ -34257,6 +34261,7 @@
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteBYTE(data, self.AwardIndex)
        data = CommFunc.WriteWORD(data, self.AwardCountMax)
        data = CommFunc.WriteDWORD(data, self.SingleRechargeValue)
        data = CommFunc.WriteBYTE(data, self.AwardItemCount)
        for i in range(self.AwardItemCount):
@@ -34266,12 +34271,14 @@
    def OutputString(self):
        DumpString = '''
                                AwardIndex:%d,
                                AwardCountMax:%d,
                                SingleRechargeValue:%d,
                                AwardItemCount:%d,
                                AwardItem:%s
                                '''\
                                %(
                                self.AwardIndex,
                                self.AwardCountMax,
                                self.SingleRechargeValue,
                                self.AwardItemCount,
                                "..."
@@ -34390,20 +34397,16 @@
#------------------------------------------------------
# AA 51 单笔累充活动玩家信息 #tagMCActSingleRechargePlayerInfo
class  tagMCActSingleRechargePlayerInfo(Structure):
class  tagMCActSingleRechargePlayerAward(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("ActNum", c_ubyte),    #活动编号从1开始,目前支持两个累充活动同时存在且相互独立 1或2
                  ("CanAwardValue", c_int),    #可否领奖记录,按奖励索引二进制位存储是否可领取
                  ("AwardRecord", c_int),    #奖励领奖记录,按奖励索引二进制位存储是否已领取
                  ("AwardIndex", c_ubyte),    # 奖励索引
                  ("CanGetCount", c_ushort),    # 可领奖次数
                  ("GetCount", c_ushort),    # 已领奖次数
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAA
        self.SubCmd = 0x51
        return
    def ReadData(self, stringData, _pos=0, _len=0):
@@ -34412,39 +34415,102 @@
        return _pos + self.GetLength()
    def Clear(self):
        self.Cmd = 0xAA
        self.SubCmd = 0x51
        self.ActNum = 0
        self.CanAwardValue = 0
        self.AwardRecord = 0
        self.AwardIndex = 0
        self.CanGetCount = 0
        self.GetCount = 0
        return
    def GetLength(self):
        return sizeof(tagMCActSingleRechargePlayerInfo)
        return sizeof(tagMCActSingleRechargePlayerAward)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AA 51 单笔累充活动玩家信息 //tagMCActSingleRechargePlayerInfo:
                                Cmd:%s,
                                SubCmd:%s,
                                ActNum:%d,
                                CanAwardValue:%d,
                                AwardRecord:%d
                                AwardIndex:%d,
                                CanGetCount:%d,
                                GetCount:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.AwardIndex,
                                self.CanGetCount,
                                self.GetCount
                                )
        return DumpString
class  tagMCActSingleRechargePlayerInfo(Structure):
    Head = tagHead()
    ActNum = 0    #(BYTE ActNum)//活动编号从1开始,目前支持两个累充活动同时存在且相互独立 1或2
    RecordCount = 0    #(BYTE RecordCount)
    AwardRecordList = list()    #(vector<tagMCActSingleRechargePlayerAward> AwardRecordList)// 领奖次数记录列表
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xAA
        self.Head.SubCmd = 0x51
        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.RecordCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.RecordCount):
            temAwardRecordList = tagMCActSingleRechargePlayerAward()
            _pos = temAwardRecordList.ReadData(_lpData, _pos)
            self.AwardRecordList.append(temAwardRecordList)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xAA
        self.Head.SubCmd = 0x51
        self.ActNum = 0
        self.RecordCount = 0
        self.AwardRecordList = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += 1
        for i in range(self.RecordCount):
            length += self.AwardRecordList[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.WriteBYTE(data, self.RecordCount)
        for i in range(self.RecordCount):
            data = CommFunc.WriteString(data, self.AwardRecordList[i].GetLength(), self.AwardRecordList[i].GetBuffer())
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                ActNum:%d,
                                RecordCount:%d,
                                AwardRecordList:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.ActNum,
                                self.CanAwardValue,
                                self.AwardRecord
                                self.RecordCount,
                                "..."
                                )
        return DumpString
m_NAtagMCActSingleRechargePlayerInfo=tagMCActSingleRechargePlayerInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCActSingleRechargePlayerInfo.Cmd,m_NAtagMCActSingleRechargePlayerInfo.SubCmd))] = m_NAtagMCActSingleRechargePlayerInfo
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCActSingleRechargePlayerInfo.Head.Cmd,m_NAtagMCActSingleRechargePlayerInfo.Head.SubCmd))] = m_NAtagMCActSingleRechargePlayerInfo
#------------------------------------------------------