hxp
2025-05-30 fd85134c0d4ac18f7286d1d92eb84fa64c8defc5
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -2175,54 +2175,6 @@
#------------------------------------------------------
# AE 07 运镖时间倒计时结束 #tagCGTruckTimeEnd
class  tagCGTruckTimeEnd(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAE
        self.SubCmd = 0x07
        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 = 0xAE
        self.SubCmd = 0x07
        return
    def GetLength(self):
        return sizeof(tagCGTruckTimeEnd)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AE 07 运镖时间倒计时结束 //tagCGTruckTimeEnd:
                                Cmd:%s,
                                SubCmd:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd
                                )
        return DumpString
m_NAtagCGTruckTimeEnd=tagCGTruckTimeEnd()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGTruckTimeEnd.Cmd,m_NAtagCGTruckTimeEnd.SubCmd))] = m_NAtagCGTruckTimeEnd
#------------------------------------------------------
# B0 13 取消协助Boss #tagCGCancelAssistBoss
class  tagCGCancelAssistBoss(Structure):
@@ -5632,126 +5584,6 @@
#------------------------------------------------------
# A1 01 玩家电脑信息 #tagCMPCInfo
class  tagCMPCInfo(Structure):
    Head = tagHead()
    PCOSLen = 0    #(BYTE PCOSLen)
    PCOS = ""    #(String PCOS)// 操作系统
    ResolutionLen = 0    #(BYTE ResolutionLen)
    Resolution = ""    #(String Resolution)// 分辨率
    BrowserLen = 0    #(BYTE BrowserLen)
    Browser = ""    #(String Browser)// 浏览器
    ScribeTypeLen = 0    #(BYTE ScribeTypeLen)
    ScribeType = ""    #(String ScribeType)// 记录类型
    ScribeDataLen = 0    #(BYTE ScribeDataLen)
    ScribeData = ""    #(String ScribeData)// 记录扩展信息
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA1
        self.Head.SubCmd = 0x01
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.PCOSLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.PCOS,_pos = CommFunc.ReadString(_lpData, _pos,self.PCOSLen)
        self.ResolutionLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.Resolution,_pos = CommFunc.ReadString(_lpData, _pos,self.ResolutionLen)
        self.BrowserLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.Browser,_pos = CommFunc.ReadString(_lpData, _pos,self.BrowserLen)
        self.ScribeTypeLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.ScribeType,_pos = CommFunc.ReadString(_lpData, _pos,self.ScribeTypeLen)
        self.ScribeDataLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.ScribeData,_pos = CommFunc.ReadString(_lpData, _pos,self.ScribeDataLen)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA1
        self.Head.SubCmd = 0x01
        self.PCOSLen = 0
        self.PCOS = ""
        self.ResolutionLen = 0
        self.Resolution = ""
        self.BrowserLen = 0
        self.Browser = ""
        self.ScribeTypeLen = 0
        self.ScribeType = ""
        self.ScribeDataLen = 0
        self.ScribeData = ""
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += len(self.PCOS)
        length += 1
        length += len(self.Resolution)
        length += 1
        length += len(self.Browser)
        length += 1
        length += len(self.ScribeType)
        length += 1
        length += len(self.ScribeData)
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteBYTE(data, self.PCOSLen)
        data = CommFunc.WriteString(data, self.PCOSLen, self.PCOS)
        data = CommFunc.WriteBYTE(data, self.ResolutionLen)
        data = CommFunc.WriteString(data, self.ResolutionLen, self.Resolution)
        data = CommFunc.WriteBYTE(data, self.BrowserLen)
        data = CommFunc.WriteString(data, self.BrowserLen, self.Browser)
        data = CommFunc.WriteBYTE(data, self.ScribeTypeLen)
        data = CommFunc.WriteString(data, self.ScribeTypeLen, self.ScribeType)
        data = CommFunc.WriteBYTE(data, self.ScribeDataLen)
        data = CommFunc.WriteString(data, self.ScribeDataLen, self.ScribeData)
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                PCOSLen:%d,
                                PCOS:%s,
                                ResolutionLen:%d,
                                Resolution:%s,
                                BrowserLen:%d,
                                Browser:%s,
                                ScribeTypeLen:%d,
                                ScribeType:%s,
                                ScribeDataLen:%d,
                                ScribeData:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.PCOSLen,
                                self.PCOS,
                                self.ResolutionLen,
                                self.Resolution,
                                self.BrowserLen,
                                self.Browser,
                                self.ScribeTypeLen,
                                self.ScribeType,
                                self.ScribeDataLen,
                                self.ScribeData
                                )
        return DumpString
