From 3b175a59ca82550a31863f4835548eec8a583b96 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 15 十二月 2023 16:59:01 +0800
Subject: [PATCH] 10033 【后端】仙树升级系统及砍树产出规则(装备属性产出规则修改)

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

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 0c50ceb..0f160f9 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -206,33 +206,6 @@
                         ("list", "AttrValue", 0),
                         ),
 
-                "EquipLegendAttrCount":(
-                        ("BYTE", "ItemType", 1),
-                        ("BYTE", "ItemColor", 1),
-                        ("BYTE", "IsSuit", 1),
-                        ("BYTE", "ItemQuality", 1),
-                        ("list", "LegendAttrCountInfo", 0),
-                        ),
-
-                "EquipLegendAttrType":(
-                        ("BYTE", "ItemType", 1),
-                        ("dict", "LegendAttrTypeLib", 0),
-                        ),
-
-                "EquipLegendAttrLib":(
-                        ("BYTE", "LegendAttrID", 1),
-                        ("dict", "LegendAttrLib", 0),
-                        ),
-
-                "EquipLegendAttrValue":(
-                        ("BYTE", "ItemType", 1),
-                        ("BYTE", "ItemClassLV", 1),
-                        ("BYTE", "ItemColor", 1),
-                        ("BYTE", "IsSuit", 1),
-                        ("BYTE", "ItemQuality", 1),
-                        ("dict", "LVLegendAttrLibNumInfo", 0),
-                        ),
-
                 "Dogz":(
                         ("BYTE", "DogzID", 1),
                         ("list", "BaseAttrTypes", 0),
@@ -778,6 +751,35 @@
                         ("BYTE", "WeekResetType", 0),
                         ),
 
