From 063c37a60dfad1fad8e31ee235e0d69c3ae35481 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 12 一月 2023 17:12:08 +0800
Subject: [PATCH] 9762 【BT8】【后端】藏宝阁(古宝特殊效果属性支持)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |   67 ++++++++++++++++++++++++++++++---
 1 files changed, 61 insertions(+), 6 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 81a1658..60009ac 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -357,6 +357,12 @@
                         ("DWORD", "SkinValidTime", 0),
                         ),
 
+                "Horse":(
+                        ("DWORD", "HorseID", 1),
+                        ("DWORD", "HorseSkinID", 0),
+                        ("BYTE", "Quality", 0),
+                        ),
+
                 "Gubao":(
                         ("WORD", "GubaoID", 1),
                         ("BYTE", "GubaoQuality", 0),
@@ -368,8 +374,17 @@
                         ("WORD", "GubaoID", 1),
                         ("BYTE", "GubaoStar", 1),
                         ("list", "StarUPNeedItemInfo", 0),
-                        ("list", "StarAttrTypeList", 0),
-                        ("list", "StarAttrValueList", 0),
+                        ("list", "StarEffIDList", 0),
+                        ),
+
+                "GubaoEffAttr":(
+                        ("DWORD", "GubaoEffID", 1),
+                        ("BYTE", "GubaoEffType", 0),
+                        ("DWORD", "EffCond", 0),
+                        ("BYTE", "IsPer", 0),
+                        ("list", "EffFuncAttrIDList", 0),
+                        ("DWORD", "EffAttrID", 0),
+                        ("DWORD", "EffAttrValue", 0),
                         ),
 
                 "GubaoLV":(
@@ -2759,6 +2774,19 @@
     def GetHorseID(self): return self.HorseID # 对应坐骑ID
     def GetSkinValidTime(self): return self.SkinValidTime # 有效时长秒
 
+# 坐骑表
+class IPY_Horse():
+    
+    def __init__(self):
+        self.HorseID = 0
+        self.HorseSkinID = 0
+        self.Quality = 0
+        return
+        
+    def GetHorseID(self): return self.HorseID # 坐骑ID
+    def GetHorseSkinID(self): return self.HorseSkinID # 外观物品ID
+    def GetQuality(self): return self.Quality # 坐骑品质
+
 # 古宝表
 class IPY_Gubao():
     
@@ -2781,15 +2809,34 @@
         self.GubaoID = 0
         self.GubaoStar = 0
         self.StarUPNeedItemInfo = []
-        self.StarAttrTypeList = []
-        self.StarAttrValueList = []
+        self.StarEffIDList = []
         return
         
     def GetGubaoID(self): return self.GubaoID # 古宝ID
     def GetGubaoStar(self): return self.GubaoStar # 古宝星级
     def GetStarUPNeedItemInfo(self): return self.StarUPNeedItemInfo # 升星所需物品 [[物品ID,个数], ...]
-    def GetStarAttrTypeList(self): return self.StarAttrTypeList # 星级属性类型列表
-    def GetStarAttrValueList(self): return self.StarAttrValueList # 星级属性值列表
+    def GetStarEffIDList(self): return self.StarEffIDList # 星级特殊效果ID列表
+
+# 古宝特殊效果表
+class IPY_GubaoEffAttr():
+    
+    def __init__(self):
+        self.GubaoEffID = 0
+        self.GubaoEffType = 0
+        self.EffCond = 0
+        self.IsPer = 0
+        self.EffFuncAttrIDList = []
+        self.EffAttrID = 0
+        self.EffAttrValue = 0
+        return
+        
+    def GetGubaoEffID(self): return self.GubaoEffID # 古宝特殊效果ID
+    def GetGubaoEffType(self): return self.GubaoEffType # 效果类型
+    def GetEffCond(self): return self.EffCond # 条件
+    def GetIsPer(self): return self.IsPer # 是否百分比提升
+    def GetEffFuncAttrIDList(self): return self.EffFuncAttrIDList # 提升指定功能属性ID列表
+    def GetEffAttrID(self): return self.EffAttrID # 直接增加属性类型
+    def GetEffAttrValue(self): return self.EffAttrValue # 提升属性值
 
 # 古宝品质升级表
 class IPY_GubaoLV():
@@ -6461,10 +6508,14 @@
         self.ipyHorseTrainLen = len(self.ipyHorseTrainCache)
         self.ipyHorseSkinPlusCache = self.__LoadFileData("HorseSkinPlus", IPY_HorseSkinPlus)
         self.ipyHorseSkinPlusLen = len(self.ipyHorseSkinPlusCache)
+        self.ipyHorseCache = self.__LoadFileData("Horse", IPY_Horse)
+        self.ipyHorseLen = len(self.ipyHorseCache)
         self.ipyGubaoCache = self.__LoadFileData("Gubao", IPY_Gubao)
         self.ipyGubaoLen = len(self.ipyGubaoCache)
         self.ipyGubaoStarCache = self.__LoadFileData("GubaoStar", IPY_GubaoStar)
         self.ipyGubaoStarLen = len(self.ipyGubaoStarCache)
+        self.ipyGubaoEffAttrCache = self.__LoadFileData("GubaoEffAttr", IPY_GubaoEffAttr)
+        self.ipyGubaoEffAttrLen = len(self.ipyGubaoEffAttrCache)
         self.ipyGubaoLVCache = self.__LoadFileData("GubaoLV", IPY_GubaoLV)
         self.ipyGubaoLVLen = len(self.ipyGubaoLVCache)
         self.ipyShentongCache = self.__LoadFileData("Shentong", IPY_Shentong)
@@ -7049,10 +7100,14 @@
     def GetHorseTrainByIndex(self, index): return self.ipyHorseTrainCache[index]
     def GetHorseSkinPlusCount(self): return self.ipyHorseSkinPlusLen
     def GetHorseSkinPlusByIndex(self, index): return self.ipyHorseSkinPlusCache[index]
+    def GetHorseCount(self): return self.ipyHorseLen
+    def GetHorseByIndex(self, index): return self.ipyHorseCache[index]
     def GetGubaoCount(self): return self.ipyGubaoLen
     def GetGubaoByIndex(self, index): return self.ipyGubaoCache[index]
     def GetGubaoStarCount(self): return self.ipyGubaoStarLen
     def GetGubaoStarByIndex(self, index): return self.ipyGubaoStarCache[index]
+    def GetGubaoEffAttrCount(self): return self.ipyGubaoEffAttrLen
+    def GetGubaoEffAttrByIndex(self, index): return self.ipyGubaoEffAttrCache[index]
     def GetGubaoLVCount(self): return self.ipyGubaoLVLen
     def GetGubaoLVByIndex(self, index): return self.ipyGubaoLVCache[index]
     def GetShentongCount(self): return self.ipyShentongLen

--
Gitblit v1.8.0