少年修仙传客户端代码仓库
client_linchunjie
2018-11-19 d20ac53c32bb5947c6e6376e4115f56db23dc95b
4842 【前端】【1.3】法宝潜力升级优化
3个文件已修改
99 ■■■■ 已修改文件
System/Role/PropertyBehaviour.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureModel.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasurePotentialPanel.cs 65 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/PropertyBehaviour.cs
@@ -64,6 +64,19 @@
                }
            }
        }
        public void DisplayCompare(int _property, int _value, int _add)
        {
            var config = Config.Instance.Get<PlayerPropertyConfig>(_property);
            if (config != null)
            {
                m_PropertyName.text = config.Name;
                m_PropertyValue.text = StringUtility.Contact(UIHelper.ReplaceLargeNum(UIHelper.ReplacePercentage(_value, config.ISPercentage)),
                    config.ISPercentage == 1 ? "%" : string.Empty);
                m_PropertyAdd.text = StringUtility.Contact(UIHelper.ReplaceLargeNum(UIHelper.ReplacePercentage(_add, config.ISPercentage)),
                   config.ISPercentage == 1 ? "%" : string.Empty);
            }
        }
    }
}
System/Treasure/TreasureModel.cs
@@ -144,6 +144,7 @@
        List<int> treasureUnOpens = new List<int>();//版本未开放法宝
        Dictionary<int, int[]> potentialInitialPowers = new Dictionary<int, int[]>();
        Dictionary<int, TreasureDungeon> treasureDungeons = new Dictionary<int, TreasureDungeon>();
        List<int> potentialNextTargetLevels = new List<int>();
        public Dictionary<int, int> fairyTreasureGetDict { get; private set; }
@@ -1557,6 +1558,9 @@
                }
                treasureDungeon.ParseDungeonInfo(config);
            }
            funcConfig = Config.Instance.Get<FuncConfigConfig>("TreasureSpTarget");
            potentialNextTargetLevels.AddRange(ConfigParse.GetMultipleStr<int>(funcConfig.Numerical1));
        }
        const string pattern = "\\\"[0-9]+\\\":\\[[0-9|,]*\\]";
