hxp
2023-12-18 acf05d7528bcacce32fc20fc5e6ab11110de1cf4
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -11954,6 +11954,58 @@
#------------------------------------------------------
# A5 35 坐骑升星 #tagCMHorseStarUp
class  tagCMHorseStarUp(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("HorseID", c_int),    #坐骑ID,对应坐骑表ID
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA5
        self.SubCmd = 0x35
        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 = 0x35
        self.HorseID = 0
        return
    def GetLength(self):
        return sizeof(tagCMHorseStarUp)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A5 35 坐骑升星 //tagCMHorseStarUp:
                                Cmd:%s,
                                SubCmd:%s,
                                HorseID:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.HorseID
                                )
        return DumpString
m_NAtagCMHorseStarUp=tagCMHorseStarUp()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMHorseStarUp.Cmd,m_NAtagCMHorseStarUp.SubCmd))] = m_NAtagCMHorseStarUp
#------------------------------------------------------
# A5 31 坐骑培养 #tagCMHorseTrain
class  tagCMHorseTrain(Structure):
@@ -13425,6 +13477,58 @@
#------------------------------------------------------
# A5 36 称号升星 #tagCMTitleStarUp
class  tagCMTitleStarUp(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("TitleID", c_int),    #称号ID
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA5
        self.SubCmd = 0x36
        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 = 0x36
        self.TitleID = 0
        return
    def GetLength(self):
        return sizeof(tagCMTitleStarUp)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A5 36 称号升星 //tagCMTitleStarUp:
                                Cmd:%s,
                                SubCmd:%s,
                                TitleID:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.TitleID
                                )
        return DumpString
m_NAtagCMTitleStarUp=tagCMTitleStarUp()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMTitleStarUp.Cmd,m_NAtagCMTitleStarUp.SubCmd))] = m_NAtagCMTitleStarUp
#------------------------------------------------------
# A5 11 试用首充武器 #tagCMTryFirstGoldItem
class  tagCMTryFirstGoldItem(Structure):
@@ -13749,6 +13853,66 @@
#------------------------------------------------------
# A6 15 传功操作 #tagCMChuangongOP
class  tagCMChuangongOP(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("OPType", c_ubyte),    # 操作类型:1-邀请;2-回应;3-领奖;
                  ("PlayerID", c_int),    # 目标玩家ID;回应时为邀请方玩家ID
                  ("OPData", c_ubyte),    # 操作数据,可选:回应时为是否同意
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA6
        self.SubCmd = 0x15
        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 = 0xA6
        self.SubCmd = 0x15
        self.OPType = 0
        self.PlayerID = 0
        self.OPData = 0
        return
    def GetLength(self):
        return sizeof(tagCMChuangongOP)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A6 15 传功操作 //tagCMChuangongOP:
                                Cmd:%s,
                                SubCmd:%s,
                                OPType:%d,
                                PlayerID:%d,
                                OPData:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.OPType,
                                self.PlayerID,
                                self.OPData
                                )
        return DumpString
m_NAtagCMChuangongOP=tagCMChuangongOP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMChuangongOP.Cmd,m_NAtagCMChuangongOP.SubCmd))] = m_NAtagCMChuangongOP
#------------------------------------------------------
# A6 11 家族改名 #tagCMRenameFamily
class  tagCMRenameFamily(Structure):
@@ -13897,6 +14061,114 @@
#------------------------------------------------------
# A6 13 家族事务操作 #tagCMFamilyAffairOP
class  tagCMFamilyAffairOP(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("OPType", c_ubyte),    # 操作类型:1-刷新事务;2-开始事务;3-领取事务奖励;
                  ("AffairID", c_ushort),    # 事务ID,可选
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA6
        self.SubCmd = 0x13
        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 = 0xA6
        self.SubCmd = 0x13
        self.OPType = 0
        self.AffairID = 0
        return
    def GetLength(self):
        return sizeof(tagCMFamilyAffairOP)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A6 13 家族事务操作 //tagCMFamilyAffairOP:
                                Cmd:%s,
                                SubCmd:%s,
                                OPType:%d,
                                AffairID:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.OPType,
                                self.AffairID
                                )
        return DumpString
m_NAtagCMFamilyAffairOP=tagCMFamilyAffairOP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFamilyAffairOP.Cmd,m_NAtagCMFamilyAffairOP.SubCmd))] = m_NAtagCMFamilyAffairOP
#------------------------------------------------------
# A6 12 家族捐献货币 #tagCMFamilyMoneyDonate
class  tagCMFamilyMoneyDonate(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("MoneyType", c_ubyte),    # 捐献货币类型
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA6
        self.SubCmd = 0x12
        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 = 0xA6
        self.SubCmd = 0x12
        self.MoneyType = 0
        return
    def GetLength(self):
        return sizeof(tagCMFamilyMoneyDonate)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A6 12 家族捐献货币 //tagCMFamilyMoneyDonate:
                                Cmd:%s,
                                SubCmd:%s,
                                MoneyType:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.MoneyType
                                )
        return DumpString
