少年修仙传客户端代码仓库
client_linchunjie
2019-03-25 e627bb5b475ee9def6e2cb014ca0a93f97615840
3335 灵根开发
4个文件已删除
35个文件已修改
1193 ■■■■ 已修改文件
Core/GameEngine/Model/TelPartialConfig/tagEquipGSParamConfig.cs 82 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Lua/Gen/EquipGSParamConfigWrap.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Lua/Gen/UIHelperWrap.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Auction/AuctionNewGetBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/GetEquipPathTips.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/GetEquipPathWin.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/GetPetMatPathWin.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipBasePropertyWidget.cs 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/EquipTip.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/GuardTip.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/ItemLogicUtility.cs 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/ItemTipsModel.cs 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/PetMatInfoWin.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/WashAttrPointWin.cs 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Mount/MountPanelAssignment.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Pet/PetAttributeMethods.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Pet/TargetPetAttrWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/ReikiRootModel.cs 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/ReikiRootPointBehaviour.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/RoleAttrWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/RolePanel.cs 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/RolePointModel.cs 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/RolePointModel.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/RolePointWin.cs 458 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/RolePointWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RoleParticulars/RoleParticularModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RolePromote/RolePromoteModel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Store/Logic/BuyEquipTip.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Store/Logic/BuyGuardTip.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Store/Logic/BuyPetMatInfoWin.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Tip/PromoteDetailsWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureCollectPanelPattern3.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowBase/ModelCenter.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowJump/WindowJumpMgr.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/ConfigInitiator.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/EnumHelper.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/UIHelper.cs 96 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/TelPartialConfig/tagEquipGSParamConfig.cs
@@ -4,7 +4,7 @@
public partial class EquipGSParamConfig : IConfigPostProcess
{
    private static Dictionary<string, EquipGSParamConfig> s_tagGSModelDict = new Dictionary<string, EquipGSParamConfig>();//用于记录装备评分数据
    private static Dictionary<AttrEnum, int> _tagGsProValueDict = new Dictionary<AttrEnum, int>();
    private static Dictionary<PropertyType, int> _tagGsProValueDict = new Dictionary<PropertyType, int>();
    public void OnConfigParseCompleted()
    {
@@ -20,52 +20,52 @@
        return gsModel;
    }
    public static Dictionary<AttrEnum, int> GetTagGsProValueDict(int lv, int color, int star)
    public static Dictionary<PropertyType, int> GetTagGsProValueDict(int lv, int color, int star)
    {
        _tagGsProValueDict.Clear();
        EquipGSParamConfig gsModel = GetGSModel(lv, color, star);
        if (gsModel == null)
            return null;
        _tagGsProValueDict.Add(AttrEnum.AtkPrecent, gsModel.AtkPerC);
        _tagGsProValueDict.Add(AttrEnum.AddHurt, gsModel.DamagePerC);
        _tagGsProValueDict.Add(AttrEnum.CritChance, gsModel.SuperHitRateC);
        _tagGsProValueDict.Add(AttrEnum.CritHurtPrecent, gsModel.SuperHitPerC);
        _tagGsProValueDict.Add(AttrEnum.ReduceHurt, gsModel.DamReduceC);
        _tagGsProValueDict.Add(AttrEnum.HpPrecent, gsModel.MaxHPPerC);
        _tagGsProValueDict.Add(AttrEnum.DefencePrecent, gsModel.DefPerC);
        _tagGsProValueDict.Add(AttrEnum.HeartHit, gsModel.LuckyHitRateC);
        _tagGsProValueDict.Add(AttrEnum.PetAddHurt, gsModel.PetDamPerC);
        _tagGsProValueDict.Add(AttrEnum.EveryLvAddAtk, gsModel.PerLVAtkC);
        _tagGsProValueDict.Add(AttrEnum.DodgePrecent, gsModel.MissRateC);
        _tagGsProValueDict.Add(AttrEnum.HitPrecent, gsModel.HitRateC);
        _tagGsProValueDict.Add(AttrEnum.HurtReflect, gsModel.DamBackPerC);
        _tagGsProValueDict.Add(AttrEnum.EveryLvAddHp, gsModel.PerLVMaxHPC);
        _tagGsProValueDict.Add(AttrEnum.AddEquipDropPrecent, gsModel.DropEquipPerC);
        _tagGsProValueDict.Add(AttrEnum.AddCoinsPrecent, gsModel.DropMoneyPerC);
        _tagGsProValueDict.Add(AttrEnum.DefyDefResis, gsModel.IgnoreDefRateReduceC);
        _tagGsProValueDict.Add(AttrEnum.DefChance, gsModel.DamChanceDefC);
        _tagGsProValueDict.Add(AttrEnum.CritResis, gsModel.SuperHitReduceC);
        _tagGsProValueDict.Add(AttrEnum.SkillHurt, gsModel.SkillAtkRateC);
        _tagGsProValueDict.Add(AttrEnum.MoveSpeedPrecent, gsModel.SpeedPerC);
        _tagGsProValueDict.Add(AttrEnum.ATKSPEED, gsModel.AtkSpeedC);
        _tagGsProValueDict.Add(AttrEnum.SkillHurtPrecent, gsModel.SkillAtkRateReduceC);
        _tagGsProValueDict.Add(AttrEnum.HIT, gsModel.HitC);
        _tagGsProValueDict.Add(AttrEnum.MISS, gsModel.MissC);
        _tagGsProValueDict.Add(AttrEnum.SkillAddPerA, gsModel.SkillAddPerAC);
        _tagGsProValueDict.Add(AttrEnum.SkillAddPerB, gsModel.SkillAddPerBC);
        _tagGsProValueDict.Add(AttrEnum.SkillAddPerC, gsModel.SkillAddPerCC);
        _tagGsProValueDict.Add(AttrEnum.SkillAddPerD, gsModel.SkillAddPerDC);
        _tagGsProValueDict.Add(AttrEnum.SkillAddPerE, gsModel.SkillAddPerEC);
        _tagGsProValueDict.Add(AttrEnum.SkillAddPerF, gsModel.SkillAddPerFC);
        _tagGsProValueDict.Add(AttrEnum.SkillAddPerG, gsModel.SkillAddPerGC);
        _tagGsProValueDict.Add(AttrEnum.SkillReducePerA, gsModel.SkillReducePerAC);
        _tagGsProValueDict.Add(AttrEnum.SkillReducePerB, gsModel.SkillReducePerBC);
        _tagGsProValueDict.Add(AttrEnum.SkillReducePerC, gsModel.SkillReducePerCC);
        _tagGsProValueDict.Add(AttrEnum.SkillReducePerD, gsModel.SkillReducePerDC);
        _tagGsProValueDict.Add(AttrEnum.SkillReducePerE, gsModel.SkillReducePerEC);
        _tagGsProValueDict.Add(AttrEnum.SkillReducePerF, gsModel.SkillReducePerFC);
        _tagGsProValueDict.Add(AttrEnum.SkillReducePerG, gsModel.SkillReducePerGC);
        _tagGsProValueDict.Add(PropertyType.AtkPrecent, gsModel.AtkPerC);
        _tagGsProValueDict.Add(PropertyType.AddHurt, gsModel.DamagePerC);
        _tagGsProValueDict.Add(PropertyType.CritChance, gsModel.SuperHitRateC);
        _tagGsProValueDict.Add(PropertyType.CritHurtPrecent, gsModel.SuperHitPerC);
        _tagGsProValueDict.Add(PropertyType.ReduceHurt, gsModel.DamReduceC);
        _tagGsProValueDict.Add(PropertyType.HpPrecent, gsModel.MaxHPPerC);
        _tagGsProValueDict.Add(PropertyType.DefencePrecent, gsModel.DefPerC);
        _tagGsProValueDict.Add(PropertyType.HeartHit, gsModel.LuckyHitRateC);
        _tagGsProValueDict.Add(PropertyType.PetAddHurt, gsModel.PetDamPerC);
        _tagGsProValueDict.Add(PropertyType.EveryLvAddAtk, gsModel.PerLVAtkC);
        _tagGsProValueDict.Add(PropertyType.DodgePrecent, gsModel.MissRateC);
        _tagGsProValueDict.Add(PropertyType.HitPrecent, gsModel.HitRateC);
        _tagGsProValueDict.Add(PropertyType.HurtReflect, gsModel.DamBackPerC);
        _tagGsProValueDict.Add(PropertyType.EveryLvAddHp, gsModel.PerLVMaxHPC);
        _tagGsProValueDict.Add(PropertyType.AddEquipDropPrecent, gsModel.DropEquipPerC);
        _tagGsProValueDict.Add(PropertyType.AddCoinsPrecent, gsModel.DropMoneyPerC);
        _tagGsProValueDict.Add(PropertyType.DefyDefResis, gsModel.IgnoreDefRateReduceC);
        _tagGsProValueDict.Add(PropertyType.DefChance, gsModel.DamChanceDefC);
        _tagGsProValueDict.Add(PropertyType.CritResis, gsModel.SuperHitReduceC);
        _tagGsProValueDict.Add(PropertyType.SkillHurt, gsModel.SkillAtkRateC);
        _tagGsProValueDict.Add(PropertyType.MoveSpeedPrecent, gsModel.SpeedPerC);
        _tagGsProValueDict.Add(PropertyType.ATKSPEED, gsModel.AtkSpeedC);
        _tagGsProValueDict.Add(PropertyType.SkillHurtPrecent, gsModel.SkillAtkRateReduceC);
        _tagGsProValueDict.Add(PropertyType.HIT, gsModel.HitC);
        _tagGsProValueDict.Add(PropertyType.MISS, gsModel.MissC);
        _tagGsProValueDict.Add(PropertyType.SkillAddPerA, gsModel.SkillAddPerAC);
        _tagGsProValueDict.Add(PropertyType.SkillAddPerB, gsModel.SkillAddPerBC);
        _tagGsProValueDict.Add(PropertyType.SkillAddPerC, gsModel.SkillAddPerCC);
        _tagGsProValueDict.Add(PropertyType.SkillAddPerD, gsModel.SkillAddPerDC);
        _tagGsProValueDict.Add(PropertyType.SkillAddPerE, gsModel.SkillAddPerEC);
        _tagGsProValueDict.Add(PropertyType.SkillAddPerF, gsModel.SkillAddPerFC);
        _tagGsProValueDict.Add(PropertyType.SkillAddPerG, gsModel.SkillAddPerGC);
        _tagGsProValueDict.Add(PropertyType.SkillReducePerA, gsModel.SkillReducePerAC);
        _tagGsProValueDict.Add(PropertyType.SkillReducePerB, gsModel.SkillReducePerBC);
        _tagGsProValueDict.Add(PropertyType.SkillReducePerC, gsModel.SkillReducePerCC);
        _tagGsProValueDict.Add(PropertyType.SkillReducePerD, gsModel.SkillReducePerDC);
        _tagGsProValueDict.Add(PropertyType.SkillReducePerE, gsModel.SkillReducePerEC);
        _tagGsProValueDict.Add(PropertyType.SkillReducePerF, gsModel.SkillReducePerFC);
        _tagGsProValueDict.Add(PropertyType.SkillReducePerG, gsModel.SkillReducePerGC);
        return _tagGsProValueDict;
    }
}
Lua/Gen/EquipGSParamConfigWrap.cs
@@ -374,7 +374,7 @@
                    int _color = LuaAPI.xlua_tointeger(L, 2);
                    int _star = LuaAPI.xlua_tointeger(L, 3);
                    
                        System.Collections.Generic.Dictionary<AttrEnum, int> gen_ret = EquipGSParamConfig.GetTagGsProValueDict( _lv, _color, _star );
                        System.Collections.Generic.Dictionary<PropertyType, int> gen_ret = EquipGSParamConfig.GetTagGsProValueDict( _lv, _color, _star );
                        translator.Push(L, gen_ret);
                    
                    
