From 921ba9c6e954f2f1377cb08d5a8476c9e6c2b30e Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 15 三月 2019 17:44:27 +0800
Subject: [PATCH] 6332 【后端】【2.0】主要是拍品相关规则调整及背包优化(给非拍卖物品为拍品时优化)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |  228 +++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 148 insertions(+), 80 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 439adc5..ed5d401 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -43,16 +43,12 @@
 
                 "Realm":(
                         ("WORD", "Lv", 1),
-                        ("BYTE", "IsBigRealm", 0),
-                        ("DWORD", "NeedPoint", 0),
+                        ("DWORD", "NeedLV", 0),
                         ("DWORD", "NeedItemID", 0),
                         ("WORD", "NeedItemCnt", 0),
-                        ("dict", "NeedActiveTreasure", 0),
                         ("list", "AddAttrType", 0),
                         ("list", "AddAttrNum", 0),
                         ("DWORD", "BossID", 0),
-                        ("dict", "SitTime", 0),
-                        ("dict", "TeamAward", 0),
                         ),
 
                 "GodWeapon":(
@@ -127,6 +123,31 @@
                         ("BYTE", "StarsNeed", 1),
                         ("list", "AttrType", 0),
                         ("list", "AttrValue", 0),
+                        ),
+
+                "EquipLegendAttrCount":(
+                        ("BYTE", "ItemType", 1),
+                        ("BYTE", "ItemColor", 1),
+                        ("BYTE", "IsSuit", 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),
+                        ("dict", "LVLegendAttrLibNumInfo", 0),
                         ),
 
                 "Dogz":(
@@ -321,15 +342,6 @@
                         ("dict", "AttrInfo", 0),
                         ("DWORD", "SkillID", 0),
                         ("BYTE", "IsNotify", 0),
-                        ),
-
-                "EquipSuitCompound":(
-                        ("BYTE", "SuiteType", 1),
-                        ("BYTE", "EquipPlace", 1),
-                        ("WORD", "SuiteLV", 1),
-                        ("BYTE", "Job", 1),
-                        ("list", "CostItemID", 0),
-                        ("list", "CostItemCnt", 0),
                         ),
 
                 "WingRefineAttr":(
@@ -1145,14 +1157,6 @@
                         ("list", "ItemList", 0),
                         ),
 
-                "GodWeaponEffect":(
-                        ("BYTE", "GWType", 0),
-                        ("WORD", "Level", 0),
-                        ("char", "NotifyCode", 0),
-                        ("DWORD", "FightPower", 0),
-                        ("dict", "Attr", 0),
-                        ),
-
                 "CrossRealmPKDan":(
                         ("BYTE", "DanLV", 1),
                         ("WORD", "LVUpScore", 0),
@@ -1391,6 +1395,18 @@
                         ("dict", "CostItem", 0),
                         ("dict", "Attr", 0),
                         ),
+
+                "FamilyBossAward":(
+                        ("list", "WorldLV", 0),
+                        ("list", "Rank", 0),
+                        ("list", "Award", 0),
+                        ),
+
+                "ItemWashMax":(
+                        ("BYTE", "Type", 1),
+                        ("BYTE", "Star", 1),
+                        ("WORD", "LevelMax", 0),
+                        ),
                 }
 
 
@@ -1418,29 +1434,21 @@
     
     def __init__(self):
         self.Lv = 0
-        self.IsBigRealm = 0
-        self.NeedPoint = 0
+        self.NeedLV = 0
         self.NeedItemID = 0
         self.NeedItemCnt = 0
-        self.NeedActiveTreasure = {}
         self.AddAttrType = []
         self.AddAttrNum = []
-        self.BossID = 0
-        self.SitTime = {}
-        self.TeamAward = {}
+        self.BossID = 0
         return
         
     def GetLv(self): return self.Lv # 境界等级
-    def GetIsBigRealm(self): return self.IsBigRealm # 是否大境界
-    def GetNeedPoint(self): return self.NeedPoint # 开启渡劫需要修炼点
-    def GetNeedItemID(self): return self.NeedItemID # 开启渡劫需要道具ID
-    def GetNeedItemCnt(self): return self.NeedItemCnt # 开启渡劫消耗的道具数量
-    def GetNeedActiveTreasure(self): return self.NeedActiveTreasure # 开启渡劫需要激活法宝条件
+    def GetNeedLV(self): return self.NeedLV # 需要等级
+    def GetNeedItemID(self): return self.NeedItemID # 需要道具ID
+    def GetNeedItemCnt(self): return self.NeedItemCnt # 消耗的道具数量
     def GetAddAttrType(self): return self.AddAttrType # 境界加成属性类型
     def GetAddAttrNum(self): return self.AddAttrNum # 境界加成属性值
