From 94374c183c35fc4ba13ec7c675b35dd49b3a1386 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期四, 23 八月 2018 16:02:42 +0800
Subject: [PATCH] fix:脱机掉落公式支持
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 93 +++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 90 insertions(+), 3 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 5319ed9..4d37b82 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -125,6 +125,22 @@
("list", "AttrValue", 0),
),
+ "Dogz":(
+ ("BYTE", "DogzID", 1),
+ ("list", "BaseAttrTypes", 0),
+ ("list", "BaseAttrValues", 0),
+ ("list", "HelpBattleSkills", 0),
+ ("list", "EquipPlaceColorList", 0),
+ ),
+
+ "DogzEquipPlus":(
+ ("BYTE", "EquipPlace", 1),
+ ("BYTE", "PlusLV", 1),
+ ("list", "PlusAttrTypes", 0),
+ ("list", "PlusAttrValues", 0),
+ ("DWORD", "PlusLVUPTotalExp", 0),
+ ),
+
"Rune":(
("DWORD", "ID", 1),
("list", "AttrType", 0),
@@ -915,7 +931,7 @@
"TrialExchange":(
("DWORD", "ID", 1),
- ("DWORD", "ExchangeItemID", 0),
+ ("list", "ExchangeItemIDList", 0),
("DWORD", "ExchangeItemCount", 0),
("DWORD", "ExchangeItemIsBind", 0),
("DWORD", "CostItemID", 0),
@@ -933,6 +949,14 @@
("DWORD", "Index", 1),
("DWORD", "NeedPoint", 0),
("dict", "Award", 0),
+ ),
+
+ "MapEventPoint":(
+ ("DWORD", "MapID", 1),
+ ("DWORD", "NPCID", 1),
+ ("WORD", "LowLV", 0),
+ ("WORD", "HighestLV", 0),
+ ("DWORD", "Defense", 0),
),
}
@@ -1132,6 +1156,40 @@
def GetStarsNeed(self): return self.StarsNeed # 全身星数
def GetAttrType(self): return self.AttrType # 属性类型
def GetAttrValue(self): return self.AttrValue # 属性值
+
+# 神兽表
+class IPY_Dogz():
+
+ def __init__(self):
+ self.DogzID = 0
+ self.BaseAttrTypes = []
+ self.BaseAttrValues = []
+ self.HelpBattleSkills = []
+ self.EquipPlaceColorList = []
+ return
+
+ def GetDogzID(self): return self.DogzID # 神兽ID
+ def GetBaseAttrTypes(self): return self.BaseAttrTypes # 基础属性类型列表
+ def GetBaseAttrValues(self): return self.BaseAttrValues # 基础属性值列表
+ def GetHelpBattleSkills(self): return self.HelpBattleSkills # 助战技能ID列表
+ def GetEquipPlaceColorList(self): return self.EquipPlaceColorList # 穿戴装备颜色限制
+
+# 神兽强化表
+class IPY_DogzEquipPlus():
+
+ def __init__(self):
+ self.EquipPlace = 0
+ self.PlusLV = 0
+ self.PlusAttrTypes = []
+ self.PlusAttrValues = []
+ self.PlusLVUPTotalExp = 0
+ return
+
+ def GetEquipPlace(self): return self.EquipPlace # 装备位
+ def GetPlusLV(self): return self.PlusLV # 强化等级
+ def GetPlusAttrTypes(self): return self.PlusAttrTypes # 强化属性类型列表
+ def GetPlusAttrValues(self): return self.PlusAttrValues # 强化属性值列表
+ def GetPlusLVUPTotalExp(self): return self.PlusLVUPTotalExp # 升级所需累计熟练度总值
# 符印表
class IPY_Rune():
@@ -2787,7 +2845,7 @@
def __init__(self):
self.ID = 0
- self.ExchangeItemID = 0
+ self.ExchangeItemIDList = []
self.ExchangeItemCount = 0
self.ExchangeItemIsBind = 0
self.CostItemID = 0
@@ -2795,7 +2853,7 @@
return
def GetID(self): return self.ID # 兑换ID
- def GetExchangeItemID(self): return self.ExchangeItemID # 兑换物品ID
+ def GetExchangeItemIDList(self): return self.ExchangeItemIDList # 兑换物品ID
def GetExchangeItemCount(self): return self.ExchangeItemCount # 兑换物品个数
def GetExchangeItemIsBind(self): return self.ExchangeItemIsBind # 兑换物品是否绑定
def GetCostItemID(self): return self.CostItemID # 消耗物品ID
@@ -2828,6 +2886,23 @@
def GetIndex(self): return self.Index # 索引
def GetNeedPoint(self): return self.NeedPoint # 需要点数
def GetAward(self): return self.Award # 奖励 {"职业":[[物品ID,个数,是否绑定],...], ...}
+
+# 地图NPC配置表-挂机点
+class IPY_MapEventPoint():
+
+ def __init__(self):
+ self.MapID = 0
+ self.NPCID = 0
+ self.LowLV = 0
+ self.HighestLV = 0
+ self.Defense = 0
+ return
+
+ def GetMapID(self): return self.MapID
+ def GetNPCID(self): return self.NPCID
+ def GetLowLV(self): return self.LowLV # 推荐最低等级
+ def GetHighestLV(self): return self.HighestLV # 推荐最高等级
+ def GetDefense(self): return self.Defense # 推荐防御
def Log(msg, playerID=0, par=0):
@@ -2873,6 +2948,10 @@
self.ipyItemPlusSumAttrLen = len(self.ipyItemPlusSumAttrCache)
self.ipyRoleEquipStarsCache = self.__LoadFileData("RoleEquipStars", IPY_RoleEquipStars)
self.ipyRoleEquipStarsLen = len(self.ipyRoleEquipStarsCache)
+ self.ipyDogzCache = self.__LoadFileData("Dogz", IPY_Dogz)
+ self.ipyDogzLen = len(self.ipyDogzCache)
+ self.ipyDogzEquipPlusCache = self.__LoadFileData("DogzEquipPlus", IPY_DogzEquipPlus)
+ self.ipyDogzEquipPlusLen = len(self.ipyDogzEquipPlusCache)
self.ipyRuneCache = self.__LoadFileData("Rune", IPY_Rune)
self.ipyRuneLen = len(self.ipyRuneCache)
self.ipyEquipWashCache = self.__LoadFileData("EquipWash", IPY_EquipWash)
@@ -3025,6 +3104,8 @@
self.ipyAllPeoplePartyLen = len(self.ipyAllPeoplePartyCache)
self.ipyAllPeoplePartyAwardCache = self.__LoadFileData("AllPeoplePartyAward", IPY_AllPeoplePartyAward)
self.ipyAllPeoplePartyAwardLen = len(self.ipyAllPeoplePartyAwardCache)
+ self.ipyMapEventPointCache = self.__LoadFileData("MapEventPoint", IPY_MapEventPoint)
+ self.ipyMapEventPointLen = len(self.ipyMapEventPointCache)
Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
Log("IPY_DataMgr InitOK!")
return
@@ -3207,6 +3288,10 @@
def GetItemPlusSumAttrByIndex(self, index): return self.ipyItemPlusSumAttrCache[index]
def GetRoleEquipStarsCount(self): return self.ipyRoleEquipStarsLen
def GetRoleEquipStarsByIndex(self, index): return self.ipyRoleEquipStarsCache[index]
+ def GetDogzCount(self): return self.ipyDogzLen
+ def GetDogzByIndex(self, index): return self.ipyDogzCache[index]
+ def GetDogzEquipPlusCount(self): return self.ipyDogzEquipPlusLen
+ def GetDogzEquipPlusByIndex(self, index): return self.ipyDogzEquipPlusCache[index]
def GetRuneCount(self): return self.ipyRuneLen
def GetRuneByIndex(self, index): return self.ipyRuneCache[index]
def GetEquipWashCount(self): return self.ipyEquipWashLen
@@ -3359,6 +3444,8 @@
def GetAllPeoplePartyByIndex(self, index): return self.ipyAllPeoplePartyCache[index]
def GetAllPeoplePartyAwardCount(self): return self.ipyAllPeoplePartyAwardLen
def GetAllPeoplePartyAwardByIndex(self, index): return self.ipyAllPeoplePartyAwardCache[index]
+ def GetMapEventPointCount(self): return self.ipyMapEventPointLen
+ def GetMapEventPointByIndex(self, index): return self.ipyMapEventPointCache[index]
IPYData = IPY_DataMgr()
def IPY_Data(): return IPYData
--
Gitblit v1.8.0