hxp
2 天以前 54d9849e67665b6a20dc723adaf91b5455054165
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -30983,22 +30983,17 @@
#------------------------------------------------------
# AA 02 首充信息 #tagMCFirstGoldInfo
# AA 02 首充信息 #tagSCFirstChargeInfo
class  tagMCFirstGoldInfo(Structure):
class  tagSCFirstCharge(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("FirstGoldRewardState", c_ubyte),    #首充奖励领奖记录,按位记录首充第X天是否已领取,第1天为第0索引位
                  ("FirstGoldTry", c_ubyte),    #首充试用状态0-不可试用 1-可试用 2-已试用
                  ("FirstGoldServerDay", c_ushort),    #首充时是开服第几天,从1开始,0代表未记录充值
                  ("ChargeTime", c_int),    #充值该首充的时间戳
                  ("AwardRecord", c_ushort),    #首充奖励领奖记录,按二进制位记录首充第X天是否已领取
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAA
        self.SubCmd = 0x02
        return
    def ReadData(self, stringData, _pos=0, _len=0):
@@ -31007,91 +31002,92 @@
        return _pos + self.GetLength()
    def Clear(self):
        self.Cmd = 0xAA
        self.SubCmd = 0x02
        self.FirstGoldRewardState = 0
        self.FirstGoldTry = 0
        self.FirstGoldServerDay = 0
        self.ChargeTime = 0
        self.AwardRecord = 0
        return
    def GetLength(self):
        return sizeof(tagMCFirstGoldInfo)
        return sizeof(tagSCFirstCharge)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AA 02 首充信息 //tagMCFirstGoldInfo:
                                Cmd:%s,
                                SubCmd:%s,
                                FirstGoldRewardState:%d,
                                FirstGoldTry:%d,
                                FirstGoldServerDay:%d
        DumpString = '''// AA 02 首充信息 //tagSCFirstChargeInfo:
                                ChargeTime:%d,
                                AwardRecord:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.FirstGoldRewardState,
                                self.FirstGoldTry,
                                self.FirstGoldServerDay
                                self.ChargeTime,
                                self.AwardRecord
                                )
        return DumpString
m_NAtagMCFirstGoldInfo=tagMCFirstGoldInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCFirstGoldInfo.Cmd,m_NAtagMCFirstGoldInfo.SubCmd))] = m_NAtagMCFirstGoldInfo
#------------------------------------------------------
# AA 08 首充提示剩余时间 #tagMCFirstGoldTime
class  tagMCFirstGoldTime(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("FirstGoldRemainTime", c_int),    #首充提示剩余时间
                  ]
class  tagSCFirstChargeInfo(Structure):
    Head = tagHead()
    Count = 0    #(BYTE Count)
    FirstChargeList = list()    #(vector<tagSCFirstCharge> FirstChargeList)
    data = None
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAA
        self.SubCmd = 0x08
        self.Head.Cmd = 0xAA
        self.Head.SubCmd = 0x02
        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):
            temFirstChargeList = tagSCFirstCharge()
            _pos = temFirstChargeList.ReadData(_lpData, _pos)
            self.FirstChargeList.append(temFirstChargeList)
        return _pos
    def Clear(self):
        self.Cmd = 0xAA
        self.SubCmd = 0x08
        self.FirstGoldRemainTime = 0
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xAA
        self.Head.SubCmd = 0x02
        self.Count = 0
        self.FirstChargeList = list()
        return
    def GetLength(self):
        return sizeof(tagMCFirstGoldTime)
        length = 0
        length += self.Head.GetLength()
        length += 1
        for i in range(self.Count):
            length += self.FirstChargeList[i].GetLength()
        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.WriteString(data, self.FirstChargeList[i].GetLength(), self.FirstChargeList[i].GetBuffer())
        return data
    def OutputString(self):
        DumpString = '''// AA 08 首充提示剩余时间 //tagMCFirstGoldTime:
                                Cmd:%s,
                                SubCmd:%s,
                                FirstGoldRemainTime:%d
        DumpString = '''
                                Head:%s,
                                Count:%d,
                                FirstChargeList:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.FirstGoldRemainTime
                                self.Head.OutputString(),
                                self.Count,
                                "..."
                                )
        return DumpString
m_NAtagMCFirstGoldTime=tagMCFirstGoldTime()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCFirstGoldTime.Cmd,m_NAtagMCFirstGoldTime.SubCmd))] = m_NAtagMCFirstGoldTime
m_NAtagSCFirstChargeInfo=tagSCFirstChargeInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagSCFirstChargeInfo.Head.Cmd,m_NAtagSCFirstChargeInfo.Head.SubCmd))] = m_NAtagSCFirstChargeInfo
#------------------------------------------------------