-    def GetBossID(self): return self.BossID # 渡劫bossid
-    def GetSitTime(self): return self.SitTime # 打坐时间
-    def GetTeamAward(self): return self.TeamAward # 组队帮打的人的奖励
+    def GetBossID(self): return self.BossID # 渡劫bossid
 
 # 神兵表
 class IPY_GodWeapon():
@@ -1597,6 +1605,60 @@
     def GetStarsNeed(self): return self.StarsNeed # 全身星数
     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.LegendAttrCountInfo = []
+        return
+        
+    def GetItemType(self): return self.ItemType # 物品类型
+    def GetItemColor(self): return self.ItemColor # 物品颜色
+    def GetIsSuit(self): return self.IsSuit # 是否套装
+    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.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 GetLVLegendAttrLibNumInfo(self): return self.LVLegendAttrLibNumInfo # 属性ID等级段对应数值库编号 {属性ID:{等级:库编号, ...}}
 
 # 神兽表
 class IPY_Dogz():
@@ -2001,25 +2063,6 @@
     def GetAttrInfo(self): return self.AttrInfo # 属性
     def GetSkillID(self): return self.SkillID # 技能ID
     def GetIsNotify(self): return self.IsNotify # 是否广播
-
-# 套装合成表
-class IPY_EquipSuitCompound():
-    
-    def __init__(self):
-        self.SuiteType = 0
-        self.EquipPlace = 0
-        self.SuiteLV = 0
-        self.Job = 0
-        self.CostItemID = []
-        self.CostItemCnt = []
-        return
-        
-    def GetSuiteType(self): return self.SuiteType # 套装类型
-    def GetEquipPlace(self): return self.EquipPlace # 装备部位
-    def GetSuiteLV(self): return self.SuiteLV # 套装等级
-    def GetJob(self): return self.Job # 职业
-    def GetCostItemID(self): return self.CostItemID # 材料ID
-    def GetCostItemCnt(self): return self.CostItemCnt # 材料数量
 
 # 羽翼精炼属性表
 class IPY_WingRefineAttr():
@@ -3726,23 +3769,6 @@
     def GetLVLimit(self): return self.LVLimit # 等级范围
     def GetItemList(self): return self.ItemList # 奖励
 
-# 神兵特效表
-class IPY_GodWeaponEffect():
-    
-    def __init__(self):
-        self.GWType = 0
-        self.Level = 0
-        self.NotifyCode = ""
-        self.FightPower = 0
-        self.Attr = {}
-        return
-        
-    def GetGWType(self): return self.GWType # 神兵类型
-    def GetLevel(self): return self.Level # 神兵等级
-    def GetNotifyCode(self): return self.NotifyCode # 广播
-    def GetFightPower(self): return self.FightPower # 增加战力
-    def GetAttr(self): return self.Attr # 属性加成
-
 # 跨服竞技场段位表
 class IPY_CrossRealmPKDan():
     
@@ -4250,6 +4276,32 @@
     def GetNeedPlusLV(self): return self.NeedPlusLV # 需要强化等级
     def GetCostItem(self): return self.CostItem # 消耗材料
     def GetAttr(self): return self.Attr # 属性
+
+# 仙盟Boss奖励表
+class IPY_FamilyBossAward():
+    
+    def __init__(self):
+        self.WorldLV = []
+        self.Rank = []
+        self.Award = []
+        return
+        
+    def GetWorldLV(self): return self.WorldLV # 世界等级
+    def GetRank(self): return self.Rank # 排名
+    def GetAward(self): return self.Award # 奖励 [[独立概率万分率,[物品ID,数量,拍品分组]],..]
+
+# 装备洗练等级上限
+class IPY_ItemWashMax():
+    
+    def __init__(self):
+        self.Type = 0
+        self.Star = 0
+        self.LevelMax = 0
+        return
+        
+    def GetType(self): return self.Type # 按装备位对应类型查找
+    def GetStar(self): return self.Star #  装备星数
+    def GetLevelMax(self): return self.LevelMax # 洗练等级上限
 
 
 def Log(msg, playerID=0, par=0):
@@ -4295,6 +4347,14 @@
         self.ipyItemPlusSumAttrLen = len(self.ipyItemPlusSumAttrCache)
         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)
@@ -4327,8 +4387,6 @@
         self.ipyNPCStrengthenLen = len(self.ipyNPCStrengthenCache)
         self.ipyEquipSuitAttrCache = self.__LoadFileData("EquipSuitAttr", IPY_EquipSuitAttr)
         self.ipyEquipSuitAttrLen = len(self.ipyEquipSuitAttrCache)
-        self.ipyEquipSuitCompoundCache = self.__LoadFileData("EquipSuitCompound", IPY_EquipSuitCompound)
-        self.ipyEquipSuitCompoundLen = len(self.ipyEquipSuitCompoundCache)
         self.ipyWingRefineAttrCache = self.__LoadFileData("WingRefineAttr", IPY_WingRefineAttr)
         self.ipyWingRefineAttrLen = len(self.ipyWingRefineAttrCache)
         self.ipyWingRefineExpCache = self.__LoadFileData("WingRefineExp", IPY_WingRefineExp)
