hxp
2025-10-09 e4a5fbde4c804262a7cfd17d89d427b4ff36accb
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -4395,71 +4395,70 @@
#------------------------------------------------------
#A3 0D 玩家签到信息记录 # tagMCDaySignInfo
#A3 0D 玩家签到信息记录 # tagSCDaySignInfo
class  tagMCDaySignInfo(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("DaySignCount", c_ubyte),    #已经签到天数
                  ("ReplenishSignCount", c_ubyte),    # 可以补签天数
                  ("IsSign", c_ubyte),    #当天是否已经签到,发送0和1
                  ("IsFrist", c_ubyte),    #是否是第一个月
                  ("TotalSignCount", c_ushort),    #累计总签到天数
                  ]
class  tagSCDaySignInfo(Structure):
    Head = tagHead()
    Count = 0    #(BYTE Count)
    SignStateList = list()    #(vector<BYTE> SignStateList)//每日签到状态记录列表 [第1天状态, ...]  状态:0-不可签到;1-已签到;2-可补签;3-已领取
    data = None
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA3
        self.SubCmd = 0x0D
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x0D
        return
    def ReadData(self, stringData, _pos=0, _len=0):
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        memmove(addressof(self), stringData[_pos:], self.GetLength())
        return _pos + self.GetLength()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.Count):
            value,_pos=CommFunc.ReadBYTE(_lpData,_pos)
            self.SignStateList.append(value)
        return _pos
    def Clear(self):
        self.Cmd = 0xA3
        self.SubCmd = 0x0D
        self.DaySignCount = 0
        self.ReplenishSignCount = 0
        self.IsSign = 0
        self.IsFrist = 0
        self.TotalSignCount = 0
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x0D
        self.Count = 0
        self.SignStateList = list()
        return
    def GetLength(self):
        return sizeof(tagMCDaySignInfo)
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += 1 * self.Count
        return length
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteBYTE(data, self.Count)
        for i in range(self.Count):
            data = CommFunc.WriteBYTE(data, self.SignStateList[i])
        return data
    def OutputString(self):
        DumpString = '''//A3 0D 玩家签到信息记录 // tagMCDaySignInfo:
                                Cmd:%s,
                                SubCmd:%s,
                                DaySignCount:%d,
                                ReplenishSignCount:%d,
                                IsSign:%d,
                                IsFrist:%d,
                                TotalSignCount:%d
        DumpString = '''
                                Head:%s,
                                Count:%d,
                                SignStateList:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.DaySignCount,
                                self.ReplenishSignCount,
                                self.IsSign,
                                self.IsFrist,
                                self.TotalSignCount
                                self.Head.OutputString(),
                                self.Count,
                                "..."
                                )
        return DumpString
m_NAtagMCDaySignInfo=tagMCDaySignInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCDaySignInfo.Cmd,m_NAtagMCDaySignInfo.SubCmd))] = m_NAtagMCDaySignInfo
m_NAtagSCDaySignInfo=tagSCDaySignInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagSCDaySignInfo.Head.Cmd,m_NAtagSCDaySignInfo.Head.SubCmd))] = m_NAtagSCDaySignInfo
#------------------------------------------------------
@@ -8114,80 +8113,6 @@
#------------------------------------------------------
#A3 08 在线奖励信息 #tagMCOnlinePrize
class  tagMCOnlinePrize(Structure):
    Head = tagHead()
    OnlineTime = 0    #(DWORD OnlineTime)//在线时间毫秒
    Len = 0    #(BYTE Len)
    PrizeInfo = list()    #(vector<DWORD> PrizeInfo)//领奖记录
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x08
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.OnlineTime,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        self.Len,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.Len):
            value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
            self.PrizeInfo.append(value)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x08
        self.OnlineTime = 0
        self.Len = 0
        self.PrizeInfo = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 4
        length += 1
        length += 4 * self.Len
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteDWORD(data, self.OnlineTime)
        data = CommFunc.WriteBYTE(data, self.Len)
        for i in range(self.Len):
            data = CommFunc.WriteDWORD(data, self.PrizeInfo[i])
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                OnlineTime:%d,
                                Len:%d,
                                PrizeInfo:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.OnlineTime,
                                self.Len,
                                "..."
                                )
        return DumpString
