From 53922384947b977ae1e7d640d462f6512e6bbaf8 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期五, 31 八月 2018 17:19:29 +0800
Subject: [PATCH] fix:3094 【后端】仙盟兽粮,修改为可手动捐献

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |   58 ++++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 40 insertions(+), 18 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 4d37b82..3c7a74b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -94,6 +94,7 @@
                         ("WORD", "SuccessRateMax", 0),
                         ("BYTE", "AddonsCountMax", 0),
                         ("char", "SysMark", 0),
+                        ("BYTE", "SysMarkParamType", 0),
                         ),
 
                 "ItemPlus":(
@@ -697,6 +698,9 @@
                         ("DWORD", "NPCID", 1),
                         ("DWORD", "MapID", 0),
                         ("BYTE", "RefreshMark", 0),
+                        ("BYTE", "IsNeedShunt", 0),
+                        ("BYTE", "RelatedType", 0),
+                        ("WORD", "RelatedID", 0),
                         ("DWORD", "StoneNPCID", 0),
                         ),
 
@@ -879,6 +883,8 @@
                         ("dict", "GridItemInfo", 0),
                         ("list", "JobItemList", 0),
                         ("list", "GridItemRateListFree", 0),
+                        ("list", "FreeGridItemRateList2", 0),
+                        ("dict", "FreeGridItemRateList3", 0),
                         ("list", "GridItemRateList1", 0),
                         ("list", "GridItemRateList2", 0),
                         ("dict", "GridItemRateList3", 0),
@@ -1080,7 +1086,8 @@
         self.SuccessRate = 0
         self.SuccessRateMax = 0
         self.AddonsCountMax = 0
-        self.SysMark = ""
+        self.SysMark = ""
+        self.SysMarkParamType = 0
         return
         
     def GetID(self): return self.ID # 合成配置编号ID
@@ -1093,7 +1100,8 @@
     def GetSuccessRate(self): return self.SuccessRate #  成功率万分率
     def GetSuccessRateMax(self): return self.SuccessRateMax #  最大成功率万分率
     def GetAddonsCountMax(self): return self.AddonsCountMax # 最大可附加材料数, 增加概率用, 非必须, 0代表不可附加材料
-    def GetSysMark(self): return self.SysMark # 提示mark
+    def GetSysMark(self): return self.SysMark # 提示mark
+    def GetSysMarkParamType(self): return self.SysMarkParamType # 系统提示参数组合类型
 
 # 物品强化效果表
 class IPY_ItemPlus():
@@ -2346,12 +2354,18 @@
         self.NPCID = 0
         self.MapID = 0
         self.RefreshMark = 0
+        self.IsNeedShunt = 0
+        self.RelatedType = 0
+        self.RelatedID = 0
         self.StoneNPCID = 0
         return
         
     def GetNPCID(self): return self.NPCID # ID
     def GetMapID(self): return self.MapID # 地图ID
     def GetRefreshMark(self): return self.RefreshMark # 刷新标识点
+    def GetIsNeedShunt(self): return self.IsNeedShunt # 是否需要分流
+    def GetRelatedType(self): return self.RelatedType # 刷怪关联类型
+    def GetRelatedID(self): return self.RelatedID # 关联ID
     def GetStoneNPCID(self): return self.StoneNPCID # 墓碑NPCID
 
 # 古神禁地表
@@ -2731,6 +2745,8 @@
         self.GridItemInfo = {}
         self.JobItemList = []
         self.GridItemRateListFree = []
+        self.FreeGridItemRateList2 = []
+        self.FreeGridItemRateList3 = {}
         self.GridItemRateList1 = []
         self.GridItemRateList2 = []
         self.GridItemRateList3 = {}
@@ -2742,6 +2758,8 @@
     def GetGridItemInfo(self): return self.GridItemInfo # 格子编号对应物品信息 {"编号":[物品ID, 个数], ...}
     def GetJobItemList(self): return self.JobItemList # 职业物品组列表 [[职业1物品, 职业2物品, ...], ...]
     def GetGridItemRateListFree(self): return self.GridItemRateListFree # 免费产出格子编号饼图 [[概率, 格子编号], ...]
+    def GetFreeGridItemRateList2(self): return self.FreeGridItemRateList2 # 免费每满x次保底产出格子编号饼图 [[概率, 格子编号], ...]
+    def GetFreeGridItemRateList3(self): return self.FreeGridItemRateList3 # 免费第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...}
     def GetGridItemRateList1(self): return self.GridItemRateList1 # 常规产出格子编号饼图 [[概率, 格子编号], ...]
     def GetGridItemRateList2(self): return self.GridItemRateList2 # 每满x次保底产出格子编号饼图 [[概率, 格子编号], ...]
     def GetGridItemRateList3(self): return self.GridItemRateList3 # 第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...}
@@ -3197,22 +3215,26 @@
         for i, strValue in enumerate(rowList):
             if i == 0:
                 continue
-            fieldName = fieldList[i][1]
-            strValue = strValue.lstrip().rstrip()
-            if strValue.isdigit():
-                configValue = int(strValue)
-            elif (strValue.startswith("{") and strValue.endswith("}")) \
-                or (strValue.startswith("[") and strValue.endswith("]")) \
-                or (strValue.startswith("(") and strValue.endswith(")")):
-                configValue = eval(strValue)
-            elif "_" in strValue and type(self.__StrToDict(strValue)) == dict:
-                configValue = self.__StrToDict(strValue)
-            elif ChConfig.Def_Str_Montant in strValue:
-                configValue = eval("(%s,)" % strValue.replace(ChConfig.Def_Str_Montant, ","))
-            elif strValue in ["-", ""]:
-                configValue = ""
-            else:
-                configValue = self.__ToFloat(strValue)
+            try:
+                fieldName = fieldList[i][1]
+                strValue = strValue.lstrip().rstrip()
+                if strValue.isdigit():
+                    configValue = int(strValue)
+                elif (strValue.startswith("{") and strValue.endswith("}")) \
+                    or (strValue.startswith("[") and strValue.endswith("]")) \
+                    or (strValue.startswith("(") and strValue.endswith(")")):
+                    configValue = eval(strValue)
+                elif "_" in strValue and type(self.__StrToDict(strValue)) == dict:
+                    configValue = self.__StrToDict(strValue)
+                elif ChConfig.Def_Str_Montant in strValue:
+                    configValue = eval("(%s,)" % strValue.replace(ChConfig.Def_Str_Montant, ","))
+                elif strValue in ["-", ""]:
+                    configValue = ""
+                else:
+                    configValue = self.__ToFloat(strValue)
+            except BaseException:
+                ErrLog("SetIpyDataError: tableName=%s,key=%s,i=%s,value=%s" % ("FuncConfig", key, i, strValue))
+                raise
             setattr(funcConfigObj, fieldName, configValue)
         self.ipyFuncConfigDict[key] = funcConfigObj
         return

--
Gitblit v1.8.0