m_NAtagCMFamilyMoneyDonate=tagCMFamilyMoneyDonate()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFamilyMoneyDonate.Cmd,m_NAtagCMFamilyMoneyDonate.SubCmd))] = m_NAtagCMFamilyMoneyDonate
#------------------------------------------------------
# A6 09  家族仓库捐赠物品 #tagCMFamilyStoreDonate
class  tagCMFamilyStoreDonate(Structure):
@@ -14006,6 +14278,66 @@
m_NAtagCMFamilyStoreExchange=tagCMFamilyStoreExchange()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFamilyStoreExchange.Cmd,m_NAtagCMFamilyStoreExchange.SubCmd))] = m_NAtagCMFamilyStoreExchange
#------------------------------------------------------
# A6 14 家族阵法升级 #tagCMFamilyZhenfaLVUP
class  tagCMFamilyZhenfaLVUP(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("ZhenfaType", c_ubyte),    # 阵法类型
                  ("ItemID", c_int),    # 消耗的物品ID
                  ("ItemCount", c_ushort),    # 消耗个数,默认1
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA6
        self.SubCmd = 0x14
        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 = 0xA6
        self.SubCmd = 0x14
        self.ZhenfaType = 0
        self.ItemID = 0
        self.ItemCount = 0
        return
    def GetLength(self):
        return sizeof(tagCMFamilyZhenfaLVUP)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A6 14 家族阵法升级 //tagCMFamilyZhenfaLVUP:
                                Cmd:%s,
                                SubCmd:%s,
                                ZhenfaType:%d,
                                ItemID:%d,
                                ItemCount:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.ZhenfaType,
                                self.ItemID,
                                self.ItemCount
                                )
        return DumpString
m_NAtagCMFamilyZhenfaLVUP=tagCMFamilyZhenfaLVUP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFamilyZhenfaLVUP.Cmd,m_NAtagCMFamilyZhenfaLVUP.SubCmd))] = m_NAtagCMFamilyZhenfaLVUP
#------------------------------------------------------
@@ -14366,6 +14698,58 @@
#------------------------------------------------------
# A7 06 宠物升星 #tagCMPetStarUp
class  tagCMPetStarUp(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("PetItemIndex", c_ubyte),    #宠物数据背包索引
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA7
        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 = 0xA7
        self.SubCmd = 0x06
        self.PetItemIndex = 0
        return
    def GetLength(self):
        return sizeof(tagCMPetStarUp)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A7 06 宠物升星 //tagCMPetStarUp:
                                Cmd:%s,
                                SubCmd:%s,
                                PetItemIndex:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.PetItemIndex
                                )
        return DumpString
m_NAtagCMPetStarUp=tagCMPetStarUp()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPetStarUp.Cmd,m_NAtagCMPetStarUp.SubCmd))] = m_NAtagCMPetStarUp
#------------------------------------------------------
# A7 05 宠物培养 #tagCMPetTrain
class  tagCMPetTrain(Structure):
@@ -14675,6 +15059,118 @@
m_NAtagCMVIPKillNPCLVInfoSwitch=tagCMVIPKillNPCLVInfoSwitch()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMVIPKillNPCLVInfoSwitch.Cmd,m_NAtagCMVIPKillNPCLVInfoSwitch.SubCmd))] = m_NAtagCMVIPKillNPCLVInfoSwitch
#------------------------------------------------------
# AA 24 Boss历练领奖 #tagCMActBossTrialGetAward
class  tagCMActBossTrialGetAward(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("ActNum", c_ubyte),    #活动编号
                  ("SubmitCount", c_ushort),    #领取凭证个数对应奖励
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAA
        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 = 0xAA
        self.SubCmd = 0x24
        self.ActNum = 0
        self.SubmitCount = 0
        return
    def GetLength(self):
        return sizeof(tagCMActBossTrialGetAward)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AA 24 Boss历练领奖 //tagCMActBossTrialGetAward:
                                Cmd:%s,
                                SubCmd:%s,
                                ActNum:%d,
                                SubmitCount:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.ActNum,
                                self.SubmitCount
                                )
        return DumpString