m_NAtagMCOnlinePrize=tagMCOnlinePrize()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCOnlinePrize.Head.Cmd,m_NAtagMCOnlinePrize.Head.SubCmd))] = m_NAtagMCOnlinePrize
#------------------------------------------------------
# A3 19 分包下载奖励记录 #tagMCPackDownloadRecord
class  tagMCPackDownloadRecord(Structure):
@@ -8293,145 +8218,6 @@
m_NAtagMCPlayerLVAwardGetRecord=tagMCPlayerLVAwardGetRecord()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCPlayerLVAwardGetRecord.Cmd,m_NAtagMCPlayerLVAwardGetRecord.SubCmd))] = m_NAtagMCPlayerLVAwardGetRecord
#------------------------------------------------------
#A3 03 玩家在线奖励信息(暂停使用) #tagMCPlayerOnlinePrizeInfo
class  tagMCOnlinePrizeItem(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("PrizeItem", c_int),
                  ("ItemCount", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA3
        self.SubCmd = 0x03
        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 = 0xA3
        self.SubCmd = 0x03
        self.PrizeItem = 0
        self.ItemCount = 0
        return
    def GetLength(self):
        return sizeof(tagMCOnlinePrizeItem)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''//A3 03 玩家在线奖励信息(暂停使用) //tagMCPlayerOnlinePrizeInfo:
                                Cmd:%s,
                                SubCmd:%s,
                                PrizeItem:%d,
                                ItemCount:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.PrizeItem,
                                self.ItemCount
                                )
        return DumpString
class  tagMCPlayerOnlinePrizeInfo(Structure):
    Head = tagHead()
    RemaindTime = 0    #(DWORD RemaindTime)//产生奖励剩余时间
    HasPrize = 0    #(BYTE HasPrize)//是否可以领取
    PrizeType = 0    #(BYTE PrizeType)//在线奖励类型
    PrizeCnt = 0    #(BYTE PrizeCnt)//在线奖励类型
    PrizeInfo = list()    #(vector<tagMCOnlinePrizeItem> PrizeInfo)//在线奖励类型
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x03
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.RemaindTime,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        self.HasPrize,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.PrizeType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.PrizeCnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.PrizeCnt):
            temPrizeInfo = tagMCOnlinePrizeItem()
            _pos = temPrizeInfo.ReadData(_lpData, _pos)
            self.PrizeInfo.append(temPrizeInfo)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x03
        self.RemaindTime = 0
        self.HasPrize = 0
        self.PrizeType = 0
        self.PrizeCnt = 0
        self.PrizeInfo = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 4
        length += 1
        length += 1
        length += 1
        for i in range(self.PrizeCnt):
            length += self.PrizeInfo[i].GetLength()
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteDWORD(data, self.RemaindTime)
        data = CommFunc.WriteBYTE(data, self.HasPrize)
        data = CommFunc.WriteBYTE(data, self.PrizeType)
        data = CommFunc.WriteBYTE(data, self.PrizeCnt)
        for i in range(self.PrizeCnt):
            data = CommFunc.WriteString(data, self.PrizeInfo[i].GetLength(), self.PrizeInfo[i].GetBuffer())
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                RemaindTime:%d,
                                HasPrize:%d,
                                PrizeType:%d,
                                PrizeCnt:%d,
                                PrizeInfo:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.RemaindTime,
                                self.HasPrize,
                                self.PrizeType,
                                self.PrizeCnt,
                                "..."
                                )
        return DumpString
m_NAtagMCPlayerOnlinePrizeInfo=tagMCPlayerOnlinePrizeInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCPlayerOnlinePrizeInfo.Head.Cmd,m_NAtagMCPlayerOnlinePrizeInfo.Head.SubCmd))] = m_NAtagMCPlayerOnlinePrizeInfo
#------------------------------------------------------
@@ -37381,80 +37167,6 @@
m_NAtagMCNotifyPlayerMove=tagMCNotifyPlayerMove()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCNotifyPlayerMove.Cmd,m_NAtagMCNotifyPlayerMove.SubCmd))] = m_NAtagMCNotifyPlayerMove
#------------------------------------------------------
# B1 13 在线奖励信息新 #tagMCOnlinePrizeNew
class  tagMCOnlinePrizeNew(Structure):
    Head = tagHead()
    OnlineTime = 0    #(DWORD OnlineTime)//在线时间毫秒
    Len = 0    #(BYTE Len)
    PrizeInfo = list()    #(vector<DWORD> PrizeInfo)//领奖记录
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xB1
        self.Head.SubCmd = 0x13
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.OnlineTime,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        self.Len,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.Len):
            value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
            self.PrizeInfo.append(value)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xB1
        self.Head.SubCmd = 0x13
        self.OnlineTime = 0
        self.Len = 0
        self.PrizeInfo = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 4
        length += 1
        length += 4 * self.Len
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteDWORD(data, self.OnlineTime)
        data = CommFunc.WriteBYTE(data, self.Len)
        for i in range(self.Len):
            data = CommFunc.WriteDWORD(data, self.PrizeInfo[i])
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                OnlineTime:%d,
                                Len:%d,
                                PrizeInfo:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.OnlineTime,
                                self.Len,
                                "..."
                                )
        return DumpString
m_NAtagMCOnlinePrizeNew=tagMCOnlinePrizeNew()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCOnlinePrizeNew.Head.Cmd,m_NAtagMCOnlinePrizeNew.Head.SubCmd))] = m_NAtagMCOnlinePrizeNew
#------------------------------------------------------