ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -8585,66 +8585,13 @@
#------------------------------------------------------
# A3 41  成就完成 #tagMCSuccessFinish
# A3 42 成就领奖记录列表 #tagSCSuccessAwardRecordList
class  tagMCSuccessFinish(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("SuccID", c_int),    #成就id
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA3
        self.SubCmd = 0x41
        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 = 0x41
        self.SuccID = 0
        return
    def GetLength(self):
        return sizeof(tagMCSuccessFinish)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A3 41  成就完成 //tagMCSuccessFinish:
                                Cmd:%s,
                                SubCmd:%s,
                                SuccID:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.SuccID
                                )
        return DumpString
m_NAtagMCSuccessFinish=tagMCSuccessFinish()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCSuccessFinish.Cmd,m_NAtagMCSuccessFinish.SubCmd))] = m_NAtagMCSuccessFinish
#------------------------------------------------------
#A3 42  成就完成领奖记录列表 #tagMCSuccessFinishAwardRecordList
class  tagMCSuccessFinishAwardRecord(Structure):
class  tagSCSuccessAwardRecord(Structure):
    _pack_ = 1
    _fields_ = [
                  ("RecordIndex", c_ushort),    #第几个记录值 每个key存31个succid   0-30为0, 31-61为1..
                  ("Record", c_int),    #对应是否领取值
                  ("PassportRecord", c_int),    #通行证奖励是否领取值
                  ("Record", c_int),    #根据成就ID位判断是否已领取
                  ]
    def __init__(self):
@@ -8659,33 +8606,30 @@
    def Clear(self):
        self.RecordIndex = 0
        self.Record = 0
        self.PassportRecord = 0
        return
    def GetLength(self):
        return sizeof(tagMCSuccessFinishAwardRecord)
        return sizeof(tagSCSuccessAwardRecord)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''//A3 42  成就完成领奖记录列表 //tagMCSuccessFinishAwardRecordList:
        DumpString = '''// A3 42 成就领奖记录列表 //tagSCSuccessAwardRecordList:
                                RecordIndex:%d,
                                Record:%d,
                                PassportRecord:%d
                                Record:%d
                                '''\
                                %(
                                self.RecordIndex,
                                self.Record,
                                self.PassportRecord
                                self.Record
                                )
        return DumpString
class  tagMCSuccessFinishAwardRecordList(Structure):
class  tagSCSuccessAwardRecordList(Structure):
    Head = tagHead()
    RecordCnt = 0    #(WORD RecordCnt)//记录个数
    RecordList = list()    #(vector<tagMCSuccessFinishAwardRecord> RecordList)//记录列表
    RecordList = list()    #(vector<tagSCSuccessAwardRecord> RecordList)//记录列表
    data = None
    def __init__(self):
@@ -8699,7 +8643,7 @@
        _pos = self.Head.ReadData(_lpData, _pos)
        self.RecordCnt,_pos = CommFunc.ReadWORD(_lpData, _pos)
        for i in range(self.RecordCnt):
            temRecordList = tagMCSuccessFinishAwardRecord()
            temRecordList = tagSCSuccessAwardRecord()
            _pos = temRecordList.ReadData(_lpData, _pos)
            self.RecordList.append(temRecordList)
        return _pos
@@ -8744,18 +8688,18 @@
        return DumpString
m_NAtagMCSuccessFinishAwardRecordList=tagMCSuccessFinishAwardRecordList()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCSuccessFinishAwardRecordList.Head.Cmd,m_NAtagMCSuccessFinishAwardRecordList.Head.SubCmd))] = m_NAtagMCSuccessFinishAwardRecordList
m_NAtagSCSuccessAwardRecordList=tagSCSuccessAwardRecordList()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagSCSuccessAwardRecordList.Head.Cmd,m_NAtagSCSuccessAwardRecordList.Head.SubCmd))] = m_NAtagSCSuccessAwardRecordList
#------------------------------------------------------
# A3 40  成就信息列表 #tagMCSuccessInfoList
# A3 40 成就信息列表 #tagSCSuccessInfoList
class  tagMCSuccessInfo(Structure):
class  tagSCSuccessInfo(Structure):
    SuccType = 0    #(WORD SuccType)//成就类型
    Len = 0    #(WORD Len)//条件长度
    Condition = ""    #(String Condition)//成就条件
    CntValue = 0    #(DWORD CntValue)//当前完成进度值
    CLen = 0    #(BYTE CLen)
    Conds = list()    #(vector<DWORD> Conds)// 条件列表
    CurValue = 0    #(DWORD CurValue)// 进度值,相同任务类型条件的进度值共享
    data = None
    def __init__(self):
