少年修仙传客户端代码仓库
client_Wu Xijin
2018-10-26 82931aabaaa3e479bc04e11630a77cd9c9dd5fe3
System/Skill/TalentWin.cs
@@ -77,6 +77,7 @@
            model.selectSkillEvent += OnSelectSkillEvent;
            model.talentSkillUpdate += TalentSkillUpdate;
            model.talentPointUpdate += TalentPointUpdate;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += PlayerDataRefreshInfoEvent;
        }
        protected override void OnAfterOpen()
@@ -90,6 +91,7 @@
            model.selectSkillEvent -= OnSelectSkillEvent;
            model.talentSkillUpdate -= TalentSkillUpdate;
            model.talentPointUpdate -= TalentPointUpdate;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= PlayerDataRefreshInfoEvent;
            for (int i = 0; i < m_TalentSeries.Length; i++)
            {
                m_TalentSeries[i].Dispose();
@@ -208,6 +210,19 @@
            DisplaySkillEffect();
        }
        private void PlayerDataRefreshInfoEvent(PlayerDataRefresh refreshType)
        {
            switch (refreshType)
            {
                case PlayerDataRefresh.STR:
                case PlayerDataRefresh.PNE:
                case PlayerDataRefresh.PHY:
                case PlayerDataRefresh.CON:
                    DisplayConditions();
                    break;
            }
        }
        void DisplayConditions()
        {
            TalentSkill talent;
@@ -231,6 +246,20 @@
                        m_SelectConditions[index].text = StringUtility.Contact(seriesDisplay, requireDisplay);
                        index++;
                    }
                    var requireProperty = skillConfig.RequireProperty();
                    if (requireProperty != 0 && index < m_SelectConditions.Length)
                    {
                        m_SelectConditions[index].gameObject.SetActive(true);
                        var requirePropertyValue = skillConfig.RequirePropertyValue();
                        var propertyValue = UIHelper.GetPropertyMapPlayerData((AttrEnum)requireProperty);
                        var requireDisplay = StringUtility.Contact(propertyValue, "/", requirePropertyValue);
                        requireDisplay = UIHelper.GetTextColorByItemColor(propertyValue >= requirePropertyValue ?
                            TextColType.Green : TextColType.Red, requireDisplay);
                        var propertyConfig = Config.Instance.Get<PlayerPropertyConfig>(requireProperty);
                        var propertyDisplay = Language.Get("TalentPropertyCondition", propertyConfig.Name);
                        m_SelectConditions[index].text = StringUtility.Contact(propertyDisplay, requireDisplay);
                        index++;
                    }
                }
                if (skillConfig != null && index < m_SelectConditions.Length)
                {