From 09b880f5f1728c443b77a1fe83a6b9c34b8e7ede Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 02 二月 2021 16:51:13 +0800
Subject: [PATCH] 4925 【主干】【BT】【BT2】【BTZF】红包雨65535报错
---
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py | 236 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 230 insertions(+), 6 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
index 70ce0aa..9fdde86 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -3767,6 +3767,66 @@
#------------------------------------------------------
+# C0 04 查看跨服排行榜 #tagCGViewCrossBillboard
+
+class tagCGViewCrossBillboard(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("Type", c_ubyte), #榜单类型
+ ("GroupValue1", c_ubyte), # 分组值1
+ ("GroupValue2", c_ubyte), # 分组值2,与分组值1组合归为同组榜单数据
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xC0
+ 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 = 0xC0
+ self.SubCmd = 0x04
+ self.Type = 0
+ self.GroupValue1 = 0
+ self.GroupValue2 = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCGViewCrossBillboard)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// C0 04 查看跨服排行榜 //tagCGViewCrossBillboard:
+ Cmd:%s,
+ SubCmd:%s,
+ Type:%d,
+ GroupValue1:%d,
+ GroupValue2:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.Type,
+ self.GroupValue1,
+ self.GroupValue2
+ )
+ return DumpString
+
+
+m_NAtagCGViewCrossBillboard=tagCGViewCrossBillboard()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGViewCrossBillboard.Cmd,m_NAtagCGViewCrossBillboard.SubCmd))] = m_NAtagCGViewCrossBillboard
+
+
+#------------------------------------------------------
# C0 01 查看跨服竞技场赛季排行榜 #tagCGViewCrossPKBillboard
class tagCGViewCrossPKBillboard(Structure):
@@ -3996,6 +4056,58 @@
m_NAtagCMPCInfo=tagCMPCInfo()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPCInfo.Head.Cmd,m_NAtagCMPCInfo.Head.SubCmd))] = m_NAtagCMPCInfo
+
+
+#------------------------------------------------------
+# A1 23 查询充值次数 #tagCMQueryCoinToGoldCount
+
+class tagCMQueryCoinToGoldCount(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("RecordID", c_ubyte), #充值记录ID,也就是充值ID,发0则查全部
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xA1
+ 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 = 0xA1
+ self.SubCmd = 0x23
+ self.RecordID = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCMQueryCoinToGoldCount)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// A1 23 查询充值次数 //tagCMQueryCoinToGoldCount:
+ Cmd:%s,
+ SubCmd:%s,
+ RecordID:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.RecordID
+ )
+ return DumpString
+
+
+m_NAtagCMQueryCoinToGoldCount=tagCMQueryCoinToGoldCount()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMQueryCoinToGoldCount.Cmd,m_NAtagCMQueryCoinToGoldCount.SubCmd))] = m_NAtagCMQueryCoinToGoldCount
#------------------------------------------------------
@@ -13318,6 +13430,114 @@
#------------------------------------------------------
+# AA 10 节日祝福瓶选择奖励物品 #tagCMFeastWishBottleChooseItem
+
+class tagCMFeastWishBottleChooseItem(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("BottleNum", c_ubyte), #瓶子编号
+ ("RecordIndex", c_ubyte), #物品索引,用于选择及记录是否已选择
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xAA
+ 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 = 0xAA
+ self.SubCmd = 0x10
+ self.BottleNum = 0
+ self.RecordIndex = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCMFeastWishBottleChooseItem)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// AA 10 节日祝福瓶选择奖励物品 //tagCMFeastWishBottleChooseItem:
+ Cmd:%s,
+ SubCmd:%s,
+ BottleNum:%d,
+ RecordIndex:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.BottleNum,
+ self.RecordIndex
+ )
+ return DumpString
+
+
+m_NAtagCMFeastWishBottleChooseItem=tagCMFeastWishBottleChooseItem()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFeastWishBottleChooseItem.Cmd,m_NAtagCMFeastWishBottleChooseItem.SubCmd))] = m_NAtagCMFeastWishBottleChooseItem
+
+
+#------------------------------------------------------
+# AA 11 节日祝福池祝福 #tagCMFeastWishPoolWish
+
+class tagCMFeastWishPoolWish(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("WishCount", c_ubyte), #祝福次数
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xAA
+ 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 = 0xAA
+ self.SubCmd = 0x11
+ self.WishCount = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCMFeastWishPoolWish)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// AA 11 节日祝福池祝福 //tagCMFeastWishPoolWish:
+ Cmd:%s,
+ SubCmd:%s,
+ WishCount:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.WishCount
+ )
+ return DumpString
+
+
+m_NAtagCMFeastWishPoolWish=tagCMFeastWishPoolWish()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFeastWishPoolWish.Cmd,m_NAtagCMFeastWishPoolWish.SubCmd))] = m_NAtagCMFeastWishPoolWish
+
+
+#------------------------------------------------------
# AA 05 限时抢购预约 #tagCMFlashSaleAppointment
class tagCMFlashSaleAppointment(Structure):
@@ -16735,7 +16955,7 @@
class tagCMBiddingAuctionItem(Structure):
Head = tagHead()
ItemGUID = "" #(char ItemGUID[40])
- BiddingPrice = 0 #(WORD BiddingPrice)//竞价价格
+ BiddingPrice = 0 #(DWORD BiddingPrice)//竞价价格
data = None
def __init__(self):
@@ -16748,7 +16968,7 @@
self.Clear()
_pos = self.Head.ReadData(_lpData, _pos)
self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
- self.BiddingPrice,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.BiddingPrice,_pos = CommFunc.ReadDWORD(_lpData, _pos)
return _pos
def Clear(self):
@@ -16764,7 +16984,7 @@
length = 0
length += self.Head.GetLength()
length += 40
- length += 2
+ length += 4
return length
@@ -16772,7 +16992,7 @@
data = ''
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
data = CommFunc.WriteString(data, 40, self.ItemGUID)
- data = CommFunc.WriteWORD(data, self.BiddingPrice)
+ data = CommFunc.WriteDWORD(data, self.BiddingPrice)
return data
def OutputString(self):
@@ -16951,6 +17171,7 @@
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
("ItemIndex", c_ubyte), #物品在背包中索引
+ ("SellCount", c_ushort), #上架个数,0代表全部上架
]
def __init__(self):
@@ -16968,6 +17189,7 @@
self.Cmd = 0xB5
self.SubCmd = 0x13
self.ItemIndex = 0
+ self.SellCount = 0
return
def GetLength(self):
@@ -16980,12 +17202,14 @@
DumpString = '''// B5 13 拍卖行上架拍品 //tagCMSellAuctionItem:
Cmd:%s,
SubCmd:%s,
- ItemIndex:%d
+ ItemIndex:%d,
+ SellCount:%d
'''\
%(
self.Cmd,
self.SubCmd,
- self.ItemIndex
+ self.ItemIndex,
+ self.SellCount
)
return DumpString
--
Gitblit v1.8.0