xdh
2018-09-03 1c34f0edac641d381c0fe45839bbfb9e4b0ce4b6
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":(
@@ -495,6 +496,7 @@
                        ("DWORD", "SkillAtkRateC", 0),
                        ("DWORD", "SpeedPerC", 0),
                        ("DWORD", "AtkSpeedC", 0),
                        ("DWORD", "SkillAtkRateReduceC", 0),
                        ),
                "Success":(
@@ -697,6 +699,9 @@
                        ("DWORD", "NPCID", 1),
                        ("DWORD", "MapID", 0),
                        ("BYTE", "RefreshMark", 0),
                        ("BYTE", "IsNeedShunt", 0),
                        ("BYTE", "RelatedType", 0),
                        ("WORD", "RelatedID", 0),
                        ("DWORD", "StoneNPCID", 0),
                        ),
@@ -879,6 +884,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 +1087,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 +1101,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():
@@ -1900,7 +1909,8 @@
        self.SuperHitReduceC = 0
        self.SkillAtkRateC = 0
        self.SpeedPerC = 0
        self.AtkSpeedC = 0
        self.AtkSpeedC = 0
        self.SkillAtkRateReduceC = 0
        return
        
    def GetClassLV(self): return self.ClassLV #  装备阶级
@@ -1927,7 +1937,8 @@
    def GetSuperHitReduceC(self): return self.SuperHitReduceC #  暴击抗性百分比系数
    def GetSkillAtkRateC(self): return self.SkillAtkRateC #  技能伤害百分比系数
    def GetSpeedPerC(self): return self.SpeedPerC #  移动速度百分比系数
    def GetAtkSpeedC(self): return self.AtkSpeedC #  攻击速度系数
    def GetAtkSpeedC(self): return self.AtkSpeedC #  攻击速度系数
    def GetSkillAtkRateReduceC(self): return self.SkillAtkRateReduceC #  技能减伤百分比系数
# 成就表
class IPY_Success():
@@ -2346,12 +2357,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 +2748,8 @@
        self.GridItemInfo = {}
        self.JobItemList = []
        self.GridItemRateListFree = []
        self.FreeGridItemRateList2 = []
        self.FreeGridItemRateList3 = {}
        self.GridItemRateList1 = []
        self.GridItemRateList2 = []
        self.GridItemRateList3 = {}
@@ -2742,6 +2761,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 +3218,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