@@ -4487,8 +4545,6 @@
         self.ipyMagicWeaponFBLen = len(self.ipyMagicWeaponFBCache)
         self.ipyIceLodeStarAwardCache = self.__LoadFileData("IceLodeStarAward", IPY_IceLodeStarAward)
         self.ipyIceLodeStarAwardLen = len(self.ipyIceLodeStarAwardCache)
-        self.ipyGodWeaponEffectCache = self.__LoadFileData("GodWeaponEffect", IPY_GodWeaponEffect)
-        self.ipyGodWeaponEffectLen = len(self.ipyGodWeaponEffectCache)
         self.ipyCrossRealmPKDanCache = self.__LoadFileData("CrossRealmPKDan", IPY_CrossRealmPKDan)
         self.ipyCrossRealmPKDanLen = len(self.ipyCrossRealmPKDanCache)
         self.ipyCrossRealmPKDanAwardCache = self.__LoadFileData("CrossRealmPKDanAward", IPY_CrossRealmPKDanAward)
@@ -4549,6 +4605,10 @@
         self.ipyEquipStarUpLen = len(self.ipyEquipStarUpCache)
         self.ipyEquipPlusEvolveCache = self.__LoadFileData("EquipPlusEvolve", IPY_EquipPlusEvolve)
         self.ipyEquipPlusEvolveLen = len(self.ipyEquipPlusEvolveCache)
+        self.ipyFamilyBossAwardCache = self.__LoadFileData("FamilyBossAward", IPY_FamilyBossAward)
+        self.ipyFamilyBossAwardLen = len(self.ipyFamilyBossAwardCache)
+        self.ipyItemWashMaxCache = self.__LoadFileData("ItemWashMax", IPY_ItemWashMax)
+        self.ipyItemWashMaxLen = len(self.ipyItemWashMaxCache)
         Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
         Log("IPY_DataMgr InitOK!")
         return
@@ -4735,6 +4795,14 @@
     def GetItemPlusSumAttrByIndex(self, index): return self.ipyItemPlusSumAttrCache[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
@@ -4767,8 +4835,6 @@
     def GetNPCStrengthenByIndex(self, index): return self.ipyNPCStrengthenCache[index]
     def GetEquipSuitAttrCount(self): return self.ipyEquipSuitAttrLen
     def GetEquipSuitAttrByIndex(self, index): return self.ipyEquipSuitAttrCache[index]
-    def GetEquipSuitCompoundCount(self): return self.ipyEquipSuitCompoundLen
-    def GetEquipSuitCompoundByIndex(self, index): return self.ipyEquipSuitCompoundCache[index]
     def GetWingRefineAttrCount(self): return self.ipyWingRefineAttrLen
     def GetWingRefineAttrByIndex(self, index): return self.ipyWingRefineAttrCache[index]
     def GetWingRefineExpCount(self): return self.ipyWingRefineExpLen
@@ -4927,8 +4993,6 @@
     def GetMagicWeaponFBByIndex(self, index): return self.ipyMagicWeaponFBCache[index]
     def GetIceLodeStarAwardCount(self): return self.ipyIceLodeStarAwardLen
     def GetIceLodeStarAwardByIndex(self, index): return self.ipyIceLodeStarAwardCache[index]
-    def GetGodWeaponEffectCount(self): return self.ipyGodWeaponEffectLen
-    def GetGodWeaponEffectByIndex(self, index): return self.ipyGodWeaponEffectCache[index]
     def GetCrossRealmPKDanCount(self): return self.ipyCrossRealmPKDanLen
     def GetCrossRealmPKDanByIndex(self, index): return self.ipyCrossRealmPKDanCache[index]
     def GetCrossRealmPKDanAwardCount(self): return self.ipyCrossRealmPKDanAwardLen
@@ -4989,6 +5053,10 @@
     def GetEquipStarUpByIndex(self, index): return self.ipyEquipStarUpCache[index]
     def GetEquipPlusEvolveCount(self): return self.ipyEquipPlusEvolveLen
     def GetEquipPlusEvolveByIndex(self, index): return self.ipyEquipPlusEvolveCache[index]
+    def GetFamilyBossAwardCount(self): return self.ipyFamilyBossAwardLen
+    def GetFamilyBossAwardByIndex(self, index): return self.ipyFamilyBossAwardCache[index]
+    def GetItemWashMaxCount(self): return self.ipyItemWashMaxLen
+    def GetItemWashMaxByIndex(self, index): return self.ipyItemWashMaxCache[index]
 
 IPYData = IPY_DataMgr()
 def IPY_Data(): return IPYData

--
Gitblit v1.8.0