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