少年修仙传客户端代码仓库
client_linchunjie
2018-09-26 4c33e9382b5ffa2611a8598bb5836db8eaf93538
3687 天赋功能
6个文件已修改
524 ■■■■ 已修改文件
Core/GameEngine/Model/Config/SkillConfig.cs 433 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/SkillConfig.cs.meta 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentModel.cs 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentSeriesBehaviour.cs 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentSkillBehaviour.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentWin.cs 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/SkillConfig.cs
@@ -1,6 +1,6 @@
//--------------------------------------------------------
//    [Author]:            第二世界
//    [  Date ]:           Thursday, May 03, 2018
//    [  Date ]:           Wednesday, September 26, 2018
//--------------------------------------------------------
using UnityEngine;
@@ -11,77 +11,78 @@
    
    public partial class SkillConfig : ConfigBase {
        public int SkillID { get ; private set ; }
        public string SkillName { get ; private set; }
        public int SkillTypeID { get ; private set ; }
        public int SkillLV { get ; private set ; }
        public int SkillMaxLV { get ; private set ; }
        public int UseType { get ; private set ; }
        public int FuncType { get ; private set ; }
        public int CastTime { get ; private set ; }
        public int SkillType { get ; private set ; }
        public int HurtType { get ; private set ; }
        public int ContinueUse { get ; private set ; }
        public int AtkType { get ; private set ; }
        public int AtkRadius { get ; private set ; }
        public int Tag { get ; private set ; }
        public int AtkDist { get ; private set ; }
        public int StiffTime { get ; private set ; }
        public int CoolDownTime { get ; private set ; }
        public int MP { get ; private set ; }
        public int HP { get ; private set ; }
        public int XP { get ; private set ; }
        public int UseItemID { get ; private set ; }
        public int UseItemCount { get ; private set ; }
        public int Effect1 { get ; private set ; }
        public int EffectValue11 { get ; private set ; }
        public int EffectValue12 { get ; private set ; }
        public int EffectValue13 { get ; private set ; }
        public int Effect2 { get ; private set ; }
        public int EffectValue21 { get ; private set ; }
        public int EffectValue22 { get ; private set ; }
        public int EffectValue23 { get ; private set ; }
        public int Effect3 { get ; private set ; }
        public int EffectValue31 { get ; private set ; }
        public int EffectValue32 { get ; private set ; }
        public int EffectValue33 { get ; private set ; }
        public int Effect4 { get ; private set ; }
        public int EffectValue41 { get ; private set ; }
        public int EffectValue42 { get ; private set ; }
        public int EffectValue43 { get ; private set ; }
        public int Effect5 { get ; private set ; }
        public int EffectValue51 { get ; private set ; }
        public int EffectValue52 { get ; private set ; }
        public int EffectValue53 { get ; private set ; }
        public int Effect6 { get ; private set ; }
        public int EffectValue61 { get ; private set ; }
        public int EffectValue62 { get ; private set ; }
        public int EffectValue63 { get ; private set ; }
        public int LearnSkillReq { get ; private set ; }
        public int LearnSkillLV { get ; private set ; }
        public int LearnLVReq { get ; private set ; }
        public int FightPower { get ; private set ; }
        public int LVUpCostMoneyType { get ; private set ; }
        public int LVUpCostMoney { get ; private set ; }
        public int LVUpCostExp { get ; private set ; }
        public int ClientActionLimit { get ; private set ; }
        public int ClientSkillSeriesLimit { get ; private set ; }
        public int SkillOfSeries { get ; private set ; }
        public int ExpendMPRate { get ; private set ; }
        public int ExAttr1 { get ; private set ; }
        public int ExAttr3 { get ; private set ; }
        public int ExAttr4 { get ; private set ; }
        public int ExAttr5 { get ; private set ; }
        public int WarnInfo { get ; private set ; }
        public int CtrlActionID { get ; private set ; }
        public int BuffEffectID { get ; private set ; }
        public int EffectName { get ; private set ; }
        public string IconName { get ; private set; }
        public string SkillNameIcon { get ; private set; }
        public string Description { get ; private set; }
        public string BuffDescription { get ; private set; }
        public string Skillsource { get ; private set; }
        public int Skillactmark { get ; private set ; }
        public int SkillID { get ; private set ; }
        public string SkillName { get ; private set; }
        public int SkillTypeID { get ; private set ; }
        public int SkillLV { get ; private set ; }
        public int SkillMaxLV { get ; private set ; }
        public int UseType { get ; private set ; }
        public int FuncType { get ; private set ; }
        public int CastTime { get ; private set ; }
        public int SkillType { get ; private set ; }
        public int HurtType { get ; private set ; }
        public int ContinueUse { get ; private set ; }
        public int AtkType { get ; private set ; }
        public int AtkRadius { get ; private set ; }
        public int Tag { get ; private set ; }
        public int AtkDist { get ; private set ; }
        public int StiffTime { get ; private set ; }
        public int CoolDownTime { get ; private set ; }
        public int MP { get ; private set ; }
        public int HP { get ; private set ; }
        public int XP { get ; private set ; }
        public int UseItemID { get ; private set ; }
        public int UseItemCount { get ; private set ; }
        public int Effect1 { get ; private set ; }
        public int EffectValue11 { get ; private set ; }
        public int EffectValue12 { get ; private set ; }
        public int EffectValue13 { get ; private set ; }
        public int Effect2 { get ; private set ; }
        public int EffectValue21 { get ; private set ; }
        public int EffectValue22 { get ; private set ; }
        public int EffectValue23 { get ; private set ; }
        public int Effect3 { get ; private set ; }
        public int EffectValue31 { get ; private set ; }
        public int EffectValue32 { get ; private set ; }
        public int EffectValue33 { get ; private set ; }
        public int Effect4 { get ; private set ; }
        public int EffectValue41 { get ; private set ; }
        public int EffectValue42 { get ; private set ; }
        public int EffectValue43 { get ; private set ; }
        public int Effect5 { get ; private set ; }
        public int EffectValue51 { get ; private set ; }
        public int EffectValue52 { get ; private set ; }
        public int EffectValue53 { get ; private set ; }
        public int Effect6 { get ; private set ; }
        public int EffectValue61 { get ; private set ; }
        public int EffectValue62 { get ; private set ; }
        public int EffectValue63 { get ; private set ; }
        public int LearnSkillReq { get ; private set ; }
        public int LearnSkillLV { get ; private set ; }
        public int LearnLVReq { get ; private set ; }
        public int LearnSkillPointReq { get ; private set ; }
        public int FightPower { get ; private set ; }
        public int LVUpCostMoneyType { get ; private set ; }
        public int LVUpCostMoney { get ; private set ; }
        public int LVUpCostExp { get ; private set ; }
        public int ClientActionLimit { get ; private set ; }
        public int ClientSkillSeriesLimit { get ; private set ; }
        public int SkillOfSeries { get ; private set ; }
        public int ExpendMPRate { get ; private set ; }
        public int ExAttr1 { get ; private set ; }
        public int ExAttr3 { get ; private set ; }
        public int ExAttr4 { get ; private set ; }
        public int ExAttr5 { get ; private set ; }
        public int WarnInfo { get ; private set ; }
        public int CtrlActionID { get ; private set ; }
        public int BuffEffectID { get ; private set ; }
        public int EffectName { get ; private set ; }
        public string IconName { get ; private set; }
        public string SkillNameIcon { get ; private set; }
        public string Description { get ; private set; }
        public string BuffDescription { get ; private set; }
        public string Skillsource { get ; private set; }
        public int Skillactmark { get ; private set ; }
        public int BuffDisplay { get ; private set ; }
        public override string getKey()
@@ -92,149 +93,151 @@
        public override void Parse() {
            try
            {
                SkillID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0;
                SkillName = rawContents[1].Trim();
                SkillTypeID=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0;
                SkillLV=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0;
                SkillMaxLV=IsNumeric(rawContents[4]) ? int.Parse(rawContents[4]):0;
                UseType=IsNumeric(rawContents[5]) ? int.Parse(rawContents[5]):0;
                FuncType=IsNumeric(rawContents[6]) ? int.Parse(rawContents[6]):0;
                CastTime=IsNumeric(rawContents[7]) ? int.Parse(rawContents[7]):0;
                SkillType=IsNumeric(rawContents[8]) ? int.Parse(rawContents[8]):0;
                HurtType=IsNumeric(rawContents[9]) ? int.Parse(rawContents[9]):0;
                ContinueUse=IsNumeric(rawContents[10]) ? int.Parse(rawContents[10]):0;
                AtkType=IsNumeric(rawContents[11]) ? int.Parse(rawContents[11]):0;
                AtkRadius=IsNumeric(rawContents[12]) ? int.Parse(rawContents[12]):0;
                Tag=IsNumeric(rawContents[13]) ? int.Parse(rawContents[13]):0;
                AtkDist=IsNumeric(rawContents[14]) ? int.Parse(rawContents[14]):0;
                StiffTime=IsNumeric(rawContents[15]) ? int.Parse(rawContents[15]):0;
                CoolDownTime=IsNumeric(rawContents[16]) ? int.Parse(rawContents[16]):0;
                MP=IsNumeric(rawContents[17]) ? int.Parse(rawContents[17]):0;
                HP=IsNumeric(rawContents[18]) ? int.Parse(rawContents[18]):0;
                XP=IsNumeric(rawContents[19]) ? int.Parse(rawContents[19]):0;
                UseItemID=IsNumeric(rawContents[20]) ? int.Parse(rawContents[20]):0;
                UseItemCount=IsNumeric(rawContents[21]) ? int.Parse(rawContents[21]):0;
                Effect1=IsNumeric(rawContents[22]) ? int.Parse(rawContents[22]):0;
                EffectValue11=IsNumeric(rawContents[23]) ? int.Parse(rawContents[23]):0;
                EffectValue12=IsNumeric(rawContents[24]) ? int.Parse(rawContents[24]):0;
                EffectValue13=IsNumeric(rawContents[25]) ? int.Parse(rawContents[25]):0;
                Effect2=IsNumeric(rawContents[26]) ? int.Parse(rawContents[26]):0;
                EffectValue21=IsNumeric(rawContents[27]) ? int.Parse(rawContents[27]):0;
                EffectValue22=IsNumeric(rawContents[28]) ? int.Parse(rawContents[28]):0;
                EffectValue23=IsNumeric(rawContents[29]) ? int.Parse(rawContents[29]):0;
                Effect3=IsNumeric(rawContents[30]) ? int.Parse(rawContents[30]):0;
                EffectValue31=IsNumeric(rawContents[31]) ? int.Parse(rawContents[31]):0;
                EffectValue32=IsNumeric(rawContents[32]) ? int.Parse(rawContents[32]):0;
                EffectValue33=IsNumeric(rawContents[33]) ? int.Parse(rawContents[33]):0;
                Effect4=IsNumeric(rawContents[34]) ? int.Parse(rawContents[34]):0;
                EffectValue41=IsNumeric(rawContents[35]) ? int.Parse(rawContents[35]):0;
                EffectValue42=IsNumeric(rawContents[36]) ? int.Parse(rawContents[36]):0;
                EffectValue43=IsNumeric(rawContents[37]) ? int.Parse(rawContents[37]):0;
                Effect5=IsNumeric(rawContents[38]) ? int.Parse(rawContents[38]):0;
                EffectValue51=IsNumeric(rawContents[39]) ? int.Parse(rawContents[39]):0;
                EffectValue52=IsNumeric(rawContents[40]) ? int.Parse(rawContents[40]):0;
                EffectValue53=IsNumeric(rawContents[41]) ? int.Parse(rawContents[41]):0;
                Effect6=IsNumeric(rawContents[42]) ? int.Parse(rawContents[42]):0;
                EffectValue61=IsNumeric(rawContents[43]) ? int.Parse(rawContents[43]):0;
                EffectValue62=IsNumeric(rawContents[44]) ? int.Parse(rawContents[44]):0;
                EffectValue63=IsNumeric(rawContents[45]) ? int.Parse(rawContents[45]):0;
                LearnSkillReq=IsNumeric(rawContents[46]) ? int.Parse(rawContents[46]):0;
                LearnSkillLV=IsNumeric(rawContents[47]) ? int.Parse(rawContents[47]):0;
                LearnLVReq=IsNumeric(rawContents[48]) ? int.Parse(rawContents[48]):0;
                FightPower=IsNumeric(rawContents[49]) ? int.Parse(rawContents[49]):0;
                LVUpCostMoneyType=IsNumeric(rawContents[50]) ? int.Parse(rawContents[50]):0;
                LVUpCostMoney=IsNumeric(rawContents[51]) ? int.Parse(rawContents[51]):0;
                LVUpCostExp=IsNumeric(rawContents[52]) ? int.Parse(rawContents[52]):0;
                ClientActionLimit=IsNumeric(rawContents[53]) ? int.Parse(rawContents[53]):0;
                ClientSkillSeriesLimit=IsNumeric(rawContents[54]) ? int.Parse(rawContents[54]):0;
                SkillOfSeries=IsNumeric(rawContents[55]) ? int.Parse(rawContents[55]):0;
                ExpendMPRate=IsNumeric(rawContents[56]) ? int.Parse(rawContents[56]):0;
                ExAttr1=IsNumeric(rawContents[57]) ? int.Parse(rawContents[57]):0;
                ExAttr3=IsNumeric(rawContents[58]) ? int.Parse(rawContents[58]):0;
                ExAttr4=IsNumeric(rawContents[59]) ? int.Parse(rawContents[59]):0;
                ExAttr5=IsNumeric(rawContents[60]) ? int.Parse(rawContents[60]):0;
                WarnInfo=IsNumeric(rawContents[61]) ? int.Parse(rawContents[61]):0;
                CtrlActionID=IsNumeric(rawContents[62]) ? int.Parse(rawContents[62]):0;
                BuffEffectID=IsNumeric(rawContents[63]) ? int.Parse(rawContents[63]):0;
                EffectName=IsNumeric(rawContents[64]) ? int.Parse(rawContents[64]):0;
                IconName = rawContents[65].Trim();
                SkillNameIcon = rawContents[66].Trim();
                Description = rawContents[67].Trim();
                BuffDescription = rawContents[68].Trim();
                Skillsource = rawContents[69].Trim();
                Skillactmark=IsNumeric(rawContents[70]) ? int.Parse(rawContents[70]):0;
                BuffDisplay=IsNumeric(rawContents[71]) ? int.Parse(rawContents[71]):0;
                SkillID=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0;
                SkillName = rawContents[1].Trim();
                SkillTypeID=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0;
                SkillLV=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0;
                SkillMaxLV=IsNumeric(rawContents[4]) ? int.Parse(rawContents[4]):0;
                UseType=IsNumeric(rawContents[5]) ? int.Parse(rawContents[5]):0;
                FuncType=IsNumeric(rawContents[6]) ? int.Parse(rawContents[6]):0;
                CastTime=IsNumeric(rawContents[7]) ? int.Parse(rawContents[7]):0;
                SkillType=IsNumeric(rawContents[8]) ? int.Parse(rawContents[8]):0;
                HurtType=IsNumeric(rawContents[9]) ? int.Parse(rawContents[9]):0;
                ContinueUse=IsNumeric(rawContents[10]) ? int.Parse(rawContents[10]):0;
                AtkType=IsNumeric(rawContents[11]) ? int.Parse(rawContents[11]):0;
                AtkRadius=IsNumeric(rawContents[12]) ? int.Parse(rawContents[12]):0;
                Tag=IsNumeric(rawContents[13]) ? int.Parse(rawContents[13]):0;
                AtkDist=IsNumeric(rawContents[14]) ? int.Parse(rawContents[14]):0;
                StiffTime=IsNumeric(rawContents[15]) ? int.Parse(rawContents[15]):0;
                CoolDownTime=IsNumeric(rawContents[16]) ? int.Parse(rawContents[16]):0;
                MP=IsNumeric(rawContents[17]) ? int.Parse(rawContents[17]):0;
                HP=IsNumeric(rawContents[18]) ? int.Parse(rawContents[18]):0;
                XP=IsNumeric(rawContents[19]) ? int.Parse(rawContents[19]):0;
                UseItemID=IsNumeric(rawContents[20]) ? int.Parse(rawContents[20]):0;
                UseItemCount=IsNumeric(rawContents[21]) ? int.Parse(rawContents[21]):0;
                Effect1=IsNumeric(rawContents[22]) ? int.Parse(rawContents[22]):0;
                EffectValue11=IsNumeric(rawContents[23]) ? int.Parse(rawContents[23]):0;
                EffectValue12=IsNumeric(rawContents[24]) ? int.Parse(rawContents[24]):0;
                EffectValue13=IsNumeric(rawContents[25]) ? int.Parse(rawContents[25]):0;
                Effect2=IsNumeric(rawContents[26]) ? int.Parse(rawContents[26]):0;
                EffectValue21=IsNumeric(rawContents[27]) ? int.Parse(rawContents[27]):0;
                EffectValue22=IsNumeric(rawContents[28]) ? int.Parse(rawContents[28]):0;
                EffectValue23=IsNumeric(rawContents[29]) ? int.Parse(rawContents[29]):0;
                Effect3=IsNumeric(rawContents[30]) ? int.Parse(rawContents[30]):0;
                EffectValue31=IsNumeric(rawContents[31]) ? int.Parse(rawContents[31]):0;
                EffectValue32=IsNumeric(rawContents[32]) ? int.Parse(rawContents[32]):0;
                EffectValue33=IsNumeric(rawContents[33]) ? int.Parse(rawContents[33]):0;
                Effect4=IsNumeric(rawContents[34]) ? int.Parse(rawContents[34]):0;
                EffectValue41=IsNumeric(rawContents[35]) ? int.Parse(rawContents[35]):0;
                EffectValue42=IsNumeric(rawContents[36]) ? int.Parse(rawContents[36]):0;
                EffectValue43=IsNumeric(rawContents[37]) ? int.Parse(rawContents[37]):0;
                Effect5=IsNumeric(rawContents[38]) ? int.Parse(rawContents[38]):0;
                EffectValue51=IsNumeric(rawContents[39]) ? int.Parse(rawContents[39]):0;
                EffectValue52=IsNumeric(rawContents[40]) ? int.Parse(rawContents[40]):0;
                EffectValue53=IsNumeric(rawContents[41]) ? int.Parse(rawContents[41]):0;
                Effect6=IsNumeric(rawContents[42]) ? int.Parse(rawContents[42]):0;
                EffectValue61=IsNumeric(rawContents[43]) ? int.Parse(rawContents[43]):0;
                EffectValue62=IsNumeric(rawContents[44]) ? int.Parse(rawContents[44]):0;
                EffectValue63=IsNumeric(rawContents[45]) ? int.Parse(rawContents[45]):0;
                LearnSkillReq=IsNumeric(rawContents[46]) ? int.Parse(rawContents[46]):0;
                LearnSkillLV=IsNumeric(rawContents[47]) ? int.Parse(rawContents[47]):0;
                LearnLVReq=IsNumeric(rawContents[48]) ? int.Parse(rawContents[48]):0;
                LearnSkillPointReq=IsNumeric(rawContents[49]) ? int.Parse(rawContents[49]):0;
                FightPower=IsNumeric(rawContents[50]) ? int.Parse(rawContents[50]):0;
                LVUpCostMoneyType=IsNumeric(rawContents[51]) ? int.Parse(rawContents[51]):0;
                LVUpCostMoney=IsNumeric(rawContents[52]) ? int.Parse(rawContents[52]):0;
                LVUpCostExp=IsNumeric(rawContents[53]) ? int.Parse(rawContents[53]):0;
                ClientActionLimit=IsNumeric(rawContents[54]) ? int.Parse(rawContents[54]):0;
                ClientSkillSeriesLimit=IsNumeric(rawContents[55]) ? int.Parse(rawContents[55]):0;
                SkillOfSeries=IsNumeric(rawContents[56]) ? int.Parse(rawContents[56]):0;
                ExpendMPRate=IsNumeric(rawContents[57]) ? int.Parse(rawContents[57]):0;
                ExAttr1=IsNumeric(rawContents[58]) ? int.Parse(rawContents[58]):0;
                ExAttr3=IsNumeric(rawContents[59]) ? int.Parse(rawContents[59]):0;
                ExAttr4=IsNumeric(rawContents[60]) ? int.Parse(rawContents[60]):0;
                ExAttr5=IsNumeric(rawContents[61]) ? int.Parse(rawContents[61]):0;
                WarnInfo=IsNumeric(rawContents[62]) ? int.Parse(rawContents[62]):0;
                CtrlActionID=IsNumeric(rawContents[63]) ? int.Parse(rawContents[63]):0;
                BuffEffectID=IsNumeric(rawContents[64]) ? int.Parse(rawContents[64]):0;
                EffectName=IsNumeric(rawContents[65]) ? int.Parse(rawContents[65]):0;
                IconName = rawContents[66].Trim();
                SkillNameIcon = rawContents[67].Trim();
                Description = rawContents[68].Trim();
                BuffDescription = rawContents[69].Trim();
                Skillsource = rawContents[70].Trim();
                Skillactmark=IsNumeric(rawContents[71]) ? int.Parse(rawContents[71]):0;
                BuffDisplay=IsNumeric(rawContents[72]) ? int.Parse(rawContents[72]):0;
            }
            catch (Exception ex)
            {
Core/GameEngine/Model/Config/SkillConfig.cs.meta
@@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: db393bd0ebb18b74e98ba16a7d19e7c6
timeCreated: 1525345704
timeCreated: 1537946131
licenseType: Pro
MonoImporter:
  serializedVersion: 2
System/Skill/TalentModel.cs
@@ -17,10 +17,10 @@
            get { return m_SelectSeries; }
            set
            {
                if (m_SelectSeries != value && OnSelectSeriesEvent != null)
                if (m_SelectSeries != value && selectSeriesEvent != null)
                {
                    m_SelectSeries = value;
                    OnSelectSeriesEvent();
                    selectSeriesEvent();
                }
                m_SelectSeries = value;
            }
@@ -31,10 +31,10 @@
            get { return m_SelectTalentType; }
            set
            {
                if (m_SelectTalentType != value && OnSelectTalentTypeEvnet != null)
                if (m_SelectTalentType != value && selectTalentTypeEvnet != null)
                {
                    m_SelectTalentType = value;
                    OnSelectTalentTypeEvnet();
                    selectTalentTypeEvnet();
                }
                m_SelectTalentType = value;
            }
@@ -45,18 +45,18 @@
            get { return m_SelectSkill; }
            set
            {
                if (m_SelectSkill != value && OnSelectSkillEvent != null)
                if (m_SelectSkill != value && selectSkillEvent != null)
                {
                    m_SelectSkill = value;
                    OnSelectSkillEvent();
                    selectSkillEvent();
                }
                m_SelectSkill = value;
            }
        }
        public event Action OnSelectTalentTypeEvnet;
        public event Action OnSelectSeriesEvent;
        public event Action OnSelectSkillEvent;
        public event Action selectTalentTypeEvnet;
        public event Action selectSeriesEvent;
        public event Action selectSkillEvent;
        public event Action talentPointUpdate;
        public event Action<int> talentSkillUpdate;
@@ -181,9 +181,11 @@
                }
                var talentConfig = talent.GetTalentConfig(talent.level + 1);
                var skillConfig = talent.GetSkillConfig(talent.level + 1);
                if (skillConfig.LearnSkillPointReq != 0)
                var requireSeriesPoint = skillConfig.RequireSeriesPoint();
                if (requireSeriesPoint != 0)
                {
                    if (GetSeriesPoint(talentConfig.type, 1) < skillConfig.LearnSkillPointReq)
                    var requireSeries = skillConfig.RequireSeries();
                    if (GetSeriesPoint(talentConfig.type, requireSeries) < requireSeriesPoint)
                    {
                        error = 4;
                        return false;
@@ -337,5 +339,26 @@
            return false;
        }
    }
    public static class TalentHelper
    {
        public static int RequireSeries(this SkillConfig config)
        {
            if (config == null)
            {
                return 0;
            }
            return config.LearnSkillPointReq / 10000;
        }
        public static int RequireSeriesPoint(this SkillConfig config)
        {
            if (config == null)
            {
                return 0;
            }
            return config.LearnSkillPointReq % 10000;
        }
    }
}
System/Skill/TalentSeriesBehaviour.cs
@@ -32,20 +32,35 @@
        public void Display()
        {
            m_Button.image.SetSprite(talentSeries == model.selectSeries ? "Title_TabRight" : "Title_TabDark");
            DisplayTalentPoint();
            model.OnSelectSeriesEvent -= OnSelectSeriesEvent;
            model.OnSelectSeriesEvent += OnSelectSeriesEvent;
            model.selectSeriesEvent -= OnSelectSeriesEvent;
            model.selectSeriesEvent += OnSelectSeriesEvent;
            model.selectTalentTypeEvnet -= OnSelectTalentTypeEvnet;
            model.selectTalentTypeEvnet += OnSelectTalentTypeEvnet;
        }
        void DisplayTalentPoint()
        {
            var point = model.GetSeriesPoint(model.selectTalentType, talentSeries);
            m_TalentPoint.text = StringUtility.Contact("(", point, ")");
        }
        public void Dispose()
        {
            model.OnSelectSeriesEvent -= OnSelectSeriesEvent;
            model.selectSeriesEvent -= OnSelectSeriesEvent;
            model.selectTalentTypeEvnet -= OnSelectTalentTypeEvnet;
        }
        private void OnSelectSeriesEvent()
        {
            m_Button.image.SetSprite(talentSeries == model.selectSeries ? "Title_TabRight" : "Title_TabDark");
        }
        private void OnSelectTalentTypeEvnet()
        {
            DisplayTalentPoint();
        }
    }
}
System/Skill/TalentSkillBehaviour.cs
@@ -28,8 +28,8 @@
            skillId = _skillId;
            model.talentSkillUpdate -= TalentSkillUpdate;
            model.talentSkillUpdate += TalentSkillUpdate;
            model.OnSelectSkillEvent -= OnSelectSkillEvent;
            model.OnSelectSkillEvent += OnSelectSkillEvent;
            model.selectSkillEvent -= OnSelectSkillEvent;
            model.selectSkillEvent += OnSelectSkillEvent;
            Display();
        }
