ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -7601,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):
@@ -7890,6 +7890,7 @@
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("CountID", c_int),    # 计数ID,客户端与策划约定,可以是NPCID或其他
                  ("Type", c_ubyte),    # 1-杀怪
                  ]
    def __init__(self):
@@ -7907,6 +7908,7 @@
        self.Cmd = 0xA2
        self.SubCmd = 0x25
        self.CountID = 0
        self.Type = 0
        return
    def GetLength(self):
@@ -7919,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
@@ -8186,6 +8190,62 @@
m_NAtagCMAddFruitUseLimit=tagCMAddFruitUseLimit()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMAddFruitUseLimit.Cmd,m_NAtagCMAddFruitUseLimit.SubCmd))] = m_NAtagCMAddFruitUseLimit
#------------------------------------------------------
# A3 10 购买商城物品 #tagCMBuyItem
class  tagCMBuyItem(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("BuyItemIndex", c_ushort),    #购买的物品索引
                  ("BuyCount", c_int),    #购买数量
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xA3
        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 = 0xA3
        self.SubCmd = 0x10
        self.BuyItemIndex = 0
        self.BuyCount = 0
        return
    def GetLength(self):
        return sizeof(tagCMBuyItem)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// A3 10 购买商城物品 //tagCMBuyItem:
                                Cmd:%s,
                                SubCmd:%s,
                                BuyItemIndex:%d,
                                BuyCount:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.BuyItemIndex,
                                self.BuyCount
                                )
        return DumpString
m_NAtagCMBuyItem=tagCMBuyItem()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMBuyItem.Cmd,m_NAtagCMBuyItem.SubCmd))] = m_NAtagCMBuyItem
#------------------------------------------------------
@@ -16707,6 +16767,70 @@
#------------------------------------------------------
# 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
#------------------------------------------------------
# AA 12 选择转盘活动物品 #tagCMActTurntableChooseItem
class  tagCMActTurntableChooseItem(Structure):
@@ -18368,6 +18492,54 @@
#------------------------------------------------------
# B0 35 福地管家免费试用 #tagCMMineHouseKeeperFreeUse
class  tagCMMineHouseKeeperFreeUse(Structure):
    _pack_ = 1
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ]
    def __init__(self):
        self.Clear()
        self.Cmd = 0xB0
        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 = 0xB0
        self.SubCmd = 0x35
        return
    def GetLength(self):
        return sizeof(tagCMMineHouseKeeperFreeUse)
    def GetBuffer(self):
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''// B0 35 福地管家免费试用 //tagCMMineHouseKeeperFreeUse:
                                Cmd:%s,
                                SubCmd:%s
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd
                                )
        return DumpString
m_NAtagCMMineHouseKeeperFreeUse=tagCMMineHouseKeeperFreeUse()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMMineHouseKeeperFreeUse.Cmd,m_NAtagCMMineHouseKeeperFreeUse.SubCmd))] = m_NAtagCMMineHouseKeeperFreeUse
#------------------------------------------------------
# B0 30 福地物品拉 #tagCMMineItemPull
class  tagCMMineItemPull(Structure):
@@ -18439,7 +18611,7 @@
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("IsSuper", c_ubyte),    # 是否超级刷新
                  ("RefreshType", c_ubyte),    # 刷新类型:0-自己物品普通刷新;1-自己物品超级刷新;2-周围福地玩家列表刷新
                  ]
    def __init__(self):
@@ -18456,7 +18628,7 @@
    def Clear(self):
        self.Cmd = 0xB0
        self.SubCmd = 0x31
        self.IsSuper = 0
        self.RefreshType = 0
        return
    def GetLength(self):
@@ -18469,12 +18641,12 @@
        DumpString = '''// B0 31 福地物品刷新 //tagCMMineItemRefresh:
                                Cmd:%s,
                                SubCmd:%s,
                                IsSuper:%d
                                RefreshType:%d
                                '''\
                                %(
                                self.Cmd,
                                self.SubCmd,
                                self.IsSuper
                                self.RefreshType
                                )
        return DumpString
@@ -23041,7 +23213,7 @@
    _fields_ = [
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("Type", c_ubyte),    # 0-取消匹配; 1-进行匹配
                  ("Type", c_ubyte),    # 0-查询匹配;1-刷新匹配
                  ]
    def __init__(self):
@@ -23094,6 +23266,7 @@
                  ("Cmd", c_ubyte),
                  ("SubCmd", c_ubyte),
                  ("IsWin", c_ubyte),    #是否获胜
                  ("TagPlayerID", c_int),    #目标玩家ID
                  ]
    def __init__(self):
@@ -23111,6 +23284,7 @@
        self.Cmd = 0xC1
        self.SubCmd = 0x08
        self.IsWin = 0
        self.TagPlayerID = 0
        return
    def GetLength(self):
@@ -23123,12 +23297,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