From 94ee1c7ab1faeaf57443860b46d057f4328706db Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 18 十月 2022 18:14:17 +0800
Subject: [PATCH] 9437 【越南】【后端】天帝礼包(AA60封包增加同步需要选择个数)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActGodGift.py | 8 ++-
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 41 ++++++++++++--------
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 41 ++++++++++++--------
3 files changed, 53 insertions(+), 37 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index ddc5b16..dfb0bb3 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -29262,8 +29262,9 @@
class tagMCActGodGiftItemLib(Structure):
ItemLibType = 0 #(BYTE ItemLibType)//物品库类型
- ChooseItemCount = 0 #(BYTE ChooseItemCount)//可选择物品个数
- ChooseItemList = list() #(vector<tagMCActGodGiftItem> ChooseItemList)//可选物品列表
+ NeedChooseCount = 0 #(BYTE NeedChooseCount)//需要选择个数
+ GodGiftItemCount = 0 #(BYTE GodGiftItemCount)//可选择物品个数
+ GodGiftItemList = list() #(vector<tagMCActGodGiftItem> GodGiftItemList)//可选物品列表
data = None
def __init__(self):
@@ -29273,45 +29274,51 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
self.ItemLibType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- self.ChooseItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.ChooseItemCount):
- temChooseItemList = tagMCActGodGiftItem()
- _pos = temChooseItemList.ReadData(_lpData, _pos)
- self.ChooseItemList.append(temChooseItemList)
+ self.NeedChooseCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.GodGiftItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.GodGiftItemCount):
+ temGodGiftItemList = tagMCActGodGiftItem()
+ _pos = temGodGiftItemList.ReadData(_lpData, _pos)
+ self.GodGiftItemList.append(temGodGiftItemList)
return _pos
def Clear(self):
self.ItemLibType = 0
- self.ChooseItemCount = 0
- self.ChooseItemList = list()
+ self.NeedChooseCount = 0
+ self.GodGiftItemCount = 0
+ self.GodGiftItemList = list()
return
def GetLength(self):
length = 0
length += 1
length += 1
- for i in range(self.ChooseItemCount):
- length += self.ChooseItemList[i].GetLength()
+ length += 1
+ for i in range(self.GodGiftItemCount):
+ length += self.GodGiftItemList[i].GetLength()
return length
def GetBuffer(self):
data = ''
data = CommFunc.WriteBYTE(data, self.ItemLibType)
- data = CommFunc.WriteBYTE(data, self.ChooseItemCount)
- for i in range(self.ChooseItemCount):
- data = CommFunc.WriteString(data, self.ChooseItemList[i].GetLength(), self.ChooseItemList[i].GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.NeedChooseCount)
+ data = CommFunc.WriteBYTE(data, self.GodGiftItemCount)
+ for i in range(self.GodGiftItemCount):
+ data = CommFunc.WriteString(data, self.GodGiftItemList[i].GetLength(), self.GodGiftItemList[i].GetBuffer())
return data
def OutputString(self):
DumpString = '''
ItemLibType:%d,
- ChooseItemCount:%d,
- ChooseItemList:%s
+ NeedChooseCount:%d,
+ GodGiftItemCount:%d,
+ GodGiftItemList:%s
'''\
%(
self.ItemLibType,
- self.ChooseItemCount,
+ self.NeedChooseCount,
+ self.GodGiftItemCount,
"..."
)
return DumpString
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index ddc5b16..dfb0bb3 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -29262,8 +29262,9 @@
class tagMCActGodGiftItemLib(Structure):
ItemLibType = 0 #(BYTE ItemLibType)//物品库类型
- ChooseItemCount = 0 #(BYTE ChooseItemCount)//可选择物品个数
- ChooseItemList = list() #(vector<tagMCActGodGiftItem> ChooseItemList)//可选物品列表
+ NeedChooseCount = 0 #(BYTE NeedChooseCount)//需要选择个数
+ GodGiftItemCount = 0 #(BYTE GodGiftItemCount)//可选择物品个数
+ GodGiftItemList = list() #(vector<tagMCActGodGiftItem> GodGiftItemList)//可选物品列表
data = None
def __init__(self):
@@ -29273,45 +29274,51 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
self.ItemLibType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- self.ChooseItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.ChooseItemCount):
- temChooseItemList = tagMCActGodGiftItem()
- _pos = temChooseItemList.ReadData(_lpData, _pos)
- self.ChooseItemList.append(temChooseItemList)
+ self.NeedChooseCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.GodGiftItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.GodGiftItemCount):
+ temGodGiftItemList = tagMCActGodGiftItem()
+ _pos = temGodGiftItemList.ReadData(_lpData, _pos)
+ self.GodGiftItemList.append(temGodGiftItemList)
return _pos
def Clear(self):
self.ItemLibType = 0
- self.ChooseItemCount = 0
- self.ChooseItemList = list()
+ self.NeedChooseCount = 0
+ self.GodGiftItemCount = 0
+ self.GodGiftItemList = list()
return
def GetLength(self):
length = 0
length += 1
length += 1
- for i in range(self.ChooseItemCount):
- length += self.ChooseItemList[i].GetLength()
+ length += 1
+ for i in range(self.GodGiftItemCount):
+ length += self.GodGiftItemList[i].GetLength()
return length
def GetBuffer(self):
data = ''
data = CommFunc.WriteBYTE(data, self.ItemLibType)
- data = CommFunc.WriteBYTE(data, self.ChooseItemCount)
- for i in range(self.ChooseItemCount):
- data = CommFunc.WriteString(data, self.ChooseItemList[i].GetLength(), self.ChooseItemList[i].GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.NeedChooseCount)
+ data = CommFunc.WriteBYTE(data, self.GodGiftItemCount)
+ for i in range(self.GodGiftItemCount):
+ data = CommFunc.WriteString(data, self.GodGiftItemList[i].GetLength(), self.GodGiftItemList[i].GetBuffer())
return data
def OutputString(self):
DumpString = '''
ItemLibType:%d,
- ChooseItemCount:%d,
- ChooseItemList:%s
+ NeedChooseCount:%d,
+ GodGiftItemCount:%d,
+ GodGiftItemList:%s
'''\
%(
self.ItemLibType,
- self.ChooseItemCount,
+ self.NeedChooseCount,
+ self.GodGiftItemCount,
"..."
)
return DumpString
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActGodGift.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActGodGift.py
index c675a90..0fdc108 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActGodGift.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActGodGift.py
@@ -419,10 +419,12 @@
for awardIpyData in awardIpyDataList:
libType = awardIpyData.GetAwardLibType()
libItemInfoDict = awardIpyData.GetLibItemInfo()
+ needChooseCount = awardIpyData.GetChooseItemCount()
itemLib = ChPyNetSendPack.tagMCActGodGiftItemLib()
itemLib.ItemLibType = libType
- itemLib.ChooseItemList = []
+ itemLib.NeedChooseCount = needChooseCount
+ itemLib.GodGiftItemList = []
for num, itemInfo in libItemInfoDict.items():
_, itemID, itemCount, isBind, canChooseTimes = itemInfo
chooseTimes, isChoose, _ = GetGodGiftItemState(curPlayer, actNum, libType, num)
@@ -434,9 +436,9 @@
item.CanChooseTimes = canChooseTimes
item.ChooseTimes = chooseTimes
item.IsChoose = isChoose
- itemLib.ChooseItemList.append(item)
+ itemLib.GodGiftItemList.append(item)
- itemLib.ChooseItemCount = len(itemLib.ChooseItemList)
+ itemLib.GodGiftItemCount = len(itemLib.GodGiftItemList)
clientPack.ItemLibList.append(itemLib)
clientPack.ItemLibCount = len(clientPack.ItemLibList)
--
Gitblit v1.8.0