+                "EquipColor":(
+                        ("BYTE", "EquipColor", 1),
+                        ("list", "RangeLV", 0),
+                        ("list", "RangeRand", 0),
+                        ("BYTE", "BattleAttrCount", 0),
+                        ("BYTE", "BattleDefAttrCount", 0),
+                        ("list", "RangeFaintRate", 0),
+                        ("list", "RangeFaintDefRate", 0),
+                        ("list", "RangeSuperHitRate", 0),
+                        ("list", "RangeSuperHitRateReduce", 0),
+                        ("list", "RangeComboRate", 0),
+                        ("list", "RangeComboDefRate", 0),
+                        ("list", "RangeMissRate", 0),
+                        ("list", "RangeMissDefRate", 0),
+                        ("list", "RangeAtkBackRate", 0),
+                        ("list", "RangeAtkBackDefRate", 0),
+                        ("list", "RangeSuckHPPer", 0),
+                        ("list", "RangeSuckHPDefPer", 0),
+                        ),
+
+                "EquipColorPlace":(
+                        ("BYTE", "EquipColor", 1),
+                        ("BYTE", "EquipPlace", 1),
+                        ("list", "RangeAtk", 0),
+                        ("list", "RangeHP", 0),
+                        ("list", "RangeDef", 0),
+                        ("list", "RangeAtkSpeed", 0),
+                        ),
+
                 "EquipGSParam":(
                         ("BYTE", "ClassLV", 1),
                         ("BYTE", "EquipColor", 1),
@@ -905,6 +907,9 @@
                 "AppointItem":(
                         ("DWORD", "ID", 1),
                         ("BYTE", "CancelUseLimit", 0),
+                        ("WORD", "ItemLV", 0),
+                        ("list", "BaseAttrID", 0),
+                        ("list", "BaseAttrValue", 0),
                         ("list", "LegendAttrID", 0),
                         ("list", "LegendAttrValue", 0),
                         ),
@@ -2606,64 +2611,6 @@
     def GetAttrType(self): return self.AttrType # 属性类型
     def GetAttrValue(self): return self.AttrValue # 属性值
 
-# 装备传奇属性条数表
-class IPY_EquipLegendAttrCount():
-    
-    def __init__(self):
-        self.ItemType = 0
-        self.ItemColor = 0
-        self.IsSuit = 0
-        self.ItemQuality = 0
-        self.LegendAttrCountInfo = []
-        return
-        
-    def GetItemType(self): return self.ItemType # 物品类型
-    def GetItemColor(self): return self.ItemColor # 物品颜色
-    def GetIsSuit(self): return self.IsSuit # 是否套装
-    def GetItemQuality(self): return self.ItemQuality # 物品星级
-    def GetLegendAttrCountInfo(self): return self.LegendAttrCountInfo # 传奇属性条数信息 [[条数, [属性类型库编号, ...]], ...]
-
-# 装备传奇属性类型表
-class IPY_EquipLegendAttrType():
-    
-    def __init__(self):
-        self.ItemType = 0
-        self.LegendAttrTypeLib = {}
-        return
-        
-    def GetItemType(self): return self.ItemType # 物品类型
-    def GetLegendAttrTypeLib(self): return self.LegendAttrTypeLib # 传奇属性类型库 {属性类型库编号:[属性ID,...], ...}
-
-# 装备传奇属性值库表
-class IPY_EquipLegendAttrLib():
-    
-    def __init__(self):
-        self.LegendAttrID = 0
-        self.LegendAttrLib = {}
-        return
-        
-    def GetLegendAttrID(self): return self.LegendAttrID # 传奇属性ID
-    def GetLegendAttrLib(self): return self.LegendAttrLib # 属性库信息 {库编号:[随机数值, ...], ...}
-
-# 装备传奇属性等级数值表
-class IPY_EquipLegendAttrValue():
-    
-    def __init__(self):
-        self.ItemType = 0
-        self.ItemClassLV = 0
-        self.ItemColor = 0
-        self.IsSuit = 0
-        self.ItemQuality = 0
-        self.LVLegendAttrLibNumInfo = {}
-        return
-        
-    def GetItemType(self): return self.ItemType # 物品类型
-    def GetItemClassLV(self): return self.ItemClassLV # 物品阶级
-    def GetItemColor(self): return self.ItemColor # 物品颜色
-    def GetIsSuit(self): return self.IsSuit # 是否套装
-    def GetItemQuality(self): return self.ItemQuality # 物品星级
-    def GetLVLegendAttrLibNumInfo(self): return self.LVLegendAttrLibNumInfo # 属性ID等级段对应数值库编号 {属性ID:{等级:库编号, ...}}
-
 # 神兽表
 class IPY_Dogz():
     
@@ -3798,6 +3745,66 @@
     def GetWeekTimes(self): return self.WeekTimes # 每周次数, 0为不限制
     def GetWeekResetType(self): return self.WeekResetType # 每周次数重置类型; 0-不重置,1-0点,2-5点
 
+# 装备品质表
+class IPY_EquipColor():
+    
+    def __init__(self):
+        self.EquipColor = 0
+        self.RangeLV = []
+        self.RangeRand = []
+        self.BattleAttrCount = 0
+        self.BattleDefAttrCount = 0
+        self.RangeFaintRate = []
+        self.RangeFaintDefRate = []
+        self.RangeSuperHitRate = []
+        self.RangeSuperHitRateReduce = []
+        self.RangeComboRate = []
+        self.RangeComboDefRate = []
+        self.RangeMissRate = []
+        self.RangeMissDefRate = []
+        self.RangeAtkBackRate = []
+        self.RangeAtkBackDefRate = []
+        self.RangeSuckHPPer = []
+        self.RangeSuckHPDefPer = []
+        return
+        
+    def GetEquipColor(self): return self.EquipColor #  装备颜色
+    def GetRangeLV(self): return self.RangeLV #  等级范围
+    def GetRangeRand(self): return self.RangeRand #  随机上下限范围
+    def GetBattleAttrCount(self): return self.BattleAttrCount #  战斗属性条数
+    def GetBattleDefAttrCount(self): return self.BattleDefAttrCount #  战斗抗性条数
+    def GetRangeFaintRate(self): return self.RangeFaintRate #  击晕范围
+    def GetRangeFaintDefRate(self): return self.RangeFaintDefRate #  抗击晕范围
+    def GetRangeSuperHitRate(self): return self.RangeSuperHitRate #  暴击范围
+    def GetRangeSuperHitRateReduce(self): return self.RangeSuperHitRateReduce #  抗暴击范围
+    def GetRangeComboRate(self): return self.RangeComboRate #  连击范围
+    def GetRangeComboDefRate(self): return self.RangeComboDefRate #  抗连击范围
+    def GetRangeMissRate(self): return self.RangeMissRate #  闪避范围
+    def GetRangeMissDefRate(self): return self.RangeMissDefRate #  抗闪避范围
+    def GetRangeAtkBackRate(self): return self.RangeAtkBackRate #  反击范围
+    def GetRangeAtkBackDefRate(self): return self.RangeAtkBackDefRate #  抗反击范围
+    def GetRangeSuckHPPer(self): return self.RangeSuckHPPer #  吸血范围
+    def GetRangeSuckHPDefPer(self): return self.RangeSuckHPDefPer #  抗吸血范围
+
+# 装备品质部位表
+class IPY_EquipColorPlace():
+    
+    def __init__(self):
+        self.EquipColor = 0
+        self.EquipPlace = 0
+        self.RangeAtk = []
+        self.RangeHP = []
+        self.RangeDef = []
+        self.RangeAtkSpeed = []
+        return
+        
+    def GetEquipColor(self): return self.EquipColor #  装备颜色
+    def GetEquipPlace(self): return self.EquipPlace #  装备部位
+    def GetRangeAtk(self): return self.RangeAtk #  攻击范围
+    def GetRangeHP(self): return self.RangeHP #  生命范围
+    def GetRangeDef(self): return self.RangeDef #  防御范围
+    def GetRangeAtkSpeed(self): return self.RangeAtkSpeed #  攻速范围
+
 # 装备评分属性系数表
 class IPY_EquipGSParam():
     
@@ -4061,12 +4068,18 @@
     def __init__(self):
         self.ID = 0
         self.CancelUseLimit = 0
+        self.ItemLV = 0
+        self.BaseAttrID = []
+        self.BaseAttrValue = []
         self.LegendAttrID = []
         self.LegendAttrValue = []
         return
         
-    def GetID(self): return self.ID # 定制物品ID
+    def GetID(self): return self.ID # 定制ID
     def GetCancelUseLimit(self): return self.CancelUseLimit # 穿戴限制(除职业)
+    def GetItemLV(self): return self.ItemLV # 物品等级
+    def GetBaseAttrID(self): return self.BaseAttrID # 基础属性ID
+    def GetBaseAttrValue(self): return self.BaseAttrValue # 基础属性值
     def GetLegendAttrID(self): return self.LegendAttrID # 传奇属性ID
     def GetLegendAttrValue(self): return self.LegendAttrValue # 传奇属性值
 
@@ -6940,14 +6953,6 @@
         self.ipyItemPlusMaxLen = len(self.ipyItemPlusMaxCache)
         self.ipyRoleEquipStarsCache = self.__LoadFileData("RoleEquipStars", IPY_RoleEquipStars)
         self.ipyRoleEquipStarsLen = len(self.ipyRoleEquipStarsCache)
-        self.ipyEquipLegendAttrCountCache = self.__LoadFileData("EquipLegendAttrCount", IPY_EquipLegendAttrCount)
-        self.ipyEquipLegendAttrCountLen = len(self.ipyEquipLegendAttrCountCache)
-        self.ipyEquipLegendAttrTypeCache = self.__LoadFileData("EquipLegendAttrType", IPY_EquipLegendAttrType)
-        self.ipyEquipLegendAttrTypeLen = len(self.ipyEquipLegendAttrTypeCache)
-        self.ipyEquipLegendAttrLibCache = self.__LoadFileData("EquipLegendAttrLib", IPY_EquipLegendAttrLib)
-        self.ipyEquipLegendAttrLibLen = len(self.ipyEquipLegendAttrLibCache)
-        self.ipyEquipLegendAttrValueCache = self.__LoadFileData("EquipLegendAttrValue", IPY_EquipLegendAttrValue)
-        self.ipyEquipLegendAttrValueLen = len(self.ipyEquipLegendAttrValueCache)
         self.ipyDogzCache = self.__LoadFileData("Dogz", IPY_Dogz)
         self.ipyDogzLen = len(self.ipyDogzCache)
         self.ipyDogzEquipPlusCache = self.__LoadFileData("DogzEquipPlus", IPY_DogzEquipPlus)
@@ -7036,6 +7041,10 @@
         self.ipyNPCCustomRefreshLen = len(self.ipyNPCCustomRefreshCache)
         self.ipyDailyActionCache = self.__LoadFileData("DailyAction", IPY_DailyAction)
         self.ipyDailyActionLen = len(self.ipyDailyActionCache)
+        self.ipyEquipColorCache = self.__LoadFileData("EquipColor", IPY_EquipColor)
+        self.ipyEquipColorLen = len(self.ipyEquipColorCache)
+        self.ipyEquipColorPlaceCache = self.__LoadFileData("EquipColorPlace", IPY_EquipColorPlace)
+        self.ipyEquipColorPlaceLen = len(self.ipyEquipColorPlaceCache)
         self.ipyEquipGSParamCache = self.__LoadFileData("EquipGSParam", IPY_EquipGSParam)
         self.ipyEquipGSParamLen = len(self.ipyEquipGSParamCache)
         self.ipySuccessCache = self.__LoadFileData("Success", IPY_Success)
@@ -7562,14 +7571,6 @@
     def GetItemPlusMaxByIndex(self, index): return self.ipyItemPlusMaxCache[index]
     def GetRoleEquipStarsCount(self): return self.ipyRoleEquipStarsLen
     def GetRoleEquipStarsByIndex(self, index): return self.ipyRoleEquipStarsCache[index]
-    def GetEquipLegendAttrCountCount(self): return self.ipyEquipLegendAttrCountLen
-    def GetEquipLegendAttrCountByIndex(self, index): return self.ipyEquipLegendAttrCountCache[index]
-    def GetEquipLegendAttrTypeCount(self): return self.ipyEquipLegendAttrTypeLen
-    def GetEquipLegendAttrTypeByIndex(self, index): return self.ipyEquipLegendAttrTypeCache[index]
-    def GetEquipLegendAttrLibCount(self): return self.ipyEquipLegendAttrLibLen
-    def GetEquipLegendAttrLibByIndex(self, index): return self.ipyEquipLegendAttrLibCache[index]
-    def GetEquipLegendAttrValueCount(self): return self.ipyEquipLegendAttrValueLen
-    def GetEquipLegendAttrValueByIndex(self, index): return self.ipyEquipLegendAttrValueCache[index]
     def GetDogzCount(self): return self.ipyDogzLen
     def GetDogzByIndex(self, index): return self.ipyDogzCache[index]
     def GetDogzEquipPlusCount(self): return self.ipyDogzEquipPlusLen
@@ -7658,6 +7659,10 @@
     def GetNPCCustomRefreshByIndex(self, index): return self.ipyNPCCustomRefreshCache[index]
     def GetDailyActionCount(self): return self.ipyDailyActionLen
     def GetDailyActionByIndex(self, index): return self.ipyDailyActionCache[index]
+    def GetEquipColorCount(self): return self.ipyEquipColorLen
+    def GetEquipColorByIndex(self, index): return self.ipyEquipColorCache[index]
+    def GetEquipColorPlaceCount(self): return self.ipyEquipColorPlaceLen
+    def GetEquipColorPlaceByIndex(self, index): return self.ipyEquipColorPlaceCache[index]
     def GetEquipGSParamCount(self): return self.ipyEquipGSParamLen
     def GetEquipGSParamByIndex(self, index): return self.ipyEquipGSParamCache[index]
     def GetSuccessCount(self): return self.ipySuccessLen

--
Gitblit v1.8.0