@@ -65,7 +65,7 @@
        public void Dispose()
        {
            model.talentSkillUpdate -= TalentSkillUpdate;
            model.OnSelectSkillEvent -= OnSelectSkillEvent;
            model.selectSkillEvent -= OnSelectSkillEvent;
        }
        private void SelectSkill()
System/Skill/TalentWin.cs
@@ -68,9 +68,9 @@
            model.selectSeries = 1;
            model.selectTalentType = 1;
            Display();
            model.OnSelectTalentTypeEvnet += OnSelectTalentTypeEvnet;
            model.OnSelectSeriesEvent += OnSelectSeriesEvent;
            model.OnSelectSkillEvent += OnSelectSkillEvent;
            model.selectTalentTypeEvnet += OnSelectTalentTypeEvnet;
            model.selectSeriesEvent += OnSelectSeriesEvent;
            model.selectSkillEvent += OnSelectSkillEvent;
            model.talentSkillUpdate += TalentSkillUpdate;
            model.talentPointUpdate += TalentPointUpdate;
        }
@@ -81,9 +81,9 @@
        protected override void OnPreClose()
        {
            model.OnSelectTalentTypeEvnet -= OnSelectTalentTypeEvnet;
            model.OnSelectSeriesEvent -= OnSelectSeriesEvent;
            model.OnSelectSkillEvent -= OnSelectSkillEvent;
            model.selectTalentTypeEvnet -= OnSelectTalentTypeEvnet;
            model.selectSeriesEvent -= OnSelectSeriesEvent;
            model.selectSkillEvent -= OnSelectSkillEvent;
            model.talentSkillUpdate -= TalentSkillUpdate;
            model.talentPointUpdate -= TalentPointUpdate;
            for (int i = 0; i < m_TalentSeries.Length; i++)
@@ -193,10 +193,11 @@
                var skillConfig = talent.GetSkillConfig(talent.level + 1);
                if (talentConfig != null)
                {
                    if (skillConfig.LearnSkillPointReq != 0 && index < m_SelectConditions.Length)
                    var requireSeriesPoint = skillConfig.RequireSeriesPoint();
                    if (requireSeriesPoint != 0 && index < m_SelectConditions.Length)
                    {
                        m_SelectConditions[index].gameObject.SetActive(true);
                        m_SelectConditions[index].text = StringUtility.Contact(0, "/", skillConfig.LearnSkillPointReq);
                        m_SelectConditions[index].text = StringUtility.Contact(0, "/", requireSeriesPoint);
                        index++;
                    }
                }