hxp
2023-07-31 495f9eed41e29b54672a767817c9cb11419dfa4c
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -15591,13 +15591,67 @@
        return DumpString
class  tagGCLuckyCloudBuyRoundTime(Structure):
    StartTime = ""    #(char StartTime[5])// 开始时间 H:M
    EndtTime = ""    #(char EndtTime[5])// 结束时间 H:M
    RoundMax = 0    #(BYTE RoundMax)// 本时段最大轮次
    data = None
    def __init__(self):
        self.Clear()
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        self.StartTime,_pos = CommFunc.ReadString(_lpData, _pos,5)
        self.EndtTime,_pos = CommFunc.ReadString(_lpData, _pos,5)
        self.RoundMax,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        return _pos
    def Clear(self):
        self.StartTime = ""
        self.EndtTime = ""
        self.RoundMax = 0
        return
    def GetLength(self):
        length = 0
        length += 5
        length += 5
        length += 1
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, 5, self.StartTime)
        data = CommFunc.WriteString(data, 5, self.EndtTime)
        data = CommFunc.WriteBYTE(data, self.RoundMax)
        return data
    def OutputString(self):
        DumpString = '''
                                StartTime:%s,
                                EndtTime:%s,
                                RoundMax:%d
                                '''\
                                %(
                                self.StartTime,
                                self.EndtTime,
                                self.RoundMax
                                )
        return DumpString
class  tagGCLuckyCloudBuyRoundInfo(Structure):
    Head = tagHead()
    ZoneID = 0    #(BYTE ZoneID)// 所属分区ID
    StartDate = ""    #(char StartDate[10])// 开始日期 y-m-d
    EndtDate = ""    #(char EndtDate[10])// 结束日期 y-m-d
    RoundTimeCount = 0    #(BYTE RoundTimeCount)
    RoundTimeList = list()    #(vector<tagGCLuckyCloudBuyRoundTime> RoundTimeList)//轮次时间段
    RoundID = 0    #(DWORD RoundID)// 轮次唯一ID标识,当收到的轮次ID变更时,前端需清空购买号码记录缓存
    RoundNum = 0    #(BYTE RoundNum)// 今日第几轮
    RoundNum = 0    #(BYTE RoundNum)// 当前时段第几轮
    SuperItemID = 0    #(DWORD SuperItemID)// 大奖物品ID
    SuperItemCount = 0    #(BYTE SuperItemCount)// 大奖物品个数
    SuperItemMoneyType = 0    #(BYTE SuperItemMoneyType)// 大奖价值货币类型
@@ -15621,6 +15675,11 @@
        self.ZoneID,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.StartDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
        self.EndtDate,_pos = CommFunc.ReadString(_lpData, _pos,10)
        self.RoundTimeCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.RoundTimeCount):
            temRoundTimeList = tagGCLuckyCloudBuyRoundTime()
            _pos = temRoundTimeList.ReadData(_lpData, _pos)
            self.RoundTimeList.append(temRoundTimeList)
        self.RoundID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        self.RoundNum,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.SuperItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
@@ -15648,6 +15707,8 @@
        self.ZoneID = 0
        self.StartDate = ""
        self.EndtDate = ""
        self.RoundTimeCount = 0
        self.RoundTimeList = list()
        self.RoundID = 0
        self.RoundNum = 0
        self.SuperItemID = 0
@@ -15667,6 +15728,9 @@
        length += 1
        length += 10
        length += 10
        length += 1
        for i in range(self.RoundTimeCount):
            length += self.RoundTimeList[i].GetLength()
        length += 4
        length += 1
        length += 4
@@ -15689,6 +15753,9 @@
        data = CommFunc.WriteBYTE(data, self.ZoneID)
        data = CommFunc.WriteString(data, 10, self.StartDate)
        data = CommFunc.WriteString(data, 10, self.EndtDate)
        data = CommFunc.WriteBYTE(data, self.RoundTimeCount)
        for i in range(self.RoundTimeCount):
            data = CommFunc.WriteString(data, self.RoundTimeList[i].GetLength(), self.RoundTimeList[i].GetBuffer())
        data = CommFunc.WriteDWORD(data, self.RoundID)
        data = CommFunc.WriteBYTE(data, self.RoundNum)
        data = CommFunc.WriteDWORD(data, self.SuperItemID)
@@ -15710,6 +15777,8 @@
                                ZoneID:%d,
                                StartDate:%s,
                                EndtDate:%s,
                                RoundTimeCount:%d,
                                RoundTimeList:%s,
                                RoundID:%d,
                                RoundNum:%d,
                                SuperItemID:%d,
@@ -15727,6 +15796,8 @@
                                self.ZoneID,
                                self.StartDate,
                                self.EndtDate,
                                self.RoundTimeCount,
                                "...",
                                self.RoundID,
                                self.RoundNum,
                                self.SuperItemID,
@@ -24191,6 +24262,58 @@
#------------------------------------------------------
# A3 43  成就积分信息 #tagMCSuccessScoreInfo
class  tagMCSuccessScoreInfo(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("ScoreAwardState", c_int),    #成就积分领奖记录,按奖励索引位记录是否领取
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA3
        self.SubCmd = 0x43
        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 = 0x43
        self.ScoreAwardState = 0
        return
    def GetLength(self):
        return sizeof(tagMCSuccessScoreInfo)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A3 43  成就积分信息 //tagMCSuccessScoreInfo:
                                Cmd:%s,
                                SubCmd:%s,
                                ScoreAwardState:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.ScoreAwardState
                                )
        return DumpString
m_NAtagMCSuccessScoreInfo=tagMCSuccessScoreInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCSuccessScoreInfo.Cmd,m_NAtagMCSuccessScoreInfo.SubCmd))] = m_NAtagMCSuccessScoreInfo
#------------------------------------------------------
#A3 14 通知各功能的祝福值  #tagMCSyncBlessValue
class  tagMCSyncSingleBlessValue(Structure):