ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -5887,6 +5887,54 @@
#------------------------------------------------------
# A1 09 同步打包玩家数据 #tagCMSycnPlayerPackData
class  tagCMSycnPlayerPackData(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA1
        self.SubCmd = 0x09
        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 = 0xA1
        self.SubCmd = 0x09
        return
    def GetLength(self):
        return sizeof(tagCMSycnPlayerPackData)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A1 09 同步打包玩家数据 //tagCMSycnPlayerPackData:
                                Cmd:%s,
                                SubCmd:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd
                                )
        return DumpString
m_NAtagCMSycnPlayerPackData=tagCMSycnPlayerPackData()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMSycnPlayerPackData.Cmd,m_NAtagCMSycnPlayerPackData.SubCmd))] = m_NAtagCMSycnPlayerPackData
#------------------------------------------------------
#A1 03 设置是否成年 #tagCMAdult
class  tagCMAdult(Structure):
@@ -7553,7 +7601,7 @@
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("RealmDifficulty", c_ubyte),    #境界难度 = 100 + 所选境界等级,如境界13,则发113
                  ("RealmDifficulty", c_ushort),    #境界难度 = 1000 + 所选境界等级,如境界13,则发1013
                  ]
    def __init__(self):
@@ -7842,6 +7890,7 @@
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("CountID", c_int),    # 计数ID,客户端与策划约定,可以是NPCID或其他
                  ("Type", c_ubyte),    # 1-杀怪
                  ]
    def __init__(self):
@@ -7859,6 +7908,7 @@
        self.Cmd = 0xA2
        self.SubCmd = 0x25
        self.CountID = 0
        self.Type = 0
        return
    def GetLength(self):
