From dfbc2f2baa781245104eff074f44806738bbcf06 Mon Sep 17 00:00:00 2001
From: Client_PangDeRong <593317293@qq.com>
Date: 星期四, 22 十一月 2018 15:09:25 +0800
Subject: [PATCH] 4933 【前端】【1.3】获取途径跳转后保留必增勾选情况

---
 System/Strengthening/EquipWashModel.cs    |    8 ++++
 System/Strengthening/WashTips.cs          |  107 ++++++++++++++++++++++++++++-------------------------
 System/Strengthening/EquipReinforceWin.cs |    4 ++
 3 files changed, 69 insertions(+), 50 deletions(-)

diff --git a/System/Strengthening/EquipReinforceWin.cs b/System/Strengthening/EquipReinforceWin.cs
index b8cde04..797f314 100644
--- a/System/Strengthening/EquipReinforceWin.cs
+++ b/System/Strengthening/EquipReinforceWin.cs
@@ -189,6 +189,7 @@
 
         private void OnClickEquipSuit()
         {
+            equipWashModel.SetCurWashModel(0);
             if (StrengthenPnl.gameObject.activeSelf)
             {
                 StrengthenPnl.gameObject.SetActive(false);
@@ -202,6 +203,7 @@
 
         private void OnClickWingsRefine()
         {
+            equipWashModel.SetCurWashModel(0);
             if (StrengthenPnl.gameObject.activeSelf)
             {
                 StrengthenPnl.gameObject.SetActive(false);
@@ -216,6 +218,7 @@
 
         private void OnClickInlayTitle()
         {
+            equipWashModel.SetCurWashModel(0);
             if (StrengthenPnl.gameObject.activeSelf)
             {
                 StrengthenPnl.gameObject.SetActive(false);
@@ -229,6 +232,7 @@
 
         private void OnClickStrengthTitle()
         {
+            equipWashModel.SetCurWashModel(0);
             StrengthenPnl.gameObject.SetActive(true);
             _InlaidGemPanel.gameObject.SetActive(false);
             WashTip.gameObject.SetActive(false);
diff --git a/System/Strengthening/EquipWashModel.cs b/System/Strengthening/EquipWashModel.cs
index 4ae32de..a5fd55e 100644
--- a/System/Strengthening/EquipWashModel.cs
+++ b/System/Strengthening/EquipWashModel.cs
@@ -160,6 +160,14 @@
         CheckIsMasterLv();
     }
 
+    #region 璁剧疆褰撳墠娲楃粌鐨勬暟鎹�
+    public int curWashEquip { get; private set;}
+    public void SetCurWashModel(int index)
+    {
+        curWashEquip = index;
+    }
+    #endregion
+
     #region 瑙f瀽鏈湴鏁版嵁
     public int mustWashMatId { get; private set;}
     private void ParseFuncConfig()
diff --git a/System/Strengthening/WashTips.cs b/System/Strengthening/WashTips.cs
index 9f8cff9..cc8e3a5 100644
--- a/System/Strengthening/WashTips.cs
+++ b/System/Strengthening/WashTips.cs
@@ -54,8 +54,6 @@
     private ItemModel _itemModel; //娲楃粌鐨勮澶�
     private int[] _costMoneylist = null;
     private List<WashProCount> _washInfolist;
-    private int curWashEquip = 0;
-
     EquipWashModel _equipWashModel;
     EquipWashModel equipWashModel
     {
@@ -116,16 +114,17 @@
 
     private void OnEnable()
     {    
-        jumpToWashId = 0;
         guideEffect = null;
         //_equipWashCtrl.mScrollRect.verticalNormalizedPosition = 1;
         #region 鍒濆鍖栫洃鍚拰鏁版嵁
-        curWashEquip = 0;
-        isOpenPrompting = true;
-        _attackWashPro.toggleIsOn = false;
-        _lifeWashPro.toggleIsOn = false;
-        _ignoreDefenceWashPro.toggleIsOn = false;
-
+        if(equipWashModel.curWashEquip == 0)
+        {
+            _attackWashPro.toggleIsOn = false;
+            _lifeWashPro.toggleIsOn = false;
+            _ignoreDefenceWashPro.toggleIsOn = false;
+            isOpenPrompting = true;
+            jumpToWashId = 0;
+        }
         _equipWashCtrl.lockType = EnhanceLockType.KeepVertical;
         _cancelBtn.onClick.AddListener(OnClickCancelBtn);
         _upgradeBtn.onClick.AddListener(OnClickUpGradeBtn);
@@ -145,6 +144,10 @@
         _washMasterBtn.onClick.RemoveAllListeners();
         equipWashModel.RefreshWashModelEvent -= RefreshModel;
         playerPack.RefreshItemCountAct -= RefreshCostItem;
+        if(!WindowJumpMgr.Instance.IsJumpState)
+        {
+            equipWashModel.SetCurWashModel(0);
+        }
     }
 
     private void CheckJumpToModel()
@@ -152,61 +155,65 @@
         _attackWashPro.isShowPerfectEffect = false;
         _lifeWashPro.isShowPerfectEffect = false;
         _ignoreDefenceWashPro.isShowPerfectEffect = false;
-
-        if (AchievementGoto.guideAchievementId != 0)
+        SuccessConfig successConfig = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
+        if (successConfig != null && successConfig.Type == 66)
         {
-            SuccessConfig successConfig = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
-            if(successConfig.Type == 66)
+            bool isWash = false;
+            for (int i = 0; i < _washInfolist.Count; i++)
             {
-                bool isWash = false;
-                for(int i = 0; i < _washInfolist.Count; i++)
+                WashProCount washPro = _washInfolist[i];
+                ItemModel itemModel = playerPack.GetItemModelByIndex(PackType.rptEquip, washPro.EquipPlace);
+                if (itemModel != null)
                 {
-                    WashProCount washPro = _washInfolist[i];
-                    ItemModel itemModel = playerPack.GetItemModelByIndex(PackType.rptEquip,washPro.EquipPlace);
-                    if(itemModel != null)
+                    var washModel = EquipWashConfig.GetEquipWashData(equipWashModel.OnGetWashType(washPro.EquipPlace), washPro.XLAttrLV);
+                    if (washModel != null
+                        && equipWashModel.IsEnoughMat(washModel.washConfig)
+                        && equipWashModel.IsCanWash(itemModel))
                     {
-                        var washModel = EquipWashConfig.GetEquipWashData(equipWashModel.OnGetWashType(washPro.EquipPlace), washPro.XLAttrLV);
-                        if (washModel!= null 
-                            && equipWashModel.IsEnoughMat(washModel.washConfig) 
-                            && equipWashModel.IsCanWash(itemModel))
-                        {
-                            jumpToWashId = washPro.EquipPlace;
-                            isWash = true;
-                            curWashEquip = i;
-                            _equipWashCtrl.JumpIndex(curWashEquip);
-                            _equipWashCtrl.m_Scorller.RefreshActiveCellViews();
-                            break;
-                        }
+                        jumpToWashId = washPro.EquipPlace;
+                        isWash = true;
+                        equipWashModel.SetCurWashModel(i);
+                        _equipWashCtrl.JumpIndex(equipWashModel.curWashEquip);
+                        _equipWashCtrl.m_Scorller.RefreshActiveCellViews();
+                        break;
                     }
                 }
-
-                if(!isWash)
-                {
-                    MessageWin.Inst.ShowFixedTip(Language.Get("Material101"));
-                }
-                else
-                {
-                    guideEffect = AchievementGuideEffectPool.Require(1);
-                    guideEffect.transform.SetParentEx(_washBtn.transform,Vector3.zero,Quaternion.identity,Vector3.one);
-                }
-                AchievementGoto.guideAchievementId = 0;
             }
+
+            if (!isWash)
+            {
+                MessageWin.Inst.ShowFixedTip(Language.Get("Material101"));
+            }
+            else
+            {
+                guideEffect = AchievementGuideEffectPool.Require(1);
+                guideEffect.transform.SetParentEx(_washBtn.transform, Vector3.zero, Quaternion.identity, Vector3.one);
+            }
+            AchievementGoto.guideAchievementId = 0;
         }
         else
         {
-            curWashEquip = equipWashModel.JumpToIndex;
-            _equipWashCtrl.JumpIndex(curWashEquip);
-            _equipWashCtrl.m_Scorller.RefreshActiveCellViews();
+            if(equipWashModel.curWashEquip != 0)
+            {
+                _equipWashCtrl.JumpIndex(equipWashModel.curWashEquip);
+                _equipWashCtrl.m_Scorller.RefreshActiveCellViews();
+            }
+            else
+            {
+                equipWashModel.SetCurWashModel(equipWashModel.JumpToIndex);
+                _equipWashCtrl.JumpIndex(equipWashModel.curWashEquip);
+                _equipWashCtrl.m_Scorller.RefreshActiveCellViews();
+            }
         }
 
-        OnClickWashCellToggle(_washInfolist[curWashEquip],curWashEquip);
+        OnClickWashCellToggle(_washInfolist[equipWashModel.curWashEquip], equipWashModel.curWashEquip);
         StartCoroutine(SetOffestPos());
     }
 
     private IEnumerator SetOffestPos()
     {
         yield return null;
-        if (curWashEquip != 0)
+        if (equipWashModel.curWashEquip != 0)
         {
             _equipWashCtrl.JumpIndex(-offest, 0, EnhancedUI.EnhancedScroller.EnhancedScroller.TweenType.immediate);
         }
@@ -227,7 +234,7 @@
     public void RefreshModel()
     {
         CreateEquipWashCell();
-        OnClickWashCellToggle(_washInfolist[curWashEquip], curWashEquip);
+        OnClickWashCellToggle(_washInfolist[equipWashModel.curWashEquip], equipWashModel.curWashEquip);
     }
 
 
@@ -237,7 +244,7 @@
         if(equipWashCell != null)
         {
             WashProCount washPro = _washInfolist[cell.index];
-            equipWashCell.SetDisplayModel(washPro, equipWashModel.washEquipRedPointlist[cell.index].id,cell.index,curWashEquip);
+            equipWashCell.SetDisplayModel(washPro, equipWashModel.washEquipRedPointlist[cell.index].id,cell.index, equipWashModel.curWashEquip);
             equipWashCell.cellToggle.RemoveAllListeners();
             equipWashCell.cellToggle.AddListener(()=>
             {
@@ -249,7 +256,7 @@
 
     private void OnClickWashCellToggle(WashProCount washPro,int index)
     {
-        if (curWashEquip != index)
+        if (equipWashModel.curWashEquip != index)
         {
             _attackWashPro.isShowPerfectEffect = false;
             _lifeWashPro.isShowPerfectEffect = false;
@@ -313,7 +320,7 @@
         RefreshSpecWashUI();
 
         ChangeBtn();
-        curWashEquip = index;
+        equipWashModel.SetCurWashModel(index);
         equipWashModel.washBtnRedpoint.state = equipWashModel.washEquipRedPointlist[index].state;
         _equipWashCtrl.m_Scorller.RefreshActiveCellViews();
     }

--
Gitblit v1.8.0