Lua/Gen/UIHelperWrap.cs
@@ -230,7 +230,7 @@
            
                
                {
                    AttrEnum _type;translator.Get(L, 1, out _type);
                    PropertyType _type;translator.Get(L, 1, out _type);
                    
                        float gen_ret = UIHelper.GetPropertyMapPlayerData( _type );
                        LuaAPI.lua_pushnumber(L, gen_ret);
System/Auction/AuctionNewGetBehaviour.cs
@@ -18,7 +18,7 @@
        PackModel packModel { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
        AuctionNewGetShowModel model { get { return ModelCenter.Instance.GetModel<AuctionNewGetShowModel>(); } }
        AuctionHelpModel auctionHelpModel = ModelCenter.Instance.GetModel<AuctionHelpModel>();
        AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } }
        string guid;
        public void Display(string guid)
System/BlastFurnace/GetEquipPathTips.cs
@@ -130,7 +130,7 @@
            }
        }
        Dictionary<AttrEnum, int> needPointDict = new Dictionary<AttrEnum, int>();
        Dictionary<PropertyType, int> needPointDict = new Dictionary<PropertyType, int>();
        Color32 conditionColor = new Color32(255, 244, 205, 255);
        Color32 conditionRedColor = new Color32(255, 1, 1, 255);
@@ -316,20 +316,20 @@
            needPointDict.Clear();
            if (itemAttrData.itemConfig.LimitSTR > 0)
            {
                needPointDict.Add(AttrEnum.POWER, itemAttrData.itemConfig.LimitSTR);
                needPointDict.Add(PropertyType.POWER, itemAttrData.itemConfig.LimitSTR);
            }
            if (itemAttrData.itemConfig.LimitPHY > 0)
            {
                needPointDict.Add(AttrEnum.AGILITY, itemAttrData.itemConfig.LimitPHY);
                needPointDict.Add(PropertyType.AGILITY, itemAttrData.itemConfig.LimitPHY);
            }
            if (itemAttrData.itemConfig.LimitPNE > 0)
            {
                needPointDict.Add(AttrEnum.MENTALITY, itemAttrData.itemConfig.LimitPNE);
                needPointDict.Add(PropertyType.MENTALITY, itemAttrData.itemConfig.LimitPNE);
            }
            List<AttrEnum> needlist = needPointDict.Keys.ToList();
            List<PropertyType> needlist = needPointDict.Keys.ToList();
            int i = 0;
            for (i = 0; i < needPointTextlist.Count; i++)
@@ -340,7 +340,7 @@
                    needPointNumlist[i].gameObject.SetActive(true);
                    switch (needlist[i])
                    {
                        case AttrEnum.POWER:
                        case PropertyType.POWER:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]],needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
@@ -350,7 +350,7 @@
                                SetNeedPointUI(1,needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
                            }
                            break;
                        case AttrEnum.AGILITY:
                        case PropertyType.AGILITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]],needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS112"));
@@ -361,7 +361,7 @@
                            }
                            break;
                        case AttrEnum.MENTALITY:
                        case PropertyType.MENTALITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]],needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS111"));
System/BlastFurnace/GetEquipPathWin.cs
@@ -138,7 +138,7 @@
            }
        }
        Dictionary<AttrEnum, int> needPointDict = new Dictionary<AttrEnum, int>();
        Dictionary<PropertyType, int> needPointDict = new Dictionary<PropertyType, int>();
        Color32 conditionColor = new Color32(255, 244, 205, 255);
        Color32 conditionRedColor = new Color32(255, 1, 1, 255);
@@ -315,20 +315,20 @@
            needPointDict.Clear();
            if (itemPathModel.chinItemModel.LimitSTR > 0)
            {
                needPointDict.Add(AttrEnum.POWER, itemPathModel.chinItemModel.LimitSTR);
                needPointDict.Add(PropertyType.POWER, itemPathModel.chinItemModel.LimitSTR);
            }
            if (itemPathModel.chinItemModel.LimitPHY > 0)
            {
                needPointDict.Add(AttrEnum.AGILITY, itemPathModel.chinItemModel.LimitPHY);
                needPointDict.Add(PropertyType.AGILITY, itemPathModel.chinItemModel.LimitPHY);
            }
            if (itemPathModel.chinItemModel.LimitPNE > 0)
            {
                needPointDict.Add(AttrEnum.MENTALITY, itemPathModel.chinItemModel.LimitPNE);
                needPointDict.Add(PropertyType.MENTALITY, itemPathModel.chinItemModel.LimitPNE);
            }
            List<AttrEnum> needlist = needPointDict.Keys.ToList();
            List<PropertyType> needlist = needPointDict.Keys.ToList();
            int i = 0;
            for (i = 0; i < needPointTextlist.Count; i++)
@@ -339,7 +339,7 @@
                    needPointNumlist[i].gameObject.SetActive(true);
                    switch (needlist[i])
                    {
                        case AttrEnum.POWER:
                        case PropertyType.POWER:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]],needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
@@ -349,7 +349,7 @@
                                SetNeedPointUI(1,needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
                            }
                            break;
                        case AttrEnum.AGILITY:
                        case PropertyType.AGILITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]],needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS112"));
@@ -360,7 +360,7 @@
                            }
                            break;
                        case AttrEnum.MENTALITY:
                        case PropertyType.MENTALITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]],needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS111"));