@@ -7871,12 +7921,14 @@
        DumpString = '''//A2 25 客户端任务计数 // tagCMClientTaskCount:
                                Cmd:%s,
                                SubCmd:%s,
                                CountID:%d
                                CountID:%d,
                                Type:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.CountID
                                self.CountID,
                                self.Type
                                )
        return DumpString
@@ -15591,6 +15643,58 @@
#------------------------------------------------------
# A6 16 珍宝阁操作 #tagCMZhenbaogeOP
class  tagCMZhenbaogeOP(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("OpType", c_ubyte),    # 操作:0-砍价;1-购买
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA6
        self.SubCmd = 0x16
        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 = 0x16
        self.OpType = 0
        return
    def GetLength(self):
        return sizeof(tagCMZhenbaogeOP)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A6 16 珍宝阁操作 //tagCMZhenbaogeOP:
                                Cmd:%s,
                                SubCmd:%s,
                                OpType:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.OpType
                                )
        return DumpString
m_NAtagCMZhenbaogeOP=tagCMZhenbaogeOP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMZhenbaogeOP.Cmd,m_NAtagCMZhenbaogeOP.SubCmd))] = m_NAtagCMZhenbaogeOP
#------------------------------------------------------
# A7 02 宠物激活 #tagCMActivatePet
class  tagCMActivatePet(Structure):
@@ -16604,6 +16708,70 @@
m_NAtagCMActGodGiftReset=tagCMActGodGiftReset()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMActGodGiftReset.Cmd,m_NAtagCMActGodGiftReset.SubCmd))] = m_NAtagCMActGodGiftReset
#------------------------------------------------------
# AA 25 炼器操作 #tagCMActLianqiOP
class  tagCMActLianqiOP(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("OPType", c_ubyte),    # 1-移动;2-使用道具;3-重新开始;4-领取等级奖励
                  ("OPValue", c_int),    # 移动时-发1上2下3左4右;使用道具时-发使用个数*10+道具ID所在配置索引;等级奖励时-发领取的奖励等级
                  ("OPValue2", c_int),    # 使用道具时-发选中格子A的行列值 行*10+列
                  ("OPValue3", c_int),    # 使用道具时-发选中格子B的行列值 行*10+列
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xAA
        self.SubCmd = 0x25
        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 = 0x25
        self.OPType = 0
        self.OPValue = 0
        self.OPValue2 = 0
        self.OPValue3 = 0
        return
    def GetLength(self):
        return sizeof(tagCMActLianqiOP)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// AA 25 炼器操作 //tagCMActLianqiOP:
                                Cmd:%s,
                                SubCmd:%s,
                                OPType:%d,
                                OPValue:%d,
                                OPValue2:%d,
                                OPValue3:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.OPType,
                                self.OPValue,
                                self.OPValue2,
                                self.OPValue3
                                )
        return DumpString
m_NAtagCMActLianqiOP=tagCMActLianqiOP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMActLianqiOP.Cmd,m_NAtagCMActLianqiOP.SubCmd))] = m_NAtagCMActLianqiOP
#------------------------------------------------------
@@ -18884,6 +19052,62 @@
#------------------------------------------------------
# B1 08 快速一键过关副本 #tagCMFBQuickPass
class  tagCMFBQuickPass(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("MapID", c_int),
                  ("LineID", c_ushort),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB1
        self.SubCmd = 0x08
        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 = 0xB1
        self.SubCmd = 0x08
        self.MapID = 0
        self.LineID = 0
        return
    def GetLength(self):
        return sizeof(tagCMFBQuickPass)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B1 08 快速一键过关副本 //tagCMFBQuickPass:
                                Cmd:%s,
                                SubCmd:%s,
                                MapID:%d,
                                LineID:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.MapID,
                                self.LineID
                                )
        return DumpString
m_NAtagCMFBQuickPass=tagCMFBQuickPass()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFBQuickPass.Cmd,m_NAtagCMFBQuickPass.SubCmd))] = m_NAtagCMFBQuickPass
#------------------------------------------------------
# B1 06 助战召唤 #tagCMHelpBattleCall
class  tagCMHelpBattleCall(Structure):
@@ -20774,6 +20998,70 @@
m_NAtagCMSendGifts=tagCMSendGifts()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMSendGifts.Cmd,m_NAtagCMSendGifts.SubCmd))] = m_NAtagCMSendGifts
#------------------------------------------------------
# B4 11 镜像战斗 #tagCMMirrorFight
class  tagCMMirrorFight(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("MapID", c_int),    # 自定义地图ID,如竞技场等
                  ("FuncLineID", c_ushort),
                  ("TagPlayeID", c_int),    # 目标玩家ID,支持跨服玩家ID
                  ("CmdType", c_ubyte),    # 命令类型: 0-创建战斗;1-开始战斗;2-战斗中跳过;3-不创建战斗直接得结果
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB4
        self.SubCmd = 0x11
        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 = 0x11
        self.MapID = 0
        self.FuncLineID = 0
        self.TagPlayeID = 0
        self.CmdType = 0
        return
    def GetLength(self):
        return sizeof(tagCMMirrorFight)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B4 11 镜像战斗 //tagCMMirrorFight:
                                Cmd:%s,
                                SubCmd:%s,
                                MapID:%d,
                                FuncLineID:%d,
                                TagPlayeID:%d,
                                CmdType:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.MapID,
                                self.FuncLineID,
                                self.TagPlayeID,
                                self.CmdType
                                )
        return DumpString
m_NAtagCMMirrorFight=tagCMMirrorFight()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMMirrorFight.Cmd,m_NAtagCMMirrorFight.SubCmd))] = m_NAtagCMMirrorFight
#------------------------------------------------------
@@ -22821,7 +23109,7 @@
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("Type", c_ubyte),    # 0-取消匹配; 1-进行匹配
                  ("Type", c_ubyte),    # 0-查询匹配;1-刷新匹配
                  ]
    def __init__(self):
@@ -22874,6 +23162,7 @@
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("IsWin", c_ubyte),    #是否获胜
                  ("TagPlayerID", c_int),    #目标玩家ID
                  ]
    def __init__(self):
@@ -22891,6 +23180,7 @@
        self.Cmd = 0xC1
        self.SubCmd = 0x08
        self.IsWin = 0
        self.TagPlayerID = 0
        return
    def GetLength(self):
@@ -22903,12 +23193,14 @@
        DumpString = '''// C1 08 跨服PK挑战机器人结算 //tagCMCrossRealmPKRobotOver:
                                Cmd:%s,
                                SubCmd:%s,
                                IsWin:%d
                                IsWin:%d,
                                TagPlayerID:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.IsWin
                                self.IsWin,
                                self.TagPlayerID
                                )
        return DumpString