少年修仙传客户端代码仓库
client_linchunjie
2018-10-10 fe5b1a2c216316911ae92eda2b82ad9b69f9c23d
Merge branch 'master' into 3687天赋功能
3个文件已修改
68 ■■■■ 已修改文件
System/Skill/TalentModel.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentTreeScriptable.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentWin.cs 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentModel.cs
@@ -76,7 +76,6 @@
            {
                talent.level = 0;
            }
            talentPoint = 0;
            serverInited = false;
        }
@@ -289,13 +288,12 @@
        }
        #region 服务端数据
        public int talentPoint { get; private set; }
        public int talentPoint { get { return PlayerDatas.Instance.extersion.talentPoint; } }
        private void PlayerDataRefreshInfoEvent(PlayerDataRefresh refreshType)
        {
            if (refreshType == PlayerDataRefresh.CDBPlayerRefresh_TalentPoint)
            {
                talentPoint = PlayerDatas.Instance.extersion.talentPoint;
                if (talentPointUpdate != null)
                {
                    talentPointUpdate();
System/Skill/TalentTreeScriptable.cs
@@ -19,6 +19,16 @@
            get { return m_ContentSizeDelta; }
        }
        public int arrowCount
        {
            get { return arrowElements == null ? 0 : arrowElements.Count; }
        }
        public int skillCount
        {
            get { return skillElements == null ? 0 : skillElements.Count; }
        }
        public TalentElement GetTalentElement(int index)
        {
            if (skillElements != null && index < skillElements.Count)
@@ -78,7 +88,7 @@
            }
        }
        public void ApplyArrowElement(int index, Vector3 _position, Vector2 _sizeDelta)
        public void ApplyArrowElement(int index, Vector3 _position, Vector2 _sizeDelta, Vector3 _rotation, string _iconKey)
        {
            if (arrowElements == null)
            {
@@ -88,6 +98,8 @@
            {
                position = _position,
                sizeDelta = _sizeDelta,
                rotation = _rotation,
                iconKey = _iconKey,
            };
            if (index >= arrowElements.Count)
            {
@@ -162,7 +174,9 @@
        [Serializable]
        public struct ArrowElement
        {
            public string iconKey;
            public Vector3 position;
            public Vector3 rotation;
            public Vector2 sizeDelta;
        }
    }
System/Skill/TalentWin.cs
@@ -23,8 +23,8 @@
        [SerializeField] float m_AutoSelectOffset = 62f;
        [SerializeField] ScrollRect m_Scroller;
        [SerializeField] TalentSkillBehaviour[] m_TalentSkills;
        [SerializeField] Image[] m_Arrows;
        [SerializeField] List<TalentSkillBehaviour> m_TalentSkills;
        [SerializeField] List<Image> m_Arrows;
        [SerializeField] RectTransform m_ContainerSelectSkill;
        [SerializeField] Image m_SelectSkillIcon;
@@ -49,6 +49,8 @@
#if UNITY_EDITOR
        [SerializeField] TalentTreeScriptable m_EditorScriptable;
        [SerializeField] bool m_EditorMode;
        [SerializeField] string m_StraightArrowName;
        [SerializeField] string m_TurnArrowName;
#endif
        TalentModel model { get { return ModelCenter.Instance.GetModel<TalentModel>(); } }
@@ -92,7 +94,7 @@
            {
                m_TalentSeries[i].Dispose();
            }
            for (int i = 0; i < m_TalentSkills.Length; i++)
            for (int i = 0; i < m_TalentSkills.Count; i++)
            {
                m_TalentSkills[i].Dispose();
            }
@@ -164,7 +166,7 @@
                var skillRect = m_TalentSkills[0].transform as RectTransform;
                m_Scroller.verticalNormalizedPosition = selectScriptable.GetPercentBySkillElement(index, rect.sizeDelta.y, m_AutoSelectOffset);
            }
            for (int i = 0; i < m_TalentSkills.Length; i++)
            for (int i = 0; i < m_TalentSkills.Count; i++)
            {
                if (talents != null && i < talents.Count)
                {
@@ -413,19 +415,32 @@
        void DisplayTalentLayout(TalentTreeScriptable config)
        {
            m_Scroller.content.sizeDelta = config.contentSizeDelta;
            for (int i = 0; i < m_TalentSkills.Length; i++)
            for (int i = 0; i < config.skillCount; i++)
            {
                var element = config.GetTalentElement(i);
                m_TalentSkills[i].transform.localPosition = element.position;
            }
            if (m_Arrows != null)
            {
                for (int i = 0; i < m_Arrows.Length; i++)
                if (i < m_TalentSkills.Count)
                {
                    var element = config.GetArrowElement(i);
                    m_Arrows[i].transform.localPosition = element.position;
                    m_Arrows[i].rectTransform.sizeDelta = element.sizeDelta;
                    m_TalentSkills[i].transform.localPosition = element.position;
                }
            }
            var index = 0;
            for (int i = 0; i < config.arrowCount; i++)
            {
                var element = config.GetArrowElement(i);
                if (i < m_Arrows.Count)
                {
                    var arrow = m_Arrows[i];
                    arrow.gameObject.SetActive(true);
                    arrow.transform.localPosition = element.position;
                    arrow.transform.localEulerAngles = element.rotation;
                    arrow.rectTransform.sizeDelta = element.sizeDelta;
                    arrow.SetSprite(element.iconKey);
                    index++;
                }
            }
            for (int i = index; i < m_Arrows.Count; i++)
            {
                m_Arrows[i].gameObject.SetActive(false);
            }
        }
@@ -438,7 +453,7 @@
                return;
            }
            var count = 0;
            for (int i = 0; i < m_TalentSkills.Length; i++)
            for (int i = 0; i < m_TalentSkills.Count; i++)
            {
                if (m_TalentSkills[i].gameObject.activeSelf)
                {
@@ -450,12 +465,13 @@
            count = 0;
            if (m_Arrows != null)
            {
                for (int i = 0; i < m_Arrows.Length; i++)
                for (int i = 0; i < m_Arrows.Count; i++)
                {
                    if (m_Arrows[i].gameObject.activeSelf)
                    {
                        m_EditorScriptable.ApplyArrowElement(count, m_Arrows[i].transform.localPosition,
                            m_Arrows[i].rectTransform.sizeDelta);
                            m_Arrows[i].rectTransform.sizeDelta, m_Arrows[i].transform.localEulerAngles,
                            m_Arrows[i].sprite.name.Equals(m_StraightArrowName) ? "Talent_StraightArrow" : "Talent_TurnArrow");
                        count++;
                    }
                }