ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -6756,98 +6756,52 @@
# A3 30 装备神装进阶 #tagCMEquipEvolve
class  tagCMEquipEvolve(Structure):
    Head = tagHead()
    EquipIndex = 0    #(BYTE EquipIndex)// 要进阶的装备在装备背包中索引
    NeedEquipIDIndex = 0    #(BYTE NeedEquipIDIndex)// 所需固定装备B在背包中索引
    NeedItemIDIndexCnt = 0    #(BYTE NeedItemIDIndexCnt)// 附加材料在背包中索引个数
    NeedItemIDIndex = list()    #(vector<BYTE> NeedItemIDIndex)// 附加材料在背包的索引列表
    NeedSuitIndexCnt = 0    #(BYTE NeedSuitIndexCnt)// 所需套装材料在背包中索引个数
    NeedSuitIndex = list()    #(vector<BYTE> NeedSuitIndex)// 所需套装材料在背包的索引列表
    data = None
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("EquipIndex", c_ubyte),    # 要进阶的装备在装备背包中索引
                  ]
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x30
        self.Cmd = 0xA3
        self.SubCmd = 0x30
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
    def ReadData(self, stringData, _pos=0, _len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.EquipIndex,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.NeedEquipIDIndex,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.NeedItemIDIndexCnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.NeedItemIDIndexCnt):
            value,_pos=CommFunc.ReadBYTE(_lpData,_pos)
            self.NeedItemIDIndex.append(value)
        self.NeedSuitIndexCnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.NeedSuitIndexCnt):
            value,_pos=CommFunc.ReadBYTE(_lpData,_pos)
            self.NeedSuitIndex.append(value)
        return _pos
        memmove(addressof(self), stringData[_pos:], self.GetLength())
        return _pos + self.GetLength()
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x30
        self.Cmd = 0xA3
        self.SubCmd = 0x30
        self.EquipIndex = 0
        self.NeedEquipIDIndex = 0
        self.NeedItemIDIndexCnt = 0
        self.NeedItemIDIndex = list()
        self.NeedSuitIndexCnt = 0
        self.NeedSuitIndex = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += 1
        length += 1
        length += 1 * self.NeedItemIDIndexCnt
        length += 1
        length += 1 * self.NeedSuitIndexCnt
        return length
        return sizeof(tagCMEquipEvolve)
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteBYTE(data, self.EquipIndex)
        data = CommFunc.WriteBYTE(data, self.NeedEquipIDIndex)
        data = CommFunc.WriteBYTE(data, self.NeedItemIDIndexCnt)
        for i in range(self.NeedItemIDIndexCnt):
            data = CommFunc.WriteBYTE(data, self.NeedItemIDIndex[i])
        data = CommFunc.WriteBYTE(data, self.NeedSuitIndexCnt)
        for i in range(self.NeedSuitIndexCnt):
            data = CommFunc.WriteBYTE(data, self.NeedSuitIndex[i])
        return data
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                EquipIndex:%d,
                                NeedEquipIDIndex:%d,
                                NeedItemIDIndexCnt:%d,
                                NeedItemIDIndex:%s,
                                NeedSuitIndexCnt:%d,
                                NeedSuitIndex:%s
        DumpString = '''// A3 30 装备神装进阶 //tagCMEquipEvolve:
                                Cmd:%s,
                                SubCmd:%s,
                                EquipIndex:%d
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.EquipIndex,
                                self.NeedEquipIDIndex,
                                self.NeedItemIDIndexCnt,
                                "...",
                                self.NeedSuitIndexCnt,
                                "..."
                                self.Cmd,
                                self.SubCmd,
                                self.EquipIndex
                                )
        return DumpString
m_NAtagCMEquipEvolve=tagCMEquipEvolve()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMEquipEvolve.Head.Cmd,m_NAtagCMEquipEvolve.Head.SubCmd))] = m_NAtagCMEquipEvolve
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMEquipEvolve.Cmd,m_NAtagCMEquipEvolve.SubCmd))] = m_NAtagCMEquipEvolve
#------------------------------------------------------
@@ -6956,6 +6910,73 @@
m_NAtagCMEquipPlusEvolve=tagCMEquipPlusEvolve()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMEquipPlusEvolve.Cmd,m_NAtagCMEquipPlusEvolve.SubCmd))] = m_NAtagCMEquipPlusEvolve
#------------------------------------------------------
# A3 31 装备神装拆解 #tagCMEquipShenDecompose
class  tagCMEquipShenDecompose(Structure):
    Head = tagHead()
    Count = 0    #(BYTE Count)//所在背包索引的数量
    IndexList = list()    #(vector<WORD> IndexList)//所在背包索引列表
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x31
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.Count):
            value,_pos=CommFunc.ReadWORD(_lpData,_pos)
            self.IndexList.append(value)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x31
        self.Count = 0
        self.IndexList = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += 2 * self.Count
        return length
    def GetBuffer(self):
        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.WriteWORD(data, self.IndexList[i])
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                Count:%d,
                                IndexList:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.Count,
                                "..."
                                )
        return DumpString
m_NAtagCMEquipShenDecompose=tagCMEquipShenDecompose()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMEquipShenDecompose.Head.Cmd,m_NAtagCMEquipShenDecompose.Head.SubCmd))] = m_NAtagCMEquipShenDecompose
#------------------------------------------------------
@@ -7467,6 +7488,66 @@
m_NAtagCMLingQiEquipBreak=tagCMLingQiEquipBreak()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMLingQiEquipBreak.Cmd,m_NAtagCMLingQiEquipBreak.SubCmd))] = m_NAtagCMLingQiEquipBreak
#------------------------------------------------------
# A3 27 灵器培养 #tagCMLingQiTrain
class  tagCMLingQiTrain(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("EquipPlace", c_ubyte),    #灵器装备位
                  ("TrainType", c_ubyte),    #培养类型: 1-基础培养,2-特殊培养,3-百分比培养
                  ("UseItemCnt", c_ushort),    #消耗材料个数
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA3
        self.SubCmd = 0x27
        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 = 0x27
        self.EquipPlace = 0
        self.TrainType = 0
        self.UseItemCnt = 0
        return
    def GetLength(self):
        return sizeof(tagCMLingQiTrain)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A3 27 灵器培养 //tagCMLingQiTrain:
                                Cmd:%s,
                                SubCmd:%s,
                                EquipPlace:%d,
                                TrainType:%d,
                                UseItemCnt:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.EquipPlace,
                                self.TrainType,
                                self.UseItemCnt
                                )
        return DumpString
m_NAtagCMLingQiTrain=tagCMLingQiTrain()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMLingQiTrain.Cmd,m_NAtagCMLingQiTrain.SubCmd))] = m_NAtagCMLingQiTrain
#------------------------------------------------------
@@ -10317,6 +10398,7 @@
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("Index", c_ubyte),    # 奖励索引,其他按顺序
                  ("IsDaily", c_ubyte),    # 是否领取每日日常的奖励,是发1,如果领取定制创角天奖励的则默认发0即可
                  ]
    def __init__(self):
@@ -10334,6 +10416,7 @@
        self.Cmd = 0xA5
        self.SubCmd = 0x06
        self.Index = 0
        self.IsDaily = 0
        return
    def GetLength(self):
@@ -10346,12 +10429,14 @@
        DumpString = '''//A5 06 玩家领取在线奖励 //tagCMGetOnlinePrize:
                                Cmd:%s,
                                SubCmd:%s,
                                Index:%d
                                Index:%d,
                                IsDaily:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.Index
                                self.Index,
                                self.IsDaily
                                )
        return DumpString
