hxp
2025-10-22 cc67f06bbf1bd011da40d20456d36ab2f0b667f9
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -10631,208 +10631,6 @@
#------------------------------------------------------
# A4 06 家族仓库物品信息 #tagGCFamilyStoreItemInfo
class  tagGCFamilyStoreItem(Structure):
    Index = 0    #(BYTE Index)// 仓库格子索引,从0开始代表第一格
    ItemID = 0    #(DWORD ItemID)// 物品ID
    ItemDataLen = 0    #(WORD ItemDataLen)
    ItemData = ""    #(String ItemData)//size = ItemDataLen
    data = None
    def __init__(self):
        self.Clear()
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        self.Index,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
        self.ItemDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.ItemData,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataLen)
        return _pos
    def Clear(self):
        self.Index = 0
        self.ItemID = 0
        self.ItemDataLen = 0
        self.ItemData = ""
        return
    def GetLength(self):
        length = 0
        length += 1
        length += 4
        length += 2
        length += len(self.ItemData)
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteBYTE(data, self.Index)
        data = CommFunc.WriteDWORD(data, self.ItemID)
        data = CommFunc.WriteWORD(data, self.ItemDataLen)
        data = CommFunc.WriteString(data, self.ItemDataLen, self.ItemData)
        return data
    def OutputString(self):
        DumpString = '''
                                Index:%d,
                                ItemID:%d,
                                ItemDataLen:%d,
                                ItemData:%s
                                '''\
                                %(
                                self.Index,
                                self.ItemID,
                                self.ItemDataLen,
                                self.ItemData
                                )
        return DumpString
class  tagGCFamilyStoreItemInfo(Structure):
    Head = tagHead()
    Count = 0    #(BYTE Count)//数量
    StoreItemList = list()    #(vector<tagGCFamilyStoreItem> StoreItemList)//size = Count
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA4
        self.Head.SubCmd = 0x06
        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):
            temStoreItemList = tagGCFamilyStoreItem()
            _pos = temStoreItemList.ReadData(_lpData, _pos)
            self.StoreItemList.append(temStoreItemList)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA4
        self.Head.SubCmd = 0x06
        self.Count = 0
        self.StoreItemList = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        for i in range(self.Count):
            length += self.StoreItemList[i].GetLength()
        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.WriteString(data, self.StoreItemList[i].GetLength(), self.StoreItemList[i].GetBuffer())
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                Count:%d,
                                StoreItemList:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.Count,
                                "..."
                                )
        return DumpString
m_NAtagGCFamilyStoreItemInfo=tagGCFamilyStoreItemInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCFamilyStoreItemInfo.Head.Cmd,m_NAtagGCFamilyStoreItemInfo.Head.SubCmd))] = m_NAtagGCFamilyStoreItemInfo
#------------------------------------------------------
# A4 07 家族仓库物品清除 #tagGCFamilyStoreItemClear
class  tagGCFamilyStoreItemClear(Structure):
    Head = tagHead()
    ClearType = 0    #(BYTE ClearType)//0-指定格子清除; 1-所有物品清除
    IndexCount = 0    #(BYTE IndexCount)
    IndexList = list()    #(vector<BYTE> IndexList)//清除的格子索引, 仅指定格子清除时有效,从0开始代表第一格
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA4
        self.Head.SubCmd = 0x07
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.ClearType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.IndexCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.IndexCount):
            value,_pos=CommFunc.ReadBYTE(_lpData,_pos)
            self.IndexList.append(value)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA4
        self.Head.SubCmd = 0x07
        self.ClearType = 0
        self.IndexCount = 0
        self.IndexList = list()
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += 1
        length += 1 * self.IndexCount
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteBYTE(data, self.ClearType)
        data = CommFunc.WriteBYTE(data, self.IndexCount)
        for i in range(self.IndexCount):
            data = CommFunc.WriteBYTE(data, self.IndexList[i])
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                ClearType:%d,
                                IndexCount:%d,
                                IndexList:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.ClearType,
                                self.IndexCount,
                                "..."
                                )
        return DumpString
m_NAtagGCFamilyStoreItemClear=tagGCFamilyStoreItemClear()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCFamilyStoreItemClear.Head.Cmd,m_NAtagGCFamilyStoreItemClear.Head.SubCmd))] = m_NAtagGCFamilyStoreItemClear
#------------------------------------------------------
# A4 09 家族守卫人皇信息通知 #tagGCFamilySWRHInfo
class  tagGCFamilySWRHInfo(Structure):