@@ -8765,23 +8709,25 @@
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        self.SuccType,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.Len,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.Condition,_pos = CommFunc.ReadString(_lpData, _pos,self.Len)
        self.CntValue,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        self.CLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.CLen):
            value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
            self.Conds.append(value)
        self.CurValue,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        return _pos
    def Clear(self):
        self.SuccType = 0
        self.Len = 0
        self.Condition = ""
        self.CntValue = 0
        self.CLen = 0
        self.Conds = list()
        self.CurValue = 0
        return
    def GetLength(self):
        length = 0
        length += 2
        length += 2
        length += len(self.Condition)
        length += 1
        length += 4 * self.CLen
        length += 4
        return length
@@ -8789,31 +8735,32 @@
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteWORD(data, self.SuccType)
        data = CommFunc.WriteWORD(data, self.Len)
        data = CommFunc.WriteString(data, self.Len, self.Condition)
        data = CommFunc.WriteDWORD(data, self.CntValue)
        data = CommFunc.WriteBYTE(data, self.CLen)
        for i in range(self.CLen):
            data = CommFunc.WriteDWORD(data, self.Conds[i])
        data = CommFunc.WriteDWORD(data, self.CurValue)
        return data
    def OutputString(self):
        DumpString = '''
                                SuccType:%d,
                                Len:%d,
                                Condition:%s,
                                CntValue:%d
                                CLen:%d,
                                Conds:%s,
                                CurValue:%d
                                '''\
                                %(
                                self.SuccType,
                                self.Len,
                                self.Condition,
                                self.CntValue
                                self.CLen,
                                "...",
                                self.CurValue
                                )
        return DumpString
class  tagMCSuccessInfoList(Structure):
class  tagSCSuccessInfoList(Structure):
    Head = tagHead()
    count = 0    #(WORD count)//信息个数
    SuccessInfoList = list()    #(vector<tagMCSuccessInfo> SuccessInfoList)
    Count = 0    #(WORD Count)//信息个数
    SuccessInfoList = list()    #(vector<tagSCSuccessInfo> SuccessInfoList)
    data = None
    def __init__(self):
@@ -8825,9 +8772,9 @@
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.count,_pos = CommFunc.ReadWORD(_lpData, _pos)
        for i in range(self.count):
            temSuccessInfoList = tagMCSuccessInfo()
        self.Count,_pos = CommFunc.ReadWORD(_lpData, _pos)
        for i in range(self.Count):
            temSuccessInfoList = tagSCSuccessInfo()
            _pos = temSuccessInfoList.ReadData(_lpData, _pos)
            self.SuccessInfoList.append(temSuccessInfoList)
        return _pos
@@ -8837,7 +8784,7 @@
        self.Head.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x40
        self.count = 0
        self.Count = 0
        self.SuccessInfoList = list()
        return
@@ -8845,7 +8792,7 @@
        length = 0
        length += self.Head.GetLength()
        length += 2
        for i in range(self.count):
        for i in range(self.Count):
            length += self.SuccessInfoList[i].GetLength()
        return length
@@ -8853,79 +8800,27 @@
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteWORD(data, self.count)
        for i in range(self.count):
        data = CommFunc.WriteWORD(data, self.Count)
        for i in range(self.Count):
            data = CommFunc.WriteString(data, self.SuccessInfoList[i].GetLength(), self.SuccessInfoList[i].GetBuffer())
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                count:%d,
                                Count:%d,
                                SuccessInfoList:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.count,
                                self.Count,
                                "..."
                                )
        return DumpString
m_NAtagMCSuccessInfoList=tagMCSuccessInfoList()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCSuccessInfoList.Head.Cmd,m_NAtagMCSuccessInfoList.Head.SubCmd))] = m_NAtagMCSuccessInfoList
#------------------------------------------------------
# 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
m_NAtagSCSuccessInfoList=tagSCSuccessInfoList()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagSCSuccessInfoList.Head.Cmd,m_NAtagSCSuccessInfoList.Head.SubCmd))] = m_NAtagSCSuccessInfoList
#------------------------------------------------------