From 5e68f023a7ddd15f2e650dd03761b4e8bba1b4af Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期一, 10 九月 2018 14:58:32 +0800
Subject: [PATCH] 3379 【前端】符印塔扫荡动画点空白处跳过动画,直接显示最终结果

---
 System/RuneTower/RuneTowerSweepResultWin.cs |   37 ++++++++++++++++++++++++++++++++-----
 1 files changed, 32 insertions(+), 5 deletions(-)

diff --git a/System/RuneTower/RuneTowerSweepResultWin.cs b/System/RuneTower/RuneTowerSweepResultWin.cs
index 394ac2e..a75d360 100644
--- a/System/RuneTower/RuneTowerSweepResultWin.cs
+++ b/System/RuneTower/RuneTowerSweepResultWin.cs
@@ -15,6 +15,7 @@
 
     public class RuneTowerSweepResultWin : Window
     {
+        [SerializeField] Button m_Skip;
         [SerializeField] Text m_Title;
         [SerializeField] ScrollRect m_ResultScrollRect;
         [SerializeField] Button m_Close;
@@ -29,6 +30,7 @@
 
         float floorHeight = 0;
         float totalResultHeight = 0;
+        bool skip = false;
 
         #region Built-in
         protected override void BindController()
@@ -39,10 +41,12 @@
         {
             m_Close.AddListener(CloseClick);
             m_Continue.AddListener(Continue);
+            m_Skip.AddListener(Skip);
         }
 
         protected override void OnPreOpen()
         {
+            skip = false;
             m_Close.gameObject.SetActive(false);
             m_Continue.gameObject.SetActive(false);
         }
@@ -72,7 +76,7 @@
         private void ShowResults()
         {
             m_Title.text = Language.Get("RuneTowerSweepText9");
-            GeneSweepResultBehaviours(m_ResultScrollRect.content, runeTowerModel.towerSweepResults.Count);
+            GenerateSweepResultBehaviours(m_ResultScrollRect.content, runeTowerModel.towerSweepResults.Count);
             for (int i = 0; i < resultBehavioursBuf.Count; i++)
             {
                 var behaviour = resultBehavioursBuf[i];
@@ -100,7 +104,7 @@
             StartCoroutine("Co_ShowResultTowerByTower");
         }
 
-        private void GeneSweepResultBehaviours(Transform _parent, int _needCount)
+        private void GenerateSweepResultBehaviours(Transform _parent, int _needCount)
         {
             var currentCount = resultBehavioursBuf.Count;
             if (_needCount > currentCount)
@@ -120,7 +124,7 @@
 
         IEnumerator Co_ShowResultTowerByTower()
         {
-            var raycastFilter = this.AddMissingComponent<CanvasRaycastFilter>();
+            var raycastFilter = m_ResultScrollRect.AddMissingComponent<CanvasRaycastFilter>();
             raycastFilter.raycastTarget = false;
 
             foreach (var behaviour in resultBehavioursBuf)
@@ -169,10 +173,23 @@
                     m_ResultScrollRect.content.anchoredPosition = m_ResultScrollRect.content.anchoredPosition.SetY(end);
                 }
 
+                if (skip)
+                {
+                    break;
+                }
+
                 yield return WaitingForSecondConst.WaitMS500;
             }
 
-            yield return null;
+            for (int i = 0; i < count; i++)
+            {
+                resultBehavioursBuf[i].transform.localScale = Vector3.one;
+            }
+
+            if (!skip)
+            {
+                yield return null;
+            }
 
             resultTotalBehaviour.transform.localScale = Vector3.one;
             resultTotalBehaviour.UpdateSizeAndPosition();
@@ -191,11 +208,16 @@
                 {
                     m_ResultScrollRect.content.anchoredPosition = m_ResultScrollRect.content.anchoredPosition.SetY(y);
                 }
+
+                if (skip)
+                {
+                    break;
+                }
+
                 yield return null;
             }
 
             m_ResultScrollRect.content.anchoredPosition = m_ResultScrollRect.content.anchoredPosition.SetY(end);
-
             foreach (var behaviour in resultBehavioursBuf)
             {
                 behaviour.interactable = true;
@@ -215,6 +237,11 @@
             WindowCenter.Instance.Open<RuneTowerSweepBuyWin>();
         }
 
+        private void Skip()
+        {
+            skip = true;
+        }
+
     }
 
 }

--
Gitblit v1.8.0