System/BlastFurnace/GetPetMatPathWin.cs
@@ -178,14 +178,14 @@
                string minAtkValue = "";
                attrNamelist[code].gameObject.SetActive(true);
                attrValuelist[code].gameObject.SetActive(true);
                switch ((AttrEnum)attrIdlist[i])
                switch ((PropertyType)attrIdlist[i])
                {
                    case AttrEnum.MinAtk:
                    case PropertyType.MinAtk:
                        break;
                    case AttrEnum.PetMinAtk:
                    case PropertyType.PetMinAtk:
                        break;
                    case AttrEnum.PetMaxAtk:
                    case AttrEnum.MaxAtk:
                    case PropertyType.PetMaxAtk:
                    case PropertyType.MaxAtk:
                        tipsModel.SetPetAttrStr(attrIdlist[i - 1], itemEffectDict[attrIdlist[i - 1]], out minAtkName, out minAtkValue);
                        tipsModel.SetPetAttrStr(attrIdlist[i], itemEffectDict[attrIdlist[i]], out attrName, out attrValue, minAtkValue);
                        code += 1;
System/ItemTip/TipBasePropertyWidget.cs
@@ -20,14 +20,14 @@
            var normalProperties = new List<Int3>();
            foreach (var item in data.baseProperties)
            {
                switch ((AttrEnum)item.x)
                switch ((PropertyType)item.x)
                {
                    case AttrEnum.MinAtk:
                    case AttrEnum.PetMinAtk:
                    case PropertyType.MinAtk:
                    case PropertyType.PetMinAtk:
                        attack.x = item.y;
                        break;
                    case AttrEnum.MaxAtk:
                    case AttrEnum.PetMaxAtk:
                    case PropertyType.MaxAtk:
                    case PropertyType.PetMaxAtk:
                        attack.y = item.y;
                        break;
                    default:
@@ -40,9 +40,9 @@
            {
                foreach (var item in data.starProperties)
                {
                    switch ((AttrEnum)item.x)
                    switch ((PropertyType)item.x)
                    {
                        case AttrEnum.ATK:
                        case PropertyType.ATK:
                            attack.z = item.y;
                            break;
                        default:
@@ -62,11 +62,11 @@
            var lineIndex = 0;
            if (attack != Int3.zero)
            {
                var config = PlayerPropertyConfig.Get((int)AttrEnum.ATK);
                var config = PlayerPropertyConfig.Get((int)PropertyType.ATK);
                var name = config.Name;
                if (attack.z > 0)
                {
                    var starValue = PlayerPropertyConfig.GetValueDescription((int)AttrEnum.ATK, attack.z);
                    var starValue = PlayerPropertyConfig.GetValueDescription((int)PropertyType.ATK, attack.z);
                    var starDescription = UIHelper.AppendColor(TextColType.Green, string.Format(" ({0}星+{1})", data.star, starValue));
                    lines[lineIndex++] = string.Format("{0} +{1}-{2}{3}", name, attack.x, attack.y, starDescription);
                }
System/KnapSack/Logic/EquipTip.cs
@@ -103,7 +103,7 @@
        [SerializeField]
        CanvasGroup tipAlpha;
        Dictionary<AttrEnum, int> needPointDict = new Dictionary<AttrEnum, int>();
        Dictionary<PropertyType, int> needPointDict = new Dictionary<PropertyType, int>();
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel {
@@ -373,20 +373,20 @@
            needPointDict.Clear();
            if (itemAttrData.itemConfig.LimitSTR > 0)
            {
                needPointDict.Add(AttrEnum.POWER, itemAttrData.itemConfig.LimitSTR);
                needPointDict.Add(PropertyType.POWER, itemAttrData.itemConfig.LimitSTR);
            }
            if (itemAttrData.itemConfig.LimitPHY > 0)
            {
                needPointDict.Add(AttrEnum.AGILITY, itemAttrData.itemConfig.LimitPHY);
                needPointDict.Add(PropertyType.AGILITY, itemAttrData.itemConfig.LimitPHY);
            }
            if (itemAttrData.itemConfig.LimitPNE > 0)
            {
                needPointDict.Add(AttrEnum.MENTALITY, itemAttrData.itemConfig.LimitPNE);
                needPointDict.Add(PropertyType.MENTALITY, itemAttrData.itemConfig.LimitPNE);
            }
            List<AttrEnum> needlist = needPointDict.Keys.ToList();
            List<PropertyType> needlist = needPointDict.Keys.ToList();
            int i = 0;
            float offset = 0;
@@ -399,7 +399,7 @@
                    offset = needPointDict[needlist[i]] - UIHelper.GetPropertyMapPlayerData(needlist[i]);
                    switch (needlist[i])
                    {
                        case AttrEnum.POWER:
                        case PropertyType.POWER:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
@@ -409,7 +409,7 @@
                                SetNeedPointUI(1, 0, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
                            }
                            break;
                        case AttrEnum.AGILITY:
                        case PropertyType.AGILITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS112"));
@@ -420,7 +420,7 @@
                            }
                            break;
                        case AttrEnum.MENTALITY:
                        case PropertyType.MENTALITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS111"));
System/KnapSack/Logic/GuardTip.cs
@@ -68,7 +68,7 @@
        [SerializeField]
        CanvasGroup tipAlpha;
        Dictionary<AttrEnum, int> needPointDict = new Dictionary<AttrEnum, int>();
        Dictionary<PropertyType, int> needPointDict = new Dictionary<PropertyType, int>();
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel
@@ -263,20 +263,20 @@
            needPointDict.Clear();
            if (itemAttrData.itemConfig.LimitSTR > 0)
            {
                needPointDict.Add(AttrEnum.POWER, itemAttrData.itemConfig.LimitSTR);
                needPointDict.Add(PropertyType.POWER, itemAttrData.itemConfig.LimitSTR);
            }
            if (itemAttrData.itemConfig.LimitPHY > 0)
            {
                needPointDict.Add(AttrEnum.AGILITY, itemAttrData.itemConfig.LimitPHY);
                needPointDict.Add(PropertyType.AGILITY, itemAttrData.itemConfig.LimitPHY);
            }
            if (itemAttrData.itemConfig.LimitPNE > 0)
            {
                needPointDict.Add(AttrEnum.MENTALITY, itemAttrData.itemConfig.LimitPNE);
                needPointDict.Add(PropertyType.MENTALITY, itemAttrData.itemConfig.LimitPNE);
            }
            List<AttrEnum> needlist = needPointDict.Keys.ToList();
            List<PropertyType> needlist = needPointDict.Keys.ToList();
            int i = 0;
            float offset = 0;
@@ -289,7 +289,7 @@
                    offset = needPointDict[needlist[i]] - UIHelper.GetPropertyMapPlayerData(needlist[i]);
                    switch (needlist[i])
                    {
                        case AttrEnum.POWER:
                        case PropertyType.POWER:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
@@ -299,7 +299,7 @@
                                SetNeedPointUI(1, 0, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
                            }
                            break;
                        case AttrEnum.AGILITY:
                        case PropertyType.AGILITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS112"));
@@ -310,7 +310,7 @@
                            }
                            break;
                        case AttrEnum.MENTALITY:
                        case PropertyType.MENTALITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS111"));
System/KnapSack/Logic/ItemLogicUtility.cs
@@ -288,7 +288,7 @@
        /// </summary>
        /// <param name="itemId"></param>
        /// <returns></returns>
        private Dictionary<AttrEnum, float> curEquipAttrDict = new Dictionary<AttrEnum, float>(); //存储当前装备属性对应的数值 key 属性 value 属性值
        private Dictionary<PropertyType, float> curEquipAttrDict = new Dictionary<PropertyType, float>(); //存储当前装备属性对应的数值 key 属性 value 属性值
        private int CalculateEquipScore(PackType type, int itemId, EquipSorceProperties properties)
        {
            var config = ItemConfig.Get(itemId);
@@ -303,12 +303,12 @@
            var GSProValueDict = EquipGSParamConfig.GetTagGsProValueDict(config.LV, config.ItemColor, config.StarLevel);
            foreach (var key in properties.Keys)
            {
                var attrType = (AttrEnum)key;
                var attrType = (PropertyType)key;
                switch (attrType)
                {
                    case AttrEnum.ATKSPEED:
                    case AttrEnum.OnlyFinalHurt:
                    case AttrEnum.PVPAtkBackHP:
                    case PropertyType.ATKSPEED:
                    case PropertyType.OnlyFinalHurt:
                    case PropertyType.PVPAtkBackHP:
                        curEquipAttrDict.Add(attrType, properties[key]);
                        break;
                    default:
@@ -361,25 +361,25 @@
        private void ConvertAttrId(int attrId, int attrValue, Dictionary<int, int> keyValues)
        {
            switch ((AttrEnum)attrId)
            switch ((PropertyType)attrId)
            {
                case AttrEnum.ATK:
                    if (!keyValues.ContainsKey((int)AttrEnum.MinAtk))
                case PropertyType.ATK:
                    if (!keyValues.ContainsKey((int)PropertyType.MinAtk))
                    {
                        keyValues.Add(((int)AttrEnum.MinAtk), attrValue);
                        keyValues.Add(((int)PropertyType.MinAtk), attrValue);
                    }
                    else
                    {
                        keyValues[(int)AttrEnum.MinAtk] += attrValue;
                        keyValues[(int)PropertyType.MinAtk] += attrValue;
                    }
                    if (!keyValues.ContainsKey((int)AttrEnum.MaxAtk))
                    if (!keyValues.ContainsKey((int)PropertyType.MaxAtk))
                    {
                        keyValues.Add(((int)AttrEnum.MaxAtk), attrValue);
                        keyValues.Add(((int)PropertyType.MaxAtk), attrValue);
                    }
                    else
                    {
                        keyValues[(int)AttrEnum.MaxAtk] += attrValue;
                        keyValues[(int)PropertyType.MaxAtk] += attrValue;
                    }
                    break;
                default:
System/KnapSack/Logic/ItemTipsModel.cs
@@ -1074,12 +1074,12 @@
                if (playerProModel != null)
                {
                    string s = "";
                    switch ((AttrEnum)idlist[i])
                    switch ((PropertyType)idlist[i])
                    {
                        case AttrEnum.OnlyFinalHurt:
                        case PropertyType.OnlyFinalHurt:
                            s = Language.Get("EquipTip_ExtraDamage", GetExhaustedAttrValue(idlist[i], valuelist[i]), GetExhaustedMaxLv(attrData.itemConfig.LV), valuelist[i]);
                            break;
                        case AttrEnum.PVPAtkBackHP:
                        case PropertyType.PVPAtkBackHP:
                            s = Language.Get("EquipTip_ExtraHpBack", GetExhaustedAttrValue(idlist[i], valuelist[i]), GetExhaustedMaxLv(attrData.itemConfig.LV), valuelist[i]);
                            break;
                    }
@@ -1283,9 +1283,9 @@
            attrName = "";
            attrValueStr = "";
            PlayerPropertyConfig playerProModel = null;
            if (attrId == (int)AttrEnum.MaxAtk || attrId == (int)AttrEnum.PetMaxAtk)
            if (attrId == (int)PropertyType.MaxAtk || attrId == (int)PropertyType.PetMaxAtk)
            {
                playerProModel = PlayerPropertyConfig.Get((int)AttrEnum.ATK);
                playerProModel = PlayerPropertyConfig.Get((int)PropertyType.ATK);
            }
            else
            {
@@ -1331,66 +1331,66 @@
            foreach (var attrId in itemEffectDict.Keys)
            {
                var attrValue = itemEffectDict[attrId];
                switch ((AttrEnum)attrId)
                switch ((PropertyType)attrId)
                {
                    case AttrEnum.ATK:
                    case PropertyType.ATK:
                        atk += attrValue;
                        break;
                    case AttrEnum.HP:
                    case PropertyType.HP:
                        hp += attrValue;
                        break;
                    case AttrEnum.DEF:
                    case PropertyType.DEF:
                        def += attrValue;
                        break;
                    case AttrEnum.HorseAtkPer:
                    case PropertyType.HorseAtkPer:
                        float mountAtk = mountDatas.GetAllMountAttack();
                        atk += Mathf.RoundToInt(mountAtk * ((float)attrValue / 10000));
                        break;
                    case AttrEnum.StoneBasePer:
                    case PropertyType.StoneBasePer:
                        var stoneDict = GetStoneAttrDict();
                        foreach (var key in stoneDict.Keys)
                        {
                            var stoneValue = stoneDict[key];
                            switch ((AttrEnum)key)
                            switch ((PropertyType)key)
                            {
                                case AttrEnum.ATK:
                                case PropertyType.ATK:
                                    atk += Mathf.RoundToInt(stoneValue * ((float)attrValue / 10000));
                                    break;
                                case AttrEnum.HP:
                                case PropertyType.HP:
                                    hp += Mathf.RoundToInt(stoneValue * ((float)attrValue / 10000));
                                    break;
                                case AttrEnum.DEF:
                                case PropertyType.DEF:
                                    def += Mathf.RoundToInt(stoneValue * ((float)attrValue / 10000));
                                    break;
                            }
                        }
                        break;
                    case AttrEnum.RealmBasePer:
                    case PropertyType.RealmBasePer:
                        var realmDict = GetRealmAttrDict();
                        foreach (var key in realmDict.Keys)
                        {
                            var realmValue = realmDict[key];
                            switch ((AttrEnum)key)
                            switch ((PropertyType)key)
                            {
                                case AttrEnum.ATK:
                                case PropertyType.ATK:
                                    atk += Mathf.RoundToInt(realmValue * ((float)attrValue / 10000));
                                    break;
                                case AttrEnum.HP:
                                case PropertyType.HP:
                                    hp += Mathf.RoundToInt(realmValue * ((float)attrValue / 10000));
                                    break;
                                case AttrEnum.DEF:
                                case PropertyType.DEF:
                                    def += Mathf.RoundToInt(realmValue * ((float)attrValue / 10000));
                                    break;
                            }
                        }
                        break;
                    case AttrEnum.PetSkillAtkRate:
                    case PropertyType.PetSkillAtkRate:
                        break;
                    case AttrEnum.PlusBaseAtkPer:
                    case PropertyType.PlusBaseAtkPer:
                        var strengthDict = GetStrengthAttrDict();
                        if (strengthDict.ContainsKey((int)AttrEnum.ATK))
                        if (strengthDict.ContainsKey((int)PropertyType.ATK))
                        {
                            var strengthValue = strengthDict[(int)AttrEnum.ATK];
                            var strengthValue = strengthDict[(int)PropertyType.ATK];
                            atk += Mathf.RoundToInt(strengthValue * ((float)attrValue / 10000));
                        }
                        break;
@@ -1405,17 +1405,17 @@
            if (atk > 0)
            {
                attrDict.Add((int)AttrEnum.ATK, atk);
                attrDict.Add((int)PropertyType.ATK, atk);
            }
            if (def > 0)
            {
                attrDict.Add((int)AttrEnum.DEF, def);
                attrDict.Add((int)PropertyType.DEF, def);
            }
            if (hp > 0)
            {
                attrDict.Add((int)AttrEnum.HP, hp);
                attrDict.Add((int)PropertyType.HP, hp);
            }
            fightPower = UIHelper.GetFightPower(attrDict);
System/KnapSack/Logic/PetMatInfoWin.cs
@@ -145,14 +145,14 @@
                string minAtkValue = "";
                attrNamelist[code].gameObject.SetActive(true);
                attrValuelist[code].gameObject.SetActive(true);
                switch ((AttrEnum)attrIdlist[i])
                switch ((PropertyType)attrIdlist[i])
                {
                    case AttrEnum.MinAtk:
                    case PropertyType.MinAtk:
                        break;
                    case AttrEnum.PetMinAtk:
                    case PropertyType.PetMinAtk:
                        break;
                    case AttrEnum.PetMaxAtk:
                    case AttrEnum.MaxAtk:
                    case PropertyType.PetMaxAtk:
                    case PropertyType.MaxAtk:
                        tipsModel.SetPetAttrStr(attrIdlist[i - 1], itemEffectDict[attrIdlist[i - 1]], out minAtkName, out minAtkValue);
                        tipsModel.SetPetAttrStr(attrIdlist[i], itemEffectDict[attrIdlist[i]], out attrName, out attrValue, minAtkValue);
                        code += 1;
System/KnapSack/Logic/WashAttrPointWin.cs
@@ -24,7 +24,7 @@
        public static ItemModel itemModel = null;
        private ItemConfig itemConfig = null;
        private AttrEnum selectAttr = AttrEnum.POWER;
        private PropertyType selectAttr = PropertyType.POWER;
        float washPoint = 0;
@@ -92,48 +92,26 @@
        {
            if (strenToggle.isOn)
            {
                selectAttr = AttrEnum.POWER;
                selectAttr = PropertyType.POWER;
            }
            else if (agilityToggle.isOn)
            {
                selectAttr = AttrEnum.AGILITY;
                selectAttr = PropertyType.AGILITY;
            }
            else if (physiqueToggle.isOn)
            {
                selectAttr = AttrEnum.PHYSIQUE;
                selectAttr = PropertyType.PHYSIQUE;
            }
            else if (mentAlityToggle.isOn)
            {
                selectAttr = AttrEnum.MENTALITY;
                selectAttr = PropertyType.MENTALITY;
            }
        }
        private void RefreshWashAttrDes()
        {
            var model = ModelCenter.Instance.GetModel<RolePointModel>();
            Dictionary<int, int> dict = null;
            bool isContain = model.TryGetPointInit(PlayerDatas.Instance.baseData.Job,out dict);
            float initPoint = 0;
            if(isContain && dict.ContainsKey((int)selectAttr))
            {
                initPoint = dict[(int)selectAttr];
            }
            switch (selectAttr)
            {
                case AttrEnum.POWER:
                    washPoint = PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.BaseSTR) - initPoint;
                    break;
                case AttrEnum.AGILITY:
                    washPoint = PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.BasePHY) - initPoint;
                    break;
                case AttrEnum.PHYSIQUE:
                    washPoint = PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.BaseCON) - initPoint;
                    break;
                case AttrEnum.MENTALITY:
                    washPoint = PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.BasePNE) - initPoint;
                    break;
            }
            var model = ModelCenter.Instance.GetModel<ReikiRootModel>();
            washPoint = model.GetReikiRootFreePoint((int)selectAttr);
            PlayerPropertyConfig propertyConfig = PlayerPropertyConfig.Get((int)selectAttr);
            washAttrDesText.text = Language.Get("BagWin_Washpoint2", propertyConfig.Name, UIHelper.GetPropertyMapPlayerData(selectAttr), washPoint);
        }
System/Mount/MountPanelAssignment.cs
@@ -249,22 +249,22 @@
                }
                float addHp = 0;
                float addAtk = 0;
                if (addAttrDict510.ContainsKey((int)AttrEnum.HP))
                if (addAttrDict510.ContainsKey((int)PropertyType.HP))
                {
                    addHp += addAttrDict510[(int)AttrEnum.HP];
                    addHp += addAttrDict510[(int)PropertyType.HP];
                }
                if (addAttrDict511.ContainsKey((int)AttrEnum.HP))
                if (addAttrDict511.ContainsKey((int)PropertyType.HP))
                {
                    addHp += addAttrDict511[(int)AttrEnum.HP];
                    addHp += addAttrDict511[(int)PropertyType.HP];
                }
                if (addAttrDict510.ContainsKey((int)AttrEnum.ATK))
                if (addAttrDict510.ContainsKey((int)PropertyType.ATK))
                {
                    addAtk += addAttrDict510[(int)AttrEnum.ATK];
                    addAtk += addAttrDict510[(int)PropertyType.ATK];
                }
                if (addAttrDict511.ContainsKey((int)AttrEnum.ATK))
                if (addAttrDict511.ContainsKey((int)PropertyType.ATK))
                {
                    addAtk += addAttrDict511[(int)AttrEnum.ATK];
                    addAtk += addAttrDict511[(int)PropertyType.ATK];
                }
                m_HpTxt.text = ((int)(_HPP /*+ dicStone[6]*/ + addHp)).ToString();
                m_AtkTxt.text = ((int)(_AttT /*+ dicStone[7]*/ + addAtk)).ToString();
System/Pet/PetAttributeMethods.cs
@@ -406,7 +406,7 @@
                    sumFight += _scoreNumAll;
                }
                allFightText.text = (sumFight + InitFightPower).ToString();
                attackSpeed.text = ((float)UIHelper.GetPropertyMapPlayerData(AttrEnum.ATKSPEED) / 100).ToString();
                attackSpeed.text = ((float)UIHelper.GetPropertyMapPlayerData(PropertyType.ATKSPEED) / 100).ToString();
            }
        }
System/Pet/TargetPetAttrWin.cs
@@ -112,7 +112,7 @@
            m_Property_Text.text = Language.Get("SpiritPetAttribute_Z");
            curPetHitText.text = _tagPetClass.AtkAdd.ToString();//攻击力
            m_LVtext.text = _PetBackpack.PetClass + Language.Get("Z1041");
            float AtkNum = (float)UIHelper.GetPropertyMapPlayerData(AttrEnum.ATKSPEED) / 100;
            float AtkNum = (float)UIHelper.GetPropertyMapPlayerData(PropertyType.ATKSPEED) / 100;
            curPetAttackSpeedText.text = ((float)Math.Round(AtkNum, 1)).ToString();
            PetInfoConfig config = PetInfoConfig.Get(petmodel.curPetId);
System/Role/ReikiRootModel.cs
@@ -53,6 +53,8 @@
        public const int FUNCTION = 36;
        public readonly Redpoint redpoint = new Redpoint(10101, 1010101);
        public event Action onCacheFreePointRefresh;
        public event Action onReikiRootPointRefresh;
@@ -104,11 +106,14 @@
                m_RecommendReikiRoots.Add(job, new List<int>(m_RecommendProportion[job].Keys));
            }
            reikiRoots.Add((int)AttrEnum.Mater);
            reikiRoots.Add((int)AttrEnum.Wood);
            reikiRoots.Add((int)AttrEnum.Water);
            reikiRoots.Add((int)AttrEnum.Fire);
            reikiRoots.Add((int)AttrEnum.Earth);
            var config = ReikiRootConfig.GetValues()[0];
            maxQuality = config.qualityArea.Length;
            reikiRoots.Add((int)PropertyType.Mater);
            reikiRoots.Add((int)PropertyType.Wood);
            reikiRoots.Add((int)PropertyType.Water);
            reikiRoots.Add((int)PropertyType.Fire);
            reikiRoots.Add((int)PropertyType.Earth);
        }
@@ -136,11 +141,7 @@
        public int GetReikiRootQuality(int id)
        {
            if (m_ReikiRootPoints.ContainsKey(id))
            {
                return GetReikiRootQuality(id, m_ReikiRootPoints[id]);
            }
            return GetReikiRootQuality(id, 0);
            return GetReikiRootQuality(id, GetReikiRootPoint(id));
        }
        public int GetReikiRootPoint(int id)
@@ -188,9 +189,9 @@
            if (m_RecommendReikiRoots.ContainsKey(job))
            {
                var reikiRoots = m_RecommendReikiRoots[job];
                reikiRoots.Sort(QualityCompare);
                while (remainPoint > 0)
                {
                    reikiRoots.Sort(QualityCompare);
                    var id = reikiRoots[0];
                    var quality = GetReikiRootQuality(id, m_CacheReikiRootPoints[id]);
                    var addpoint = 0;
@@ -267,7 +268,7 @@
            {
                propertyDict.Add(config.propertyPerPoint.x, 0);
            }
            propertyDict[config.propertyPerPoint.x] += config.propertyPerPoint.y;
            propertyDict[config.propertyPerPoint.x] += config.propertyPerPoint.y * point;
            if (!propertyDict.ContainsKey(config.promoteProperty))
            {
@@ -316,13 +317,16 @@
        int QualityCompare(int lhs, int rhs)
        {
            var lhsQuality = GetReikiRootQuality(lhs);
            var rhsQuality = GetReikiRootQuality(rhs);
            if (mainReikiRoot == lhs || mainReikiRoot == rhs)
            var lhsQuality = GetReikiRootQuality(lhs, GetReikiRootCachePoint(lhs));
            var rhsQuality = GetReikiRootQuality(rhs, GetReikiRootCachePoint(rhs));
            if (lhs != rhs)
            {
                if (lhsQuality == rhsQuality)
                if (mainReikiRoot == lhs || mainReikiRoot == rhs)
                {
                    return mainReikiRoot == lhs ? -1 : 1;
                    if (lhsQuality == rhsQuality)
                    {
                        return mainReikiRoot == lhs ? -1 : 1;
                    }
                }
            }
            return lhsQuality.CompareTo(rhsQuality);
@@ -339,6 +343,9 @@
                case PlayerDataType.CDBPlayerRefresh_Earth:
                    RefreshReikiRootPoint();
                    break;
                case PlayerDataType.FreePoint:
                    RefreshRedpoint();
                    break;
            }
        }
@@ -346,13 +353,23 @@
        {
            foreach (var id in reikiRoots)
            {
                m_ReikiRootPoints[id] = (int)UIHelper.GetPropertyMapPlayerData((AttrEnum)id);
                m_ReikiRootPoints[id] = (int)UIHelper.GetPropertyMapPlayerData((PropertyType)id);
            }
            if (onReikiRootPointRefresh != null)
            {
                onReikiRootPointRefresh();
            }
        }
        void RefreshRedpoint()
        {
            var existFreePoint = false;
            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.ReikiRoot))
            {
                existFreePoint = freePoint > 0;
            }
            redpoint.state = existFreePoint ? RedPointState.Simple : RedPointState.None;
        }
    }
    public struct ReikiRootRecommend
System/Role/ReikiRootPointBehaviour.cs
@@ -64,8 +64,8 @@
            var propertyConfig = PlayerPropertyConfig.Get(id);
            m_PropertyName.text = propertyConfig.Name;
            var qualiaty = model.GetReikiRootQuality(id);
            m_PropertyName.color = UIHelper.GetUIColor(qualiaty);
            m_PropertyValue.text = ((int)UIHelper.GetPropertyMapPlayerData((AttrEnum)id)).ToString();
            m_PropertyName.color = UIHelper.GetUIColor(qualiaty, true);
            m_PropertyValue.text = UIHelper.GetPropertyMapPlayerData((PropertyType)id).ToString();
        }
        void DisplayPoint()
System/Role/RoleAttrWin.cs
@@ -110,12 +110,12 @@
                    case ScrollerDataType.Header:
                        {
                            Text text = cell.transform.Find("Text").GetComponent<Text>();
                            if ((AttrEnum)cfg.ID == AttrEnum.ATK)
                            if ((PropertyType)cfg.ID == PropertyType.ATK)
                            {
                                text.text = StringUtility.Contact(cfg.Name, "  ", "<color=#109d06>", UIHelper.ReplaceLargeNum(PlayerDatas.Instance.extersion.MINATK), "-", UIHelper.ReplaceLargeNum(PlayerDatas.Instance.extersion.MAXATK), "</color>");
                                return;
                            }
                            else if ((AttrEnum)cfg.ID == AttrEnum.PetHurt)
                            else if ((PropertyType)cfg.ID == PropertyType.PetHurt)
                            {
                                if (petmodel.MaxAtkNunber == 0)
                                {
@@ -127,7 +127,7 @@
                                }
                                return;
                            }
                            text.text = StringUtility.Contact(cfg.Name, "  ", "<color=#109d06>", UIHelper.ReplaceLargeNum(UIHelper.ReplacePercentage(UIHelper.GetPropertyMapPlayerData((AttrEnum)cfg.ID), cfg.ISPercentage)), cfg.ISPercentage == 1 ? "%" : string.Empty, "</color>");
                            text.text = StringUtility.Contact(cfg.Name, "  ", "<color=#109d06>", UIHelper.ReplaceLargeNum(UIHelper.ReplacePercentage(UIHelper.GetPropertyMapPlayerData((PropertyType)cfg.ID), cfg.ISPercentage)), cfg.ISPercentage == 1 ? "%" : string.Empty, "</color>");
                        }
                        break;
                    case ScrollerDataType.Normal:
System/Role/RolePanel.cs
@@ -135,13 +135,13 @@
        private void OnPromoteClick()
        {
            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.AddPoint))
            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.ReikiRoot))
            {
                WindowCenter.Instance.Open<RolePointWin>();
                WindowCenter.Instance.Open<ReikiRootWin>();
            }
            else
            {
                FuncOpen.Instance.ProcessorFuncErrorTip((int)FuncOpenEnum.AddPoint);
                FuncOpen.Instance.ProcessorFuncErrorTip((int)FuncOpenEnum.ReikiRoot);
            }
        }
@@ -237,27 +237,27 @@
        void OnUpdateBasicAttr()
        {
            m_PropertyAtk.text = StringUtility.Contact(ReplaceLargeNum((ulong)PlayerDatas.Instance.extersion.MINATK), "-", ReplaceLargeNum((ulong)PlayerDatas.Instance.extersion.MAXATK));
            m_PropertyHp.text = GetAttrStr(AttrEnum.HP);
            m_PropertyHit.text = GetAttrStr(AttrEnum.HIT);
            m_PropertyDef.text = GetAttrStr(AttrEnum.DEF);
            m_PropertyDodge.text = GetAttrStr(AttrEnum.MISS);
            m_PropertyHp.text = GetAttrStr(PropertyType.HP);
            m_PropertyHit.text = GetAttrStr(PropertyType.HIT);
            m_PropertyDef.text = GetAttrStr(PropertyType.DEF);
            m_PropertyDodge.text = GetAttrStr(PropertyType.MISS);
        }
        void OnUpdateSpecialAttr()
        {
            m_PropertyAtkSpeed.text = GetAttrStr(AttrEnum.ATKSPEED);
            m_PropertyMoveSpeed.text = GetAttrStr(AttrEnum.MoveSpeed);
            m_PropertyRealHurt.text = GetAttrStr(AttrEnum.RealHurt);
            m_PropertyRealDef.text = GetAttrStr(AttrEnum.RealResis);
            m_PropertyExtraHurt.text = GetAttrStr(AttrEnum.AddHurt);
            m_PropertyReduceHurt.text = GetAttrStr(AttrEnum.ReduceHurt);
            m_PropertyCritOdd.text = GetAttrStr(AttrEnum.CritChance);
            m_PropertyCritHurt.text = GetAttrStr(AttrEnum.CritHurt);
            m_PropertyCritHurtOdd.text = GetAttrStr(AttrEnum.HeartHit);
            m_PropertyCritHitHurt.text = GetAttrStr(AttrEnum.HeartHurt);
            m_PropertyAtkSpeed.text = GetAttrStr(PropertyType.ATKSPEED);
            m_PropertyMoveSpeed.text = GetAttrStr(PropertyType.MoveSpeed);
            m_PropertyRealHurt.text = GetAttrStr(PropertyType.RealHurt);
            m_PropertyRealDef.text = GetAttrStr(PropertyType.RealResis);
            m_PropertyExtraHurt.text = GetAttrStr(PropertyType.AddHurt);
            m_PropertyReduceHurt.text = GetAttrStr(PropertyType.ReduceHurt);
            m_PropertyCritOdd.text = GetAttrStr(PropertyType.CritChance);
            m_PropertyCritHurt.text = GetAttrStr(PropertyType.CritHurt);
            m_PropertyCritHurtOdd.text = GetAttrStr(PropertyType.HeartHit);
            m_PropertyCritHitHurt.text = GetAttrStr(PropertyType.HeartHurt);
        }
        private string GetAttrStr(AttrEnum type)
        private string GetAttrStr(PropertyType type)
        {
            PlayerPropertyConfig cfg = PlayerPropertyConfig.Get((int)type);
            float value = UIHelper.GetPropertyMapPlayerData(type);
System/Role/RolePointModel.cs
File was deleted
System/Role/RolePointModel.cs.meta
File was deleted
System/Role/RolePointWin.cs
File was deleted
System/Role/RolePointWin.cs.meta
File was deleted
System/RoleParticulars/RoleParticularModel.cs
@@ -223,7 +223,7 @@
            int[] values = horseUpConfig.AttrValue;
            for (int i = 0; i < propertys.Length; i++)
            {
                if (propertys[i] == (int)AttrEnum.ATK || propertys[i] == (int)AttrEnum.HP)
                if (propertys[i] == (int)PropertyType.ATK || propertys[i] == (int)PropertyType.HP)
                {
                    if (!dict.ContainsKey(propertys[i]))
                    {
@@ -328,7 +328,7 @@
                    }
                    else
                    {
                        if (propertys[k] == (int)AttrEnum.MoveSpeed)
                        if (propertys[k] == (int)PropertyType.MoveSpeed)
                        {
                            if (values[k] > propertyDict[propertys[k]])
                            {
System/RolePromote/RolePromoteModel.cs
@@ -116,7 +116,7 @@
        RoleModel roleModel { get { return ModelCenter.Instance.GetModel<RoleModel>(); } }
        RolePointModel rolePointModel { get { return ModelCenter.Instance.GetModel<RolePointModel>(); } }
        ReikiRootModel reikiRootModel { get { return ModelCenter.Instance.GetModel<ReikiRootModel>(); } }
        #region 配置
        public Dictionary<int, int> wingLv2GenerDict = new Dictionary<int, int>();
@@ -432,7 +432,7 @@
                _id == methodData.fairyHeartRedpoint.id ||
                _id == realmModel.levelUpRedpoint.id ||
                _id == equipGemModel.redpoint.id ||
                _id == rolePointModel.redpoint.id)
                _id == reikiRootModel.redpoint.id)
            {
                CheckPromoteDetailEffect();
            }
@@ -446,7 +446,7 @@
                    var dict = ItemLogicUtility.Instance.CheckBetterEquipByRealm();
                    return dict != null && dict.Count > 0;
                case PromoteDetailType.AddPoint:
                    return rolePointModel.redpoint.state == RedPointState.Simple;
                    return reikiRootModel.redpoint.state == RedPointState.Simple;
                case PromoteDetailType.EquipStrength:
                    return false;
                case PromoteDetailType.Mount:
System/Skill/TalentModel.cs
@@ -307,7 +307,7 @@
                if (requireProperty != 0)
                {
                    var requirePropertyValue = skillConfig.RequirePropertyValue();
                    if (UIHelper.GetPropertyMapPlayerData((AttrEnum)requireProperty) < requirePropertyValue)
                    if (UIHelper.GetPropertyMapPlayerData((PropertyType)requireProperty) < requirePropertyValue)
                    {
                        error = 5;
                        return false;
System/Skill/TalentWin.cs
@@ -258,7 +258,7 @@
                    {
                        m_SelectConditions[index].gameObject.SetActive(true);
                        var requirePropertyValue = skillConfig.RequirePropertyValue();
                        var propertyValue = UIHelper.GetPropertyMapPlayerData((AttrEnum)requireProperty);
                        var propertyValue = UIHelper.GetPropertyMapPlayerData((PropertyType)requireProperty);
                        var requireDisplay = StringUtility.Contact(propertyValue, "/", requirePropertyValue);
                        requireDisplay = UIHelper.AppendColor(propertyValue >= requirePropertyValue ?
                            TextColType.Green : TextColType.Red, requireDisplay);
System/Store/Logic/BuyEquipTip.cs
@@ -139,7 +139,7 @@
        [SerializeField]
        CanvasGroup tipAlpha;
        Dictionary<AttrEnum, int> needPointDict = new Dictionary<AttrEnum, int>();
        Dictionary<PropertyType, int> needPointDict = new Dictionary<PropertyType, int>();
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel
@@ -379,20 +379,20 @@
            needPointDict.Clear();
            if (itemAttrData.itemConfig.LimitSTR > 0)
            {
                needPointDict.Add(AttrEnum.POWER, itemAttrData.itemConfig.LimitSTR);
                needPointDict.Add(PropertyType.POWER, itemAttrData.itemConfig.LimitSTR);
            }
            if (itemAttrData.itemConfig.LimitPHY > 0)
            {
                needPointDict.Add(AttrEnum.AGILITY, itemAttrData.itemConfig.LimitPHY);
                needPointDict.Add(PropertyType.AGILITY, itemAttrData.itemConfig.LimitPHY);
            }
            if (itemAttrData.itemConfig.LimitPNE > 0)
            {
                needPointDict.Add(AttrEnum.MENTALITY, itemAttrData.itemConfig.LimitPNE);
                needPointDict.Add(PropertyType.MENTALITY, itemAttrData.itemConfig.LimitPNE);
            }
            List<AttrEnum> needlist = needPointDict.Keys.ToList();
            List<PropertyType> needlist = needPointDict.Keys.ToList();
            int i = 0;
            float offset = 0;
@@ -405,7 +405,7 @@
                    offset = needPointDict[needlist[i]] - UIHelper.GetPropertyMapPlayerData(needlist[i]);
                    switch (needlist[i])
                    {
                        case AttrEnum.POWER:
                        case PropertyType.POWER:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
@@ -415,7 +415,7 @@
                                SetNeedPointUI(1, 0, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
                            }
                            break;
                        case AttrEnum.AGILITY:
                        case PropertyType.AGILITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS112"));
@@ -426,7 +426,7 @@
                            }
                            break;
                        case AttrEnum.MENTALITY:
                        case PropertyType.MENTALITY:
                            if (itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS111"));
System/Store/Logic/BuyGuardTip.cs
@@ -99,7 +99,7 @@
        [SerializeField]
        CanvasGroup tipAlpha;
        Dictionary<AttrEnum, int> needPointDict = new Dictionary<AttrEnum, int>();
        Dictionary<PropertyType, int> needPointDict = new Dictionary<PropertyType, int>();
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel
@@ -274,20 +274,20 @@
            if (itemAttrData.itemConfig.LimitSTR > 0)
            {
                needPointDict.Add(AttrEnum.POWER, itemAttrData.itemConfig.LimitSTR);
                needPointDict.Add(PropertyType.POWER, itemAttrData.itemConfig.LimitSTR);
            }
            if (itemAttrData.itemConfig.LimitPHY > 0)
            {
                needPointDict.Add(AttrEnum.AGILITY, itemAttrData.itemConfig.LimitPHY);
                needPointDict.Add(PropertyType.AGILITY, itemAttrData.itemConfig.LimitPHY);
            }
            if (itemAttrData.itemConfig.LimitPNE > 0)
            {
                needPointDict.Add(AttrEnum.MENTALITY, itemAttrData.itemConfig.LimitPNE);
                needPointDict.Add(PropertyType.MENTALITY, itemAttrData.itemConfig.LimitPNE);
            }
            List<AttrEnum> needlist = needPointDict.Keys.ToList();
            List<PropertyType> needlist = needPointDict.Keys.ToList();
            int i = 0;
            float offset = 0;
@@ -300,7 +300,7 @@
                    offset = needPointDict[needlist[i]] - UIHelper.GetPropertyMapPlayerData(needlist[i]);
                    switch (needlist[i])
                    {
                        case AttrEnum.POWER:
                        case PropertyType.POWER:
                            if(itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
@@ -310,7 +310,7 @@
                                SetNeedPointUI(1, 0, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS113"));
                            }
                           break;
                        case AttrEnum.AGILITY:
                        case PropertyType.AGILITY:
                            if(itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS112"));
@@ -321,7 +321,7 @@
                            }
                           
                            break;
                        case AttrEnum.MENTALITY:
                        case PropertyType.MENTALITY:
                            if(itemAttrData.isHavePutLimit)
                            {
                                SetNeedPointUI(needPointDict[needlist[i]], offset, needPointTextlist[i], needPointNumlist[i], Language.Get("KnapS111"));
System/Store/Logic/BuyPetMatInfoWin.cs
@@ -191,14 +191,14 @@
                string minAtkValue = "";
                attrNamelist[code].gameObject.SetActive(true);
                attrValuelist[code].gameObject.SetActive(true);
                switch ((AttrEnum)attrIdlist[i])
                switch ((PropertyType)attrIdlist[i])
                {
                    case AttrEnum.MinAtk:
                    case PropertyType.MinAtk:
                        break;
                    case AttrEnum.PetMinAtk:
                    case PropertyType.PetMinAtk:
                        break;
                    case AttrEnum.PetMaxAtk:
                    case AttrEnum.MaxAtk:
                    case PropertyType.PetMaxAtk:
                    case PropertyType.MaxAtk:
                        itemTipsModel.SetPetAttrStr(attrIdlist[i - 1], itemEffectDict[attrIdlist[i - 1]], out minAtkName, out minAtkValue);
                        itemTipsModel.SetPetAttrStr(attrIdlist[i], itemEffectDict[attrIdlist[i]], out attrName, out attrValue, minAtkValue);
                        code += 1;
System/Tip/PromoteDetailsWin.cs
@@ -78,7 +78,7 @@
                    WindowCenter.Instance.Open<KnapSackWin>();
                    break;
                case RolePromoteModel.PromoteDetailType.AddPoint:
                    WindowCenter.Instance.Open<RolePointWin>();
                    WindowCenter.Instance.Open<ReikiRootWin>();
                    break;
                case RolePromoteModel.PromoteDetailType.EquipStrength:
                    //WindowCenter.Instance.Open<EquipReinforceWin>();
System/Treasure/FairyTreasureCollectPanelPattern3.cs
@@ -82,10 +82,10 @@
                        var _property = treasure.treasureStages[0].propertyDict.First();
                        switch (_property.Key)
                        {
                            case (int)AttrEnum.KillMonsExpPrecent:
                            case (int)PropertyType.KillMonsExpPrecent:
                                m_AddedEffect.text = Language.Get("FairyTreasure_2", _property.Value / 100);
                                break;
                            case (int)AttrEnum.AddHurt:
                            case (int)PropertyType.AddHurt:
                                m_AddedEffect.text = Language.Get("FairyTreasure_3", _property.Value / 100);
                                break;
                            case 60:
System/WindowBase/ModelCenter.cs
@@ -194,7 +194,6 @@
            RegisterModel<OpenServerActivityNotifyModel>();
            RegisterModel<FairyFeastModel>();
            RegisterModel<WishingPoolModel>();
            RegisterModel<RolePointModel>();
            RegisterModel<SocialModel>();
            RegisterModel<ChatBubbleModel>();
            RegisterModel<AccumulateRechargeModel>();
System/WindowJump/WindowJumpMgr.cs
@@ -250,7 +250,7 @@
                SetJumpLogic<RealmWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.RolePoint:
                SetJumpLogic<RolePointWin>(_tagWinSearchModel.TABID);
                SetJumpLogic<ReikiRootWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.MainTask:
                TaskModel taskDatas = ModelCenter.Instance.GetModel<TaskModel>();
@@ -417,7 +417,7 @@
                SetJumpLogic<KnapSackWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.RebornOpenAddPoint:
                SetJumpLogic<RolePointWin>(_tagWinSearchModel.TABID);
                SetJumpLogic<ReikiRootWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.RebornOpenHourse:
                SetJumpLogic<PetWin>(_tagWinSearchModel.TABID);
Utility/ConfigInitiator.cs
@@ -287,7 +287,8 @@
        normalTasks.Add(new ConfigInitTask("EquipPlusEvolveConfig", () => { EquipPlusEvolveConfig.Init(); }, () => { return EquipPlusEvolveConfig.inited; }));
        normalTasks.Add(new ConfigInitTask("LegendPropertyValueConfig", () => { LegendPropertyValueConfig.Init(); }, () => { return LegendPropertyValueConfig.inited; }));
        normalTasks.Add(new ConfigInitTask("LegendPropertyConfig", () => { LegendPropertyConfig.Init(); }, () => { return LegendPropertyConfig.inited; }));
        normalTasks.Add(new ConfigInitTask("EquipSuitNameConfig", () => { EquipSuitNameConfig.Init(); }, () => { return EquipSuitNameConfig.inited; }));
        normalTasks.Add(new ConfigInitTask("EquipSuitNameConfig", () => { EquipSuitNameConfig.Init(); }, () => { return EquipSuitNameConfig.inited; }));
        normalTasks.Add(new ConfigInitTask("ReikiRootConfig", () => { ReikiRootConfig.Init(); }, () => { return ReikiRootConfig.inited; }));
    }
    static List<ConfigInitTask> doingTasks = new List<ConfigInitTask>();
Utility/EnumHelper.cs
@@ -688,12 +688,12 @@
    EquipDecompose = 123, //装备分解
    TreasureFindHost = 124, //法宝认主
    Dogz = 138, //神兽
    AddPoint = 145,//加点
    ReikiRoot = 145,//灵根
    CrossServer = 157, //跨服天梯赛
    CrossServerBoss = 162,
}
//属性类型
public enum AttrEnum
public enum PropertyType
{
    LV = 1,//等级
    POWER = 2,  //力量
Utility/UIHelper.cs
@@ -146,103 +146,103 @@
    /// </summary>
    /// <param name="type"></param>
    /// <returns></returns>
    public static int GetPropertyMapPlayerData(AttrEnum type)
    public static int GetPropertyMapPlayerData(PropertyType type)
    {
        switch (type)
        {
            case AttrEnum.LV:
            case PropertyType.LV:
                return PlayerDatas.Instance.baseData.LV;
            case AttrEnum.POWER:
            case PropertyType.POWER:
                return PlayerDatas.Instance.baseData.STR;
            case AttrEnum.AGILITY:
            case PropertyType.AGILITY:
                return PlayerDatas.Instance.baseData.PHY;
            case AttrEnum.PHYSIQUE:
            case PropertyType.PHYSIQUE:
                return PlayerDatas.Instance.baseData.CON;
            case AttrEnum.MENTALITY:
            case PropertyType.MENTALITY:
                return PlayerDatas.Instance.baseData.PNE;
            case AttrEnum.HP:
            case PropertyType.HP:
                return (int)PlayerDatas.Instance.extersion.MaxHP;
            case AttrEnum.ATK:
            case PropertyType.ATK:
                return PlayerDatas.Instance.extersion.MAXATK;
            case AttrEnum.DEF:
            case PropertyType.DEF:
                return PlayerDatas.Instance.extersion.DEF;
            case AttrEnum.HIT:
            case PropertyType.HIT:
                return PlayerDatas.Instance.extersion.HIT;
            case AttrEnum.MISS:
            case PropertyType.MISS:
                return PlayerDatas.Instance.extersion.Miss;
            case AttrEnum.ATKSPEED:
            case PropertyType.ATKSPEED:
                return PlayerDatas.Instance.extersion.battleValEx1;
            case AttrEnum.CritChance:
            case PropertyType.CritChance:
                return PlayerDatas.Instance.extersion.SuperHitRate;
            case AttrEnum.CritHurt:
            case PropertyType.CritHurt:
                return PlayerDatas.Instance.extersion.SuperHit;
            case AttrEnum.CritResis:
            case PropertyType.CritResis:
                return PlayerDatas.Instance.extersion.SuperHitReduce;
            case AttrEnum.HeartHit:
            case PropertyType.HeartHit:
                return PlayerDatas.Instance.extersion.luckHitRate;
            case AttrEnum.HeartHurt:
            case PropertyType.HeartHurt:
                return PlayerDatas.Instance.extersion.luckHitVal;
            case AttrEnum.HeartResis:
            case PropertyType.HeartResis:
                return PlayerDatas.Instance.extersion.LuckyHitRateReduce;
            case AttrEnum.SkillHurt:
            case PropertyType.SkillHurt:
                return PlayerDatas.Instance.extersion.SkillAtkRate;
            case AttrEnum.AddHurt:
            case PropertyType.AddHurt:
                return PlayerDatas.Instance.extersion.DamagePer;
            case AttrEnum.ReduceHurt:
            case PropertyType.ReduceHurt:
                return PlayerDatas.Instance.extersion.damageReduceRate;
            case AttrEnum.LifeReply:
            case PropertyType.LifeReply:
                return PlayerDatas.Instance.extersion.HPRestorePer;
            case AttrEnum.HurtReflect:
            case PropertyType.HurtReflect:
                return PlayerDatas.Instance.extersion.DamageBackRate;
            case AttrEnum.MoveSpeed:
            case PropertyType.MoveSpeed:
                return PlayerDatas.Instance.extersion.SpeedValue;
            case AttrEnum.PetAddHurt:
            case PropertyType.PetAddHurt:
                return PlayerDatas.Instance.extersion.PetDamPer;
            case AttrEnum.RealHurt:
            case PropertyType.RealHurt:
                return PlayerDatas.Instance.extersion.realATK;
            case AttrEnum.RealResis:
            case PropertyType.RealResis:
                return PlayerDatas.Instance.extersion.realDEF;
            case AttrEnum.DefyDef:
            case PropertyType.DefyDef:
                return PlayerDatas.Instance.extersion.IgnoreDefRate;
            case AttrEnum.DefyDefResis:
            case PropertyType.DefyDefResis:
                return PlayerDatas.Instance.extersion.IgnoreDefRateReduce;
            case AttrEnum.DefChance:
            case PropertyType.DefChance:
                return PlayerDatas.Instance.extersion.DamChanceDef;
            case AttrEnum.BloodHurt:
            case PropertyType.BloodHurt:
                return PlayerDatas.Instance.extersion.BleedDamage;
            case AttrEnum.AktReplyBlood:
            case PropertyType.AktReplyBlood:
                return PlayerDatas.Instance.extersion.BattleValEx2;
            case AttrEnum.Stun:
            case PropertyType.Stun:
                return PlayerDatas.Instance.extersion.FaintRate;
            case AttrEnum.CtrlResis:
            case PropertyType.CtrlResis:
                return PlayerDatas.Instance.extersion.FaintDefRate;
            case AttrEnum.OutHurt:
            case PropertyType.OutHurt:
                return PlayerDatas.Instance.extersion.FinalHurt;
            case AttrEnum.ReduceBearHurt:
            case PropertyType.ReduceBearHurt:
                return PlayerDatas.Instance.extersion.FinalHurtReduce;
            case AttrEnum.PVPAddHurt:
            case PropertyType.PVPAddHurt:
                return PlayerDatas.Instance.extersion.DamagePerPVP;
            case AttrEnum.PVPReduceHurt:
            case PropertyType.PVPReduceHurt:
                return PlayerDatas.Instance.extersion.DamagePerPVPReduce;
            case AttrEnum.DleHitChance:
            case PropertyType.DleHitChance:
                return PlayerDatas.Instance.extersion.ComboDamPerRate;
            case AttrEnum.DleHurt:
            case PropertyType.DleHurt:
                return PlayerDatas.Instance.extersion.ComboDamPer;
            case AttrEnum.SkillHurtPrecent:
            case PropertyType.SkillHurtPrecent:
                return PlayerDatas.Instance.extersion.skillAtkRateReduce;
            case AttrEnum.NpcHurtAddPer:
            case PropertyType.NpcHurtAddPer:
                return PlayerDatas.Instance.extersion.NpcHurtAddPer;
            case AttrEnum.Luck:
            case PropertyType.Luck:
                return PlayerDatas.Instance.extersion.luckValue;
            case AttrEnum.Mater:
            case PropertyType.Mater:
                return PlayerDatas.Instance.baseData.mater;
            case AttrEnum.Wood:
            case PropertyType.Wood:
                return PlayerDatas.Instance.baseData.wood;
            case AttrEnum.Water:
            case PropertyType.Water:
                return PlayerDatas.Instance.baseData.water;
            case AttrEnum.Fire:
            case PropertyType.Fire:
                return PlayerDatas.Instance.baseData.fire;
            case AttrEnum.Earth:
            case PropertyType.Earth:
                return PlayerDatas.Instance.baseData.earth;
        }
        return 0;