8012 子 【2.0.300】【开发】升星功能调整 / 【2.0.300】【后端】升星功能调整
3个文件已修改
64 ■■■■ 已修改文件
PySysDB/PySysDBPY.h 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
PySysDB/PySysDBPY.h
@@ -1778,7 +1778,8 @@
    BYTE        IsJobLimit;    //是否只用本职业装备材料
    list        CostEquipColor;    //可用装备品质
    BYTE        CostEquipCnt;    //装备数量
    BYTE        SuitTotalRate;    //全套装加成概率(非套50%)
    BYTE        UnSuitRate;    //单件非套装加成概率
    BYTE        SuitRate;    //单件套装加成概率
    dict        CostItemDict;    //特殊材料
    dict        StarAttrInfo;    //星级属性
    dict        BaseAttrInfo;    //基础属性增加
@@ -1918,16 +1919,6 @@
    BYTE        SkinIndex;    //外观
};
//装备升星概率表
struct tagEquipStarUpRate
{
    DWORD        _ClassLV;    //装备阶级
    DWORD        _EquipColor;    //品质
    DWORD        _EquipPlace;    //部位
    DWORD        _IsSuite;    //是否套装
    DWORD        Rate;    //概率
};
//累计充值奖励表
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py
@@ -118,7 +118,6 @@
    costEquipPlaceList = ipyData.GetCostEquipPlace()
    costEquipColorList = ipyData.GetCostEquipColor()
    isJobLimit = ipyData.GetIsJobLimit()
    suitTotalRate = ipyData.GetSuitTotalRate()
    itemPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
    delEquipIndexList = []
    totalEquipStars = ChEquip.GetTotalEquipStars(curPlayer)
@@ -144,15 +143,11 @@
                return result
            if isJobLimit and not ItemCommon.CheckJob(curPlayer, costEquip):
                return result
            isSuite = 1 if costEquip.GetSuiteID() else 0
            rateIpyData = IpyGameDataPY.GetIpyGameData('EquipStarUpRate', ItemCommon.GetItemClassLV(costEquip),
                                                   itemColor, equipPlace, isSuite
                                                   )
            if not rateIpyData:
            if ItemCommon.GetItemClassLV(costEquip) != classLV:
                return result
            curRate += rateIpyData.GetRate()
            addRate = ipyData.GetSuitRate()  if costEquip.GetSuiteID() else ipyData.GetUnSuitRate()
            curRate += addRate
            delEquipIndexList.append(index)
    if totalEquipStars < IpyGameDataPY.GetFuncCfg('EquipStarCustomized'):
        curRate = 100
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1380,7 +1380,8 @@
                        ("BYTE", "IsJobLimit", 0),
                        ("list", "CostEquipColor", 0),
                        ("BYTE", "CostEquipCnt", 0),
                        ("BYTE", "SuitTotalRate", 0),
                        ("BYTE", "UnSuitRate", 0),
                        ("BYTE", "SuitRate", 0),
                        ("dict", "CostItemDict", 0),
                        ("dict", "StarAttrInfo", 0),
                        ("dict", "BaseAttrInfo", 0),
@@ -1482,14 +1483,6 @@
                        ("DWORD", "NeedExp", 0),
                        ("dict", "AttrInfo", 0),
                        ("BYTE", "SkinIndex", 0),
                        ),
                "EquipStarUpRate":(
                        ("DWORD", "ClassLV", 1),
                        ("DWORD", "EquipColor", 1),
                        ("DWORD", "EquipPlace", 1),
                        ("DWORD", "IsSuite", 1),
                        ("DWORD", "Rate", 0),
                        ),
                "HistoryRechargeAward":(
@@ -4327,7 +4320,8 @@
        self.IsJobLimit = 0
        self.CostEquipColor = []
        self.CostEquipCnt = 0
        self.SuitTotalRate = 0
        self.UnSuitRate = 0
        self.SuitRate = 0
        self.CostItemDict = {}
        self.StarAttrInfo = {}
        self.BaseAttrInfo = {}
@@ -4340,7 +4334,8 @@
    def GetIsJobLimit(self): return self.IsJobLimit # 是否只用本职业装备材料
    def GetCostEquipColor(self): return self.CostEquipColor # 可用装备品质
    def GetCostEquipCnt(self): return self.CostEquipCnt # 装备数量
    def GetSuitTotalRate(self): return self.SuitTotalRate # 全套装加成概率(非套50%)
    def GetUnSuitRate(self): return self.UnSuitRate # 单件非套装加成概率
    def GetSuitRate(self): return self.SuitRate # 单件套装加成概率
    def GetCostItemDict(self): return self.CostItemDict # 特殊材料
    def GetStarAttrInfo(self): return self.StarAttrInfo # 星级属性
    def GetBaseAttrInfo(self): return self.BaseAttrInfo # 基础属性增加
@@ -4552,23 +4547,6 @@
    def GetNeedExp(self): return self.NeedExp # 升级需要经验
    def GetAttrInfo(self): return self.AttrInfo # 属性
    def GetSkinIndex(self): return self.SkinIndex # 外观
# 装备升星概率表
class IPY_EquipStarUpRate():
    def __init__(self):
        self.ClassLV = 0
        self.EquipColor = 0
        self.EquipPlace = 0
        self.IsSuite = 0
        self.Rate = 0
        return
    def GetClassLV(self): return self.ClassLV # 装备阶级
    def GetEquipColor(self): return self.EquipColor # 品质
    def GetEquipPlace(self): return self.EquipPlace # 部位
    def GetIsSuite(self): return self.IsSuite # 是否套装
    def GetRate(self): return self.Rate # 概率
# 累计充值奖励表
class IPY_HistoryRechargeAward():
@@ -4905,8 +4883,6 @@
        self.ipyLingGenEffectLen = len(self.ipyLingGenEffectCache)
        self.ipyHorsePetSkinCache = self.__LoadFileData("HorsePetSkin", IPY_HorsePetSkin)
        self.ipyHorsePetSkinLen = len(self.ipyHorsePetSkinCache)
        self.ipyEquipStarUpRateCache = self.__LoadFileData("EquipStarUpRate", IPY_EquipStarUpRate)
        self.ipyEquipStarUpRateLen = len(self.ipyEquipStarUpRateCache)
        self.ipyHistoryRechargeAwardCache = self.__LoadFileData("HistoryRechargeAward", IPY_HistoryRechargeAward)
        self.ipyHistoryRechargeAwardLen = len(self.ipyHistoryRechargeAwardCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
@@ -5373,8 +5349,6 @@
    def GetLingGenEffectByIndex(self, index): return self.ipyLingGenEffectCache[index]
    def GetHorsePetSkinCount(self): return self.ipyHorsePetSkinLen
    def GetHorsePetSkinByIndex(self, index): return self.ipyHorsePetSkinCache[index]
    def GetEquipStarUpRateCount(self): return self.ipyEquipStarUpRateLen
    def GetEquipStarUpRateByIndex(self, index): return self.ipyEquipStarUpRateCache[index]
    def GetHistoryRechargeAwardCount(self): return self.ipyHistoryRechargeAwardLen
    def GetHistoryRechargeAwardByIndex(self, index): return self.ipyHistoryRechargeAwardCache[index]