m_NAtagCMActBossTrialGetAward=tagCMActBossTrialGetAward()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMActBossTrialGetAward.Cmd,m_NAtagCMActBossTrialGetAward.SubCmd))] = m_NAtagCMActBossTrialGetAward
#------------------------------------------------------
# AA 23 Boss历练提交凭证 #tagCMActBossTrialSubmit
class  tagCMActBossTrialSubmit(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("ActNum", c_ubyte),    #活动编号
                  ("SubmitCount", c_ushort),    #提交凭证个数
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAA
        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 = 0xAA
        self.SubCmd = 0x23
        self.ActNum = 0
        self.SubmitCount = 0
        return
    def GetLength(self):
        return sizeof(tagCMActBossTrialSubmit)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AA 23 Boss历练提交凭证 //tagCMActBossTrialSubmit:
                                Cmd:%s,
                                SubCmd:%s,
                                ActNum:%d,
                                SubmitCount:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.ActNum,
                                self.SubmitCount
                                )
        return DumpString
m_NAtagCMActBossTrialSubmit=tagCMActBossTrialSubmit()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMActBossTrialSubmit.Cmd,m_NAtagCMActBossTrialSubmit.SubCmd))] = m_NAtagCMActBossTrialSubmit
#------------------------------------------------------
@@ -17739,6 +18235,118 @@
#------------------------------------------------------
# B2 21 玩家砍树 #tagCMCutTree
class  tagCMCutTree(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("CutCount", c_ubyte),    # 砍几次,默认1
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB2
        self.SubCmd = 0x21
        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 = 0x21
        self.CutCount = 0
        return
    def GetLength(self):
        return sizeof(tagCMCutTree)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B2 21 玩家砍树 //tagCMCutTree:
                                Cmd:%s,
                                SubCmd:%s,
                                CutCount:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.CutCount
                                )
        return DumpString
m_NAtagCMCutTree=tagCMCutTree()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMCutTree.Cmd,m_NAtagCMCutTree.SubCmd))] = m_NAtagCMCutTree
#------------------------------------------------------
# B2 22 砍树装备操作 #tagCMCutTreeEquipOP
class  tagCMCutTreeEquipOP(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("ItemIndex", c_ubyte),    # 物品在砍树背包的索引
                  ("OPType", c_ubyte),    # 操作类型:1-替换;2-分解
                  ("AutoDecompose", c_ubyte),    # 替换后是否自动分解原装备:0否1是,仅替换操作下有用
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB2
        self.SubCmd = 0x22
        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 = 0x22
        self.ItemIndex = 0
        self.OPType = 0
        self.AutoDecompose = 0
        return
    def GetLength(self):
        return sizeof(tagCMCutTreeEquipOP)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B2 22 砍树装备操作 //tagCMCutTreeEquipOP:
                                Cmd:%s,
                                SubCmd:%s,
                                ItemIndex:%d,
                                OPType:%d,
                                AutoDecompose:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.ItemIndex,
                                self.OPType,
                                self.AutoDecompose
                                )
        return DumpString
m_NAtagCMCutTreeEquipOP=tagCMCutTreeEquipOP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMCutTreeEquipOP.Cmd,m_NAtagCMCutTreeEquipOP.SubCmd))] = m_NAtagCMCutTreeEquipOP
#------------------------------------------------------
# B2 12 领取功能系统特权奖励 #tagCMGetFuncSysPrivilegeAward
class  tagCMGetFuncSysPrivilegeAward(Structure):
@@ -18398,6 +19006,58 @@
m_NAtagCMTJGnpc=tagCMTJGnpc()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMTJGnpc.Cmd,m_NAtagCMTJGnpc.SubCmd))] = m_NAtagCMTJGnpc
#------------------------------------------------------
# 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
#------------------------------------------------------
@@ -19861,6 +20521,66 @@
#------------------------------------------------------
# B4 10 回合制战斗 #tagCMTurnFight
class  tagCMTurnFight(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("MapID", c_int),    # 自定义地图ID,可用于绑定战斗场景功能(如野外关卡,爬塔功能,竞技场等)
                  ("FuncLineID", c_ushort),
                  ("PlayerID", c_int),    # 对应玩家ID,可为0,某些功能可能有用,如竞技场
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB4
        self.SubCmd = 0x10
        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 = 0xB4
        self.SubCmd = 0x10
        self.MapID = 0
        self.FuncLineID = 0
        self.PlayerID = 0
        return
    def GetLength(self):
        return sizeof(tagCMTurnFight)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B4 10 回合制战斗 //tagCMTurnFight:
                                Cmd:%s,
                                SubCmd:%s,
                                MapID:%d,
                                FuncLineID:%d,
                                PlayerID:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.MapID,
                                self.FuncLineID,
                                self.PlayerID
                                )
        return DumpString
m_NAtagCMTurnFight=tagCMTurnFight()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMTurnFight.Cmd,m_NAtagCMTurnFight.SubCmd))] = m_NAtagCMTurnFight
#------------------------------------------------------
# B5 14 拍卖行竞价物品 #tagCMBiddingAuctionItem
class  tagCMBiddingAuctionItem(Structure):