m_NAtagCMPCInfo=tagCMPCInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPCInfo.Head.Cmd,m_NAtagCMPCInfo.Head.SubCmd))] = m_NAtagCMPCInfo
#------------------------------------------------------
# A1 23 查询充值次数 #tagCMQueryCoinToGoldCount
class  tagCMQueryCoinToGoldCount(Structure):
@@ -6203,77 +6035,6 @@
m_NAtagCMViewBillboard=tagCMViewBillboard()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMViewBillboard.Cmd,m_NAtagCMViewBillboard.SubCmd))] = m_NAtagCMViewBillboard
#------------------------------------------------------
# A2 19 游戏建议收集 #tagCMAdviceSubmit
class  tagCMAdviceSubmit(Structure):
    Head = tagHead()
    Type = 0    #(BYTE Type)//提交类型
    Len = 0    #(WORD Len)
    Content = ""    #(String Content)//size = Len
    data = None
    def __init__(self):
        self.Clear()
        self.Head.Cmd = 0xA2
        self.Head.SubCmd = 0x19
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.Type,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.Len,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.Content,_pos = CommFunc.ReadString(_lpData, _pos,self.Len)
        return _pos
    def Clear(self):
        self.Head = tagHead()
        self.Head.Clear()
        self.Head.Cmd = 0xA2
        self.Head.SubCmd = 0x19
        self.Type = 0
        self.Len = 0
        self.Content = ""
        return
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += 2
        length += len(self.Content)
        return length
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteBYTE(data, self.Type)
        data = CommFunc.WriteWORD(data, self.Len)
        data = CommFunc.WriteString(data, self.Len, self.Content)
        return data
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                Type:%d,
                                Len:%d,
                                Content:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.Type,
                                self.Len,
                                self.Content
                                )
        return DumpString
m_NAtagCMAdviceSubmit=tagCMAdviceSubmit()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMAdviceSubmit.Head.Cmd,m_NAtagCMAdviceSubmit.Head.SubCmd))] = m_NAtagCMAdviceSubmit
#------------------------------------------------------
@@ -18393,318 +18154,6 @@
#------------------------------------------------------
# AE 05 自动运镖 #tagPyAutoTruck
class  tagPyAutoTruck(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("Type", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAE
        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 = 0xAE
        self.SubCmd = 0x05
        self.Type = 0
        return
    def GetLength(self):
        return sizeof(tagPyAutoTruck)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AE 05 自动运镖 //tagPyAutoTruck:
                                Cmd:%s,
                                SubCmd:%s,
                                Type:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.Type
                                )
        return DumpString
m_NAtagPyAutoTruck=tagPyAutoTruck()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagPyAutoTruck.Cmd,m_NAtagPyAutoTruck.SubCmd))] = m_NAtagPyAutoTruck
#------------------------------------------------------
# AE 02 购买镖车等级#tagPyBuyTruckLV
class  tagPyBuyTruckLV(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("TruckLV", c_ubyte),    #镖车等级
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAE
        self.SubCmd = 0x02
        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 = 0xAE
        self.SubCmd = 0x02
        self.TruckLV = 0
        return
    def GetLength(self):
        return sizeof(tagPyBuyTruckLV)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AE 02 购买镖车等级//tagPyBuyTruckLV:
                                Cmd:%s,
                                SubCmd:%s,
                                TruckLV:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.TruckLV
                                )
        return DumpString
m_NAtagPyBuyTruckLV=tagPyBuyTruckLV()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagPyBuyTruckLV.Cmd,m_NAtagPyBuyTruckLV.SubCmd))] = m_NAtagPyBuyTruckLV
#------------------------------------------------------
# AE 06 立即完成运镖 #tagPyOverTruck
class  tagPyOverTruck(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAE
        self.SubCmd = 0x06
        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 = 0xAE
        self.SubCmd = 0x06
        return
    def GetLength(self):
        return sizeof(tagPyOverTruck)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AE 06 立即完成运镖 //tagPyOverTruck:
                                Cmd:%s,
                                SubCmd:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd
                                )
        return DumpString
m_NAtagPyOverTruck=tagPyOverTruck()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagPyOverTruck.Cmd,m_NAtagPyOverTruck.SubCmd))] = m_NAtagPyOverTruck
#------------------------------------------------------
# AE 04 查询劫镖次数#tagPyQueryDestroyTruckCnt
class  tagPyQueryDestroyTruckCnt(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAE
        self.SubCmd = 0x04
        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 = 0xAE
        self.SubCmd = 0x04
        return
    def GetLength(self):
        return sizeof(tagPyQueryDestroyTruckCnt)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AE 04 查询劫镖次数//tagPyQueryDestroyTruckCnt:
                                Cmd:%s,
                                SubCmd:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd
                                )
        return DumpString
