From 052bb69a8b50948052165847ea44312b8d4f6607 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期四, 20 九月 2018 16:13:14 +0800
Subject: [PATCH] Merge branch 'master' into 1871天赋功能

---
 System/Skill/SkillPassWin.cs |   65 ++++++++++++--------------------
 1 files changed, 25 insertions(+), 40 deletions(-)

diff --git a/System/Skill/SkillPassWin.cs b/System/Skill/SkillPassWin.cs
index c600434..2185243 100644
--- a/System/Skill/SkillPassWin.cs
+++ b/System/Skill/SkillPassWin.cs
@@ -39,6 +39,7 @@
         [SerializeField, Header("鐗规晥鏃堕暱")] float m_EffectDuration = 1f;
         private List<SkillConfig> skillListPass = new List<SkillConfig>();
         private int presentSltEquipIndex = -1;
+
         Coroutine cacheCoroutine = null;
         SkillModel m_Model;
         SkillModel model
@@ -143,7 +144,15 @@
             base.OnActived();
             UpdatePageBtn();
 
-            if (model.taskHoleRedpoint.state == RedPointState.Simple)
+            if (taskMain.Skill_Index != 0)
+            {
+                var hole = taskMain.Skill_Index - 1;
+                if (!model.IsPassSkillHoleOpen(hole))
+                {
+                    OnClickEquipHole(hole, false);
+                }
+            }
+            else if (model.taskHoleRedpoint.state == RedPointState.Simple)
             {
                 model.SetTaskHoleRemind();
                 for (int i = 0; i < equipPassSkills.Count; i++)
@@ -151,8 +160,7 @@
                     PassSkillLimit limit;
                     if (model.TryGetPassSkillLimit(i, out limit))
                     {
-                        if (limit.OpenSkillSlots > 0
-                            && model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask)
+                        if (limit.OpenSkillSlots > 0 && model.IsImmediatelyUnlock(i))
                         {
                             OnClickEquipHole(i, false);
                             return;
@@ -178,6 +186,7 @@
             model.taskUnlockUpdate -= TaskUnlockUpdate;
             model.SetDayRemind();
             model.UnlockPassHole = 0;
+            taskMain.Skill_Index = 0;
         }
 
         protected override void OnAfterClose()
@@ -290,7 +299,7 @@
                         var taskId = model.taskHoleDict[_limit.OpenSkillSlots];
                         var config = Config.Instance.Get<PyTaskConfig>(taskId);
                         if (PlayerDatas.Instance.baseData.LV >= config.lv
-                            && taskId == model.immediatelyUnlockTask)
+                            && model.IsImmediatelyUnlock(_index))
                         {
                             return 2;
                         }
@@ -462,7 +471,7 @@
                                 UIHelper.ReplaceNewLine(Language.Get(StringUtility.Contact("PassSkillHoleLimitTask_", limit.OpenSkillSlots)));
                             continue;
                         }
-                        else if (model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask
+                        else if (model.IsImmediatelyUnlock(i)
                             && model.IsTaskHoleUnlock(limit.OpenSkillSlots))
                         {
                             if (m_ImmediatelyUnlock.gameObject.activeSelf)
@@ -589,7 +598,7 @@
                                 m_GetWayBtn.gameObject.SetActive(false);
                                 return;
                             }
-                            if (taskId == model.immediatelyUnlockTask)
+                            if (model.IsImmediatelyUnlock(index))
                             {
                                 m_ImmediatelyUnlock.gameObject.SetActive(true);
                             }
@@ -627,35 +636,11 @@
 
         void ImmediatelyUnlock()
         {
-            //var count = pack.GetItemCountByID(PackType.rptItem, taskMain.ItemID);
-            //if (count >= taskMain.ItemNumber)
-            //{
-            //    task.CompletionOfTask(model.immediatelyUnlockTask);
-            //}
-            //else
-            //{
-            //    var requireJade = (ulong)((taskMain.ItemNumber - count) * taskMain.UnitPrice);
-            //    ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("PassiveSkillTask3", requireJade), 
-            //        (bool isOk) =>
-            //    {
-            //        if (isOk)
-            //        {
-            //            if (UIHelper.GetMoneyCnt(1) >= requireJade)
-            //            {
-            //                task.CompletionOfTask(model.immediatelyUnlockTask);
-            //            }
-            //            else
-            //            {
-            //                if (VersionConfig.Get().isBanShu)
-            //                {
-            //                    SysNotifyMgr.Instance.ShowTip("GoldErr");
-            //                    return;
-            //                }
-            //                WindowCenter.Instance.Open<RechargeTipWin>();
-            //            }
-            //        }
-            //    });
-            //}
+            if (model.taskHoleDict.ContainsKey(presentSltEquipIndex))
+            {
+                var taskId = model.taskHoleDict[presentSltEquipIndex];
+                TaskAllocation.Instance.SkillTask(taskId);
+            }
         }
 
         private void OnClickFunc(CellView cell)
@@ -674,17 +659,17 @@
             {
                 return;
             }
+            equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true);
             if (equipPassSkills[_index].skillData.skillId != 0)
             {
-                equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true);
                 model.presentSltSkillID = equipPassSkills[_index].skillData.skillId;
                 flipScroll.RefreshActive();
                 OnUpdateSltSkillInfo();
             }
-            else
-            {
-                equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false);
-            }
+            //else
+            //{
+            //    equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false);
+            //}
         }
 
         private int GetEquipHoleIndex(int _skillId)

--
Gitblit v1.8.0