@@ -10706,6 +10791,62 @@
m_NAtagCMHorsePetSkinSelect=tagCMHorsePetSkinSelect()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMHorsePetSkinSelect.Cmd,m_NAtagCMHorsePetSkinSelect.SubCmd))] = m_NAtagCMHorsePetSkinSelect
#------------------------------------------------------
# A5 31 坐骑培养 #tagCMHorseTrain
class  tagCMHorseTrain(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("TrainType", c_ubyte),    #培养类型: 1-基础培养,2-特殊培养,3-百分比培养
                  ("UseItemCnt", c_ushort),    #消耗材料个数
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA5
        self.SubCmd = 0x31
        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 = 0xA5
        self.SubCmd = 0x31
        self.TrainType = 0
        self.UseItemCnt = 0
        return
    def GetLength(self):
        return sizeof(tagCMHorseTrain)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A5 31 坐骑培养 //tagCMHorseTrain:
                                Cmd:%s,
                                SubCmd:%s,
                                TrainType:%d,
                                UseItemCnt:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.TrainType,
                                self.UseItemCnt
                                )
        return DumpString
m_NAtagCMHorseTrain=tagCMHorseTrain()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMHorseTrain.Cmd,m_NAtagCMHorseTrain.SubCmd))] = m_NAtagCMHorseTrain
#------------------------------------------------------
@@ -13009,6 +13150,62 @@
#------------------------------------------------------
# A7 05 宠物培养 #tagCMPetTrain
class  tagCMPetTrain(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("TrainType", c_ubyte),    #培养类型: 1-基础培养,2-特殊培养,3-百分比培养
                  ("UseItemCnt", c_ushort),    #消耗材料个数
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA7
        self.SubCmd = 0x05
        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 = 0xA7
        self.SubCmd = 0x05
        self.TrainType = 0
        self.UseItemCnt = 0
        return
    def GetLength(self):
        return sizeof(tagCMPetTrain)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A7 05 宠物培养 //tagCMPetTrain:
                                Cmd:%s,
                                SubCmd:%s,
                                TrainType:%d,
                                UseItemCnt:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.TrainType,
                                self.UseItemCnt
                                )
        return DumpString
m_NAtagCMPetTrain=tagCMPetTrain()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPetTrain.Cmd,m_NAtagCMPetTrain.SubCmd))] = m_NAtagCMPetTrain
#------------------------------------------------------
# A8 04 购买VIP礼包 #tagCMBuyVIPItem
class  tagCMBuyVIPItem(Structure):