m_NAtagPyQueryDestroyTruckCnt=tagPyQueryDestroyTruckCnt()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagPyQueryDestroyTruckCnt.Cmd,m_NAtagPyQueryDestroyTruckCnt.SubCmd))] = m_NAtagPyQueryDestroyTruckCnt
#------------------------------------------------------
# AE 03 查询镖车等级#tagPyQueryTruckLV
class  tagPyQueryTruckLV(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAE
        self.SubCmd = 0x03
        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 = 0xAE
        self.SubCmd = 0x03
        return
    def GetLength(self):
        return sizeof(tagPyQueryTruckLV)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AE 03 查询镖车等级//tagPyQueryTruckLV:
                                Cmd:%s,
                                SubCmd:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd
                                )
        return DumpString
m_NAtagPyQueryTruckLV=tagPyQueryTruckLV()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagPyQueryTruckLV.Cmd,m_NAtagPyQueryTruckLV.SubCmd))] = m_NAtagPyQueryTruckLV
#------------------------------------------------------
# AE 01 刷新镖车等级#tagPyRefurbishTruckLV
class  tagPyRefurbishTruckLV(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("CostType", c_ubyte),    #消耗类型: 0-道具; 1-货币
                  ("MoneyType", c_ubyte),    #花费金钱类型
                  ("ItemID", c_int),    #使用的道具ID
                  ("IsAutoBuy", c_ubyte),    #道具刷新时是否自动购买; 0-否;1-是
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAE
        self.SubCmd = 0x01
        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 = 0xAE
        self.SubCmd = 0x01
        self.CostType = 0
        self.MoneyType = 0
        self.ItemID = 0
        self.IsAutoBuy = 0
        return
    def GetLength(self):
        return sizeof(tagPyRefurbishTruckLV)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AE 01 刷新镖车等级//tagPyRefurbishTruckLV:
                                Cmd:%s,
                                SubCmd:%s,
                                CostType:%d,
                                MoneyType:%d,
                                ItemID:%d,
                                IsAutoBuy:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.CostType,
                                self.MoneyType,
                                self.ItemID,
                                self.IsAutoBuy
                                )
        return DumpString
m_NAtagPyRefurbishTruckLV=tagPyRefurbishTruckLV()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagPyRefurbishTruckLV.Cmd,m_NAtagPyRefurbishTruckLV.SubCmd))] = m_NAtagPyRefurbishTruckLV
#------------------------------------------------------
# AF 01 领取合服当天登陆奖励 # tagCMGetMixLoginDayAward
class  tagCMGetMixLoginDayAward(Structure):
@@ -20967,6 +20416,114 @@
#------------------------------------------------------
# B2 23 仙树升级 #tagCMTreeLVUP
class  tagCMTreeLVUP(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("Type", c_ubyte),    # 0-开始升级(请求扣除消耗,开始升级倒计时);1-执行升级(前端自行倒计时,时间到后发送该类型)
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB2
        self.SubCmd = 0x23
        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 = 0xB2
        self.SubCmd = 0x23
        self.Type = 0
        return
    def GetLength(self):
        return sizeof(tagCMTreeLVUP)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B2 23 仙树升级 //tagCMTreeLVUP:
                                Cmd:%s,
                                SubCmd:%s,
                                Type:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.Type
                                )
        return DumpString
m_NAtagCMTreeLVUP=tagCMTreeLVUP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMTreeLVUP.Cmd,m_NAtagCMTreeLVUP.SubCmd))] = m_NAtagCMTreeLVUP
#------------------------------------------------------
# B2 24 使用仙树升级减时物品 #tagCMUseTreeLVUPTimeItem
class  tagCMUseTreeLVUPTimeItem(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("UseCount", c_int),    # 使用个数
                  ("IsAutoBuy", c_ubyte),    # 不足个数是否自动购买
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB2
        self.SubCmd = 0x24
        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 = 0xB2
        self.SubCmd = 0x24
        self.UseCount = 0
        self.IsAutoBuy = 0
        return
    def GetLength(self):
        return sizeof(tagCMUseTreeLVUPTimeItem)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B2 24 使用仙树升级减时物品 //tagCMUseTreeLVUPTimeItem:
                                Cmd:%s,
                                SubCmd:%s,
                                UseCount:%d,
                                IsAutoBuy:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.UseCount,
                                self.IsAutoBuy
                                )
        return DumpString
m_NAtagCMUseTreeLVUPTimeItem=tagCMUseTreeLVUPTimeItem()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMUseTreeLVUPTimeItem.Cmd,m_NAtagCMUseTreeLVUPTimeItem.SubCmd))] = m_NAtagCMUseTreeLVUPTimeItem
#------------------------------------------------------
# B3 17 情戒解锁 #tagCMLoveRingUnlock
class  tagCMLoveRingUnlock(Structure):