From 40673d6fac17bdead316b5aae223f7861d8d6eb7 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 12 七月 2024 16:23:22 +0800
Subject: [PATCH] 10202 【越南】【香港】【主干】【砍树】聚魂

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |  107 +++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 99 insertions(+), 8 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 24fdd7d..5fe1aa7 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1290,6 +1290,7 @@
                         ("BYTE", "TreasureType", 1),
                         ("WORD", "MinLV", 0),
                         ("dict", "GridItemInfo", 0),
+                        ("dict", "GridLibInfo", 0),
                         ("list", "JobItemList", 0),
                         ("list", "GridItemRateListFree", 0),
                         ("list", "FreeGridItemRateList2", 0),
@@ -1298,6 +1299,13 @@
                         ("list", "GridItemRateList2", 0),
                         ("dict", "GridItemRateList3", 0),
                         ("BYTE", "LuckyGridNum", 0),
+                        ),
+
+                "TreasureItemLib":(
+                        ("WORD", "LibID", 1),
+                        ("DWORD", "ItemID", 0),
+                        ("DWORD", "ItemCount", 0),
+                        ("DWORD", "ItemWeight", 0),
                         ),
 
                 "FreeGoods":(
@@ -1818,6 +1826,24 @@
                         ("BYTE", "CopyMapID", 1),
                         ("WORD", "PosX", 0),
                         ("WORD", "PosY", 0),
+                        ),
+
+                "GatherTheSoul":(
+                        ("DWORD", "SoulID", 1),
+                        ("DWORD", "PieceItemID", 0),
+                        ("BYTE", "HoleNum", 0),
+                        ("BYTE", "SoulColor", 0),
+                        ("DWORD", "SoulSkillTypeID", 0),
+                        ("list", "SoulSkillLVList", 0),
+                        ),
+
+                "GatherTheSoulLV":(
+                        ("DWORD", "SoulID", 1),
+                        ("WORD", "SoulLV", 1),
+                        ("WORD", "NeedPiece", 0),
+                        ("DWORD", "NeedSoulValue", 0),
+                        ("list", "LVAttrTypeList", 0),
+                        ("list", "LVAttrValueList", 0),
                         ),
 
                 "GatherSoul":(
@@ -4162,14 +4188,27 @@
     def GetTreasureType(self): return self.attrTuple[0] # 寻宝类型 BYTE
     def GetMinLV(self): return self.attrTuple[1] # 最小等级 WORD
     def GetGridItemInfo(self): return self.attrTuple[2] # 格子编号对应物品信息 {"编号":[物品ID, 个数], ...} dict
-    def GetJobItemList(self): return self.attrTuple[3] # 职业物品组列表 [[职业1物品, 职业2物品, ...], ...] list
-    def GetGridItemRateListFree(self): return self.attrTuple[4] # 免费产出格子编号饼图 [[概率, 格子编号], ...] list
-    def GetFreeGridItemRateList2(self): return self.attrTuple[5] # 免费每满x次保底产出格子编号饼图 [[概率, 格子编号], ...] list
-    def GetFreeGridItemRateList3(self): return self.attrTuple[6] # 免费第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...} dict
-    def GetGridItemRateList1(self): return self.attrTuple[7] # 常规产出格子编号饼图 [[概率, 格子编号], ...] list
-    def GetGridItemRateList2(self): return self.attrTuple[8] # 每满x次保底产出格子编号饼图 [[概率, 格子编号], ...] list
-    def GetGridItemRateList3(self): return self.attrTuple[9] # 第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...} dict
-    def GetLuckyGridNum(self): return self.attrTuple[10] # 幸运加成格子编号 BYTE
+    def GetGridLibInfo(self): return self.attrTuple[3] # 格子编号对应库ID {"编号":物品库ID, ...} dict
+    def GetJobItemList(self): return self.attrTuple[4] # 职业物品组列表 [[职业1物品, 职业2物品, ...], ...] list
+    def GetGridItemRateListFree(self): return self.attrTuple[5] # 免费产出格子编号饼图 [[概率, 格子编号], ...] list
+    def GetFreeGridItemRateList2(self): return self.attrTuple[6] # 免费每满x次保底产出格子编号饼图 [[概率, 格子编号], ...] list
+    def GetFreeGridItemRateList3(self): return self.attrTuple[7] # 免费第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...} dict
+    def GetGridItemRateList1(self): return self.attrTuple[8] # 常规产出格子编号饼图 [[概率, 格子编号], ...] list
+    def GetGridItemRateList2(self): return self.attrTuple[9] # 每满x次保底产出格子编号饼图 [[概率, 格子编号], ...] list
+    def GetGridItemRateList3(self): return self.attrTuple[10] # 第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...} dict
+    def GetLuckyGridNum(self): return self.attrTuple[11] # 幸运加成格子编号 BYTE
+
+# 寻宝物品库
+class IPY_TreasureItemLib():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetLibID(self): return self.attrTuple[0] # 库ID WORD
+    def GetItemID(self): return self.attrTuple[1] # 物品ID DWORD
+    def GetItemCount(self): return self.attrTuple[2] # 物品个数 DWORD
+    def GetItemWeight(self): return self.attrTuple[3] # 物品权重 DWORD
 
 # 极品白拿表
 class IPY_FreeGoods():
@@ -4985,6 +5024,34 @@
     def GetCopyMapID(self): return self.attrTuple[3] # 虚拟线路ID BYTE
     def GetPosX(self): return self.attrTuple[4] # 坐标X WORD
     def GetPosY(self): return self.attrTuple[5] # 坐标Y WORD
+
+# 聚魂新表
+class IPY_GatherTheSoul():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetSoulID(self): return self.attrTuple[0] # 聚魂ID DWORD
+    def GetPieceItemID(self): return self.attrTuple[1] # 碎片物品ID DWORD
+    def GetHoleNum(self): return self.attrTuple[2] # 孔编号 BYTE
+    def GetSoulColor(self): return self.attrTuple[3] # 品质 BYTE
+    def GetSoulSkillTypeID(self): return self.attrTuple[4] # 技能TypeID DWORD
+    def GetSoulSkillLVList(self): return self.attrTuple[5] # 技能等级所需魂等级列表 list
+
+# 聚魂新升级表
+class IPY_GatherTheSoulLV():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetSoulID(self): return self.attrTuple[0] # 聚魂ID DWORD
+    def GetSoulLV(self): return self.attrTuple[1] # 魂等级 WORD
+    def GetNeedPiece(self): return self.attrTuple[2] # 该级所需碎片 WORD
+    def GetNeedSoulValue(self): return self.attrTuple[3] # 所需聚魂精华 DWORD
+    def GetLVAttrTypeList(self): return self.attrTuple[4] # 累计总属性类型 list
+    def GetLVAttrValueList(self): return self.attrTuple[5] # 累计总属性值 list
 
 # 聚魂表
 class IPY_GatherSoul():
@@ -5960,6 +6027,7 @@
         self.__LoadFileData("Invest", onlyCheck)
         self.__LoadFileData("XBXZ", onlyCheck)
         self.__LoadFileData("TreasureHouse", onlyCheck)
+        self.__LoadFileData("TreasureItemLib", onlyCheck)
         self.__LoadFileData("FreeGoods", onlyCheck)
         self.__LoadFileData("ActFlashGiftbag", onlyCheck)
         self.__LoadFileData("FlashGiftbag", onlyCheck)
@@ -6019,6 +6087,8 @@
         self.__LoadFileData("CrossPenglaiZoneMap", onlyCheck)
         self.__LoadFileData("CrossDemonLandZoneMap", onlyCheck)
         self.__LoadFileData("CrossFamilyFlagwarZoneMap", onlyCheck)
+        self.__LoadFileData("GatherTheSoul", onlyCheck)
+        self.__LoadFileData("GatherTheSoulLV", onlyCheck)
         self.__LoadFileData("GatherSoul", onlyCheck)
         self.__LoadFileData("GatherSoulCompound", onlyCheck)
         self.__LoadFileData("GatherSoulAttr", onlyCheck)
@@ -7104,6 +7174,13 @@
         self.CheckLoadData("TreasureHouse")
         return self.ipyTreasureHouseCache[index]
 
+    def GetTreasureItemLibCount(self):
+        self.CheckLoadData("TreasureItemLib")
+        return self.ipyTreasureItemLibLen
+    def GetTreasureItemLibByIndex(self, index):
+        self.CheckLoadData("TreasureItemLib")
+        return self.ipyTreasureItemLibCache[index]
+
     def GetFreeGoodsCount(self):
         self.CheckLoadData("FreeGoods")
         return self.ipyFreeGoodsLen
@@ -7517,6 +7594,20 @@
         self.CheckLoadData("CrossFamilyFlagwarZoneMap")
         return self.ipyCrossFamilyFlagwarZoneMapCache[index]
 
+    def GetGatherTheSoulCount(self):
+        self.CheckLoadData("GatherTheSoul")
+        return self.ipyGatherTheSoulLen
+    def GetGatherTheSoulByIndex(self, index):
+        self.CheckLoadData("GatherTheSoul")
+        return self.ipyGatherTheSoulCache[index]
+
+    def GetGatherTheSoulLVCount(self):
+        self.CheckLoadData("GatherTheSoulLV")
+        return self.ipyGatherTheSoulLVLen
+    def GetGatherTheSoulLVByIndex(self, index):
+        self.CheckLoadData("GatherTheSoulLV")
+        return self.ipyGatherTheSoulLVCache[index]
+
     def GetGatherSoulCount(self):
         self.CheckLoadData("GatherSoul")
         return self.ipyGatherSoulLen

--
Gitblit v1.8.0