From adb2a04520bb17b3aa00d6e81b08f42690352bc7 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期三, 24 十月 2018 17:51:21 +0800
Subject: [PATCH] 3687【前端】【1.2】天赋功能开发(升级添加属性点限制)

---
 System/Skill/TalentModel.cs |   31 +++++++++++++++++++++++++++++++
 System/Skill/TalentWin.cs   |   14 ++++++++++++++
 2 files changed, 45 insertions(+), 0 deletions(-)

diff --git a/System/Skill/TalentModel.cs b/System/Skill/TalentModel.cs
index 0ed2b21..4363e0d 100644
--- a/System/Skill/TalentModel.cs
+++ b/System/Skill/TalentModel.cs
@@ -274,6 +274,16 @@
                         }
                     }
                 }
+                var requireProperty = skillConfig.RequireProperty();
+                if (requireProperty != 0)
+                {
+                    var requirePropertyValue = skillConfig.RequirePropertyValue();
+                    if (UIHelper.GetPropertyMapPlayerData((AttrEnum)requireProperty) < requirePropertyValue)
+                    {
+                        error = 5;
+                        return false;
+                    }
+                }
             }
             return true;
         }
@@ -293,6 +303,9 @@
                     break;
                 case 4:
                     SysNotifyMgr.Instance.ShowTip("PreTalentLevelLimit");
+                    break;
+                case 5:
+                    SysNotifyMgr.Instance.ShowTip("TalentRequirePropertyLimit");
                     break;
             }
         }
@@ -486,6 +499,24 @@
             }
             return config.LearnSkillPointReq % 10000;
         }
+
+        public static int RequireProperty(this SkillConfig config)
+        {
+            if (config == null)
+            {
+                return 0;
+            }
+            return config.StateSkillLV / 10000;
+        }
+
+        public static int RequirePropertyValue(this SkillConfig config)
+        {
+            if (config == null)
+            {
+                return 0;
+            }
+            return config.StateSkillLV % 10000;
+        }
     }
 }
 
diff --git a/System/Skill/TalentWin.cs b/System/Skill/TalentWin.cs
index 1aa857b..28404df 100644
--- a/System/Skill/TalentWin.cs
+++ b/System/Skill/TalentWin.cs
@@ -231,6 +231,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)
                 {

--
Gitblit v1.8.0