@@ -1724,6 +1728,23 @@
                SysNotifyMgr.Instance.ShowTip("OpenFabaoHint", taskConfig.lv);
            }
        }
        public int GetPotentialNextTargetLevel(int level)
        {
            var list = potentialNextTargetLevels;
            for (int i = 0; i < list.Count; i++)
            {
                if (level < list[i])
                {
                    if (level < list[i] - 1)
                    {
                        return list[i];
                    }
                    break;
                }
            }
            return 0;
        }
    }
}
System/Treasure/TreasurePotentialPanel.cs
@@ -15,10 +15,24 @@
    {
        [SerializeField] TreasureAnimation m_TreasureAnimation;
        [SerializeField] TreasurePotentialBriefInfo[] potentialBriefInfos = null;
        [SerializeField] RectTransform m_ContainerPotentialEffect;
        [SerializeField] ScrollRect m_PotentialEffectScroll;
        [SerializeField] RectTransform m_ContainerPotential;
        [SerializeField] RectTransform m_ContainerCurrentProperty;
        [SerializeField] PropertyBehaviour m_CurrentProperty;
        [SerializeField] Text m_CurrentPotential;
        [SerializeField] RectTransform m_ContainerNextProperty;
        [SerializeField] PropertyBehaviour m_NextProperty;
        [SerializeField] RectTransform m_ContainerNextPotential;
        [SerializeField] Text m_NextPotential;
        [SerializeField] Transform m_PotentialMaxLevelTip;
        [SerializeField] Transform m_ContainerPotentialMaxLevel;
        [SerializeField] RectTransform m_ContainerTargetPotential;
        [SerializeField] Text m_TargetPotentialTitle;
        [SerializeField] PropertyBehaviour m_TargetProperty;
        [SerializeField] Text m_TargetPotential;
        [SerializeField] Transform m_ContainerRequirement;
        [SerializeField] Text m_SPOwn;
        [SerializeField] Text m_SPNeed;
@@ -40,7 +54,6 @@
        [SerializeField] Text m_SkillTitle;
        [SerializeField] RectTransform m_ContainerPotential;
        [SerializeField] RectTransform m_ContainerGetSkill;
        [SerializeField] Text m_GetSkillCondition;
        [SerializeField] Image m_GetSkillIcon;
@@ -84,7 +97,7 @@
                    var level = potential.level;
                    var isMax = level >= config.SkillMaxLV;
                    m_PotentialMaxLevelTip.gameObject.SetActive(isMax);
                    m_ContainerPotentialMaxLevel.gameObject.SetActive(isMax);
                    m_ContainerUpgrade.gameObject.SetActive(!isMax &&
                        FuncOpen.Instance.IsFuncOpen(82) && model.IsPotentialUnlock(m_Treasure.id, selectedPotential));
                    m_ContainerRequirement.gameObject.SetActive(!isMax);
@@ -217,6 +230,8 @@
            var funcOpenConfig = Config.Instance.Get<FuncOpenLVConfig>(82);
            m_PotentialLimit.text = Language.Get("TreasureSkillLimit", funcOpenConfig.LimitLV);
            m_PotentialEffectScroll.verticalNormalizedPosition = 1f;
            if (!model.IsPotentialUnlock(model.selectedTreasure, selectedPotential)
                || model.GetPotentialUnlockShow(model.selectedTreasure) || _state == 2)
            {
@@ -244,8 +259,8 @@
            m_TreasureAnimation.OnPotentialLineAnimComplete -= OnPotentialLineAnimComplete;
            m_TreasureAnimation.OnPotentialLineAnimComplete += OnPotentialLineAnimComplete;
            model.potentialBookSelectEvent -= DisplayPotentialBook;
            model.potentialBookSelectEvent += DisplayPotentialBook;
            model.potentialBookSelectEvent -= PotentialBookSelectEvent;
            model.potentialBookSelectEvent += PotentialBookSelectEvent;
            RedpointCenter.Instance.redpointValueChangeEvent -= RedpointValueChangeEvent;
            RedpointCenter.Instance.redpointValueChangeEvent += RedpointValueChangeEvent;
@@ -266,7 +281,7 @@
            m_PotentialLine.Dispose();
            model.potentialBookSelectEvent -= DisplayPotentialBook;
            model.potentialBookSelectEvent -= PotentialBookSelectEvent;
            model.onPotentialLevelUpResultEvent -= OnPotentialLevelUp;
            model.potentialLevelUpdate -= PotentialLevelUpdate;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= OnTreasurePotentialSPChange;
@@ -281,6 +296,12 @@
            m_SelectedPotential = 0;
            model.inPotentialModifyPower = false;
        }
        private void PotentialBookSelectEvent(int _id)
        {
            m_PotentialEffectScroll.verticalNormalizedPosition = 1f;
            DisplayPotentialBook(_id);
        }
        private void RedpointValueChangeEvent(int _id)
@@ -468,22 +489,40 @@
            if (level <= 0)
            {
                m_CurrentPotential.text = Language.Get("Hallows_NotLearn");
                m_CurrentProperty.gameObject.SetActive(false);
            }
            else
            {
                var currentConfig = Config.Instance.Get<SkillConfig>(potential.id + level - 1);
                m_CurrentPotential.text = currentConfig.Description;
                m_CurrentProperty.gameObject.SetActive(true);
                m_CurrentProperty.DisplayUpper(6, currentConfig.MP);
            }
            var isMax = level >= config.SkillMaxLV;
            if (isMax)
            {
                m_NextPotential.text = "";
            }
            else
            m_ContainerNextPotential.gameObject.SetActive(!isMax);
            m_ContainerNextProperty.gameObject.SetActive(!isMax);
            if (!isMax)
            {
                var nextConfig = Config.Instance.Get<SkillConfig>(potential.id + level);
                m_NextPotential.text = nextConfig.Description;
                var currentConfig = Config.Instance.Get<SkillConfig>(potential.id + level - 1);
                var currentPropertyValue = 0;
                if (currentConfig != null)
                {
                    currentPropertyValue = currentConfig.MP;
                }
                m_NextProperty.DisplayCompare(6, currentPropertyValue, nextConfig.MP);
            }
            var targetLevel = model.GetPotentialNextTargetLevel(potential.level);
            m_ContainerTargetPotential.gameObject.SetActive(targetLevel != 0);
            if (targetLevel != 0)
            {
                m_TargetPotentialTitle.text = Language.Get("TargetPotentialLevelEffect", targetLevel);
                var targetConfig = Config.Instance.Get<SkillConfig>(potential.id + targetLevel - 1);
                m_TargetPotential.text = targetConfig.Description;
                m_TargetProperty.Display(6, targetConfig.MP);
            }
            DisplayAddBookRedpoint();
@@ -935,7 +974,7 @@
                var level = potential.level;
                var isMax = level >= config.SkillMaxLV;
                m_PotentialMaxLevelTip.gameObject.SetActive(isMax);
                m_ContainerPotentialMaxLevel.gameObject.SetActive(isMax);
                m_ContainerUpgrade.gameObject.SetActive(!isMax && FuncOpen.Instance.IsFuncOpen(82));
                m_ContainerRequirement.gameObject.SetActive(!isMax);