From afc8dfa9a8bba205919489b6a348c6db812b4468 Mon Sep 17 00:00:00 2001
From: wangguan <wangguan@kt007.com>
Date: Sat, 05 Dec 2020 14:28:59 +0800
Subject: [PATCH] 修改排行榜,展示动效

---
 Assets/Scripts/UI/FinalPanel/FinalPanelItem.cs |    2 
 Assets/Scripts/UI/FinalPanel/FinalHttp.cs      |    1 
 Assets/Scripts/Guide/TestButton.cs             |    4 
 Assets/Scripts/UI/FinalPanel/FinalPanel.cs     |   94 ++++++++++-------------
 Assets/Resources/UI/Final/FinalPanel.prefab    |  114 +++++++++++++++++++++++++---
 5 files changed, 148 insertions(+), 67 deletions(-)

diff --git a/Assets/Resources/UI/Final/FinalPanel.prefab b/Assets/Resources/UI/Final/FinalPanel.prefab
index e56cc51..395f6dd 100644
--- a/Assets/Resources/UI/Final/FinalPanel.prefab
+++ b/Assets/Resources/UI/Final/FinalPanel.prefab
@@ -1598,7 +1598,7 @@
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 0
+  m_IsActive: 1
 --- !u!224 &1342957104496394012
 RectTransform:
   m_ObjectHideFlags: 0
@@ -1611,12 +1611,12 @@
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children:
   - {fileID: 8842715860916227055}
-  m_Father: {fileID: 1320872773829918336}
+  m_Father: {fileID: 1864187606053529145}
   m_RootOrder: 1
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: 0, y: -836.64}
+  m_AnchoredPosition: {x: 0, y: -138.75739}
   m_SizeDelta: {x: 796, y: 70}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &7497428368135573054
@@ -1657,7 +1657,7 @@
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 0
+  m_IsActive: 1
 --- !u!224 &4340007278223133668
 RectTransform:
   m_ObjectHideFlags: 0
@@ -1670,12 +1670,12 @@
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children:
   - {fileID: 2972815098632854075}
-  m_Father: {fileID: 1320872773829918336}
+  m_Father: {fileID: 1864187606053529145}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: 0, y: -742.3}
+  m_AnchoredPosition: {x: 0, y: -44.41742}
   m_SizeDelta: {x: 796, y: 70}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &4744650730107385549
@@ -2148,6 +2148,98 @@
   m_FillOrigin: 0
   m_UseSpriteMesh: 0
   m_PixelsPerUnitMultiplier: 1
+--- !u!1 &4147864255042691525
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1864187606053529145}
+  - component: {fileID: 994724549632504512}
+  - component: {fileID: 5252008787369932129}
+  - component: {fileID: 1349423435015213552}
+  m_Layer: 5
+  m_Name: ItemMask
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1864187606053529145
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4147864255042691525}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children:
+  - {fileID: 4340007278223133668}
+  - {fileID: 1342957104496394012}
+  - {fileID: 2337093397398769149}
+  m_Father: {fileID: 1320872773829918336}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 1}
+  m_AnchorMax: {x: 0.5, y: 1}
+  m_AnchoredPosition: {x: 0, y: -840.2}
+  m_SizeDelta: {x: 796, y: 284.63477}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &994724549632504512
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4147864255042691525}
+  m_CullTransparentMesh: 0
+--- !u!114 &5252008787369932129
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4147864255042691525}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+--- !u!114 &1349423435015213552
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4147864255042691525}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_ShowMaskGraphic: 0
 --- !u!1 &4282407097951878964
 GameObject:
   m_ObjectHideFlags: 0
@@ -2437,7 +2529,7 @@
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 0
+  m_IsActive: 1
 --- !u!224 &2337093397398769149
 RectTransform:
   m_ObjectHideFlags: 0
@@ -2450,12 +2542,12 @@
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children:
   - {fileID: 826297738919942168}
-  m_Father: {fileID: 1320872773829918336}
+  m_Father: {fileID: 1864187606053529145}
   m_RootOrder: 2
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: 0, y: -932.5}
+  m_AnchoredPosition: {x: 0, y: -234.61737}
   m_SizeDelta: {x: 796, y: 70}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &6233062939227581327
@@ -2587,9 +2679,7 @@
   m_LocalPosition: {x: 0, y: 0, z: 0}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children:
-  - {fileID: 4340007278223133668}
-  - {fileID: 1342957104496394012}
-  - {fileID: 2337093397398769149}
+  - {fileID: 1864187606053529145}
   m_Father: {fileID: 5825945650563712391}
   m_RootOrder: 15
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
diff --git a/Assets/Scripts/Guide/TestButton.cs b/Assets/Scripts/Guide/TestButton.cs
index f6b20e4..4f0fd8a 100644
--- a/Assets/Scripts/Guide/TestButton.cs
+++ b/Assets/Scripts/Guide/TestButton.cs
@@ -40,8 +40,8 @@
         if (GUILayout.Button("SendRequest", GUILayout.Width(150), GUILayout.Height(70)))
         {
             //SendRequest("aa", 4700, 28);
-            score += 100;
-            SendPost(score.ToString(), score, 1, "成绩 25关 3波");
+            score += 10;
+            SendPost(score.ToString(), score, 1, "25关 3波");
         }
 
         if (GUILayout.Button("SendGet", GUILayout.Width(150), GUILayout.Height(70)))
diff --git a/Assets/Scripts/UI/FinalPanel/FinalHttp.cs b/Assets/Scripts/UI/FinalPanel/FinalHttp.cs
index 7f6a9b3..ddd8a6c 100644
--- a/Assets/Scripts/UI/FinalPanel/FinalHttp.cs
+++ b/Assets/Scripts/UI/FinalPanel/FinalHttp.cs
@@ -140,6 +140,7 @@
 
         if (callBack != null)
         {
+            Debug.Log($"下载到的列表个数:{allHttpGetInfoLis.Count}");
             callBack(allHttpGetInfoLis, myrank, mydataHttpInfo);
         }
     }
diff --git a/Assets/Scripts/UI/FinalPanel/FinalPanel.cs b/Assets/Scripts/UI/FinalPanel/FinalPanel.cs
index 66d5534..a373cbd 100644
--- a/Assets/Scripts/UI/FinalPanel/FinalPanel.cs
+++ b/Assets/Scripts/UI/FinalPanel/FinalPanel.cs
@@ -69,6 +69,8 @@
 
     TextMeshProUGUI rankUpbj;
     GameObject newPlayerImage;//新用户提示
+    GameObject httpCountDownPanel;
+
     /// <summary>
     /// 入口函数
     /// </summary>
@@ -78,6 +80,7 @@
     {
         _waveInfo = waveInfo;
         _myScore = myScore;
+        isFirstStart = true;//首次启动下载到数据执行动效
         _data = new SmallList<FinalPanelItemData>();
         Debug.Log($"_myScore:{_myScore}  _waveInfo:{_waveInfo}");
 
@@ -125,9 +128,9 @@
         _limitUp = 100;
         finalHttp.Init(GetHttpData, _limit);//重置状态,设置回调和拉取的所有数据
 
-        itemFirst = transform.Find("ItemPanel/FinalPanelItemFirst").GetComponent<FinalPanelItem>();
-        itemSecond = transform.Find("ItemPanel/FinalPanelItemSecond").GetComponent<FinalPanelItem>();
-        itemThird = transform.Find("ItemPanel/FinalPanelItemThird").GetComponent<FinalPanelItem>();
+        itemFirst = transform.Find("ItemPanel/ItemMask/FinalPanelItemFirst").GetComponent<FinalPanelItem>();
+        itemSecond = transform.Find("ItemPanel/ItemMask/FinalPanelItemSecond").GetComponent<FinalPanelItem>();
+        itemThird = transform.Find("ItemPanel/ItemMask/FinalPanelItemThird").GetComponent<FinalPanelItem>();
 
         httpCountDownPanel = transform.Find("HttpCountDownPanel").gameObject;
         httpCountDownPanel.SetActive(false);
@@ -172,62 +175,15 @@
 
     private void StartHttp()
     {
-        //OpenHttpCountDown(true);
         Debug.Log($"_myScore:{_myScore}  _waveInfo:{_waveInfo}");
         finalHttp.SendPost(playerNickName, _myScore, 1, _waveInfo);
-    }
-
-    #region 联网倒计时判断
-    bool isSending;
-    int sendCount;
-    GameObject httpCountDownPanel;
-    private void OpenHttpCountDown(bool isOn)
-    {
-        if (isOn)
-        {
-            isSending = true;
-            sendCount = 0;
-            StartCoroutine("HttpCountDown");
-        }
-        else
-        {
-            isSending = false;
-            StopCoroutine("HttpCountDown");
-        }
-    }
-    IEnumerator HttpCountDown()
-    {
-        while (isSending)
-        {
-            yield return new WaitForSeconds(1.0f);
-            sendCount++;
-            Debug.Log($"等待了{sendCount}秒");
-            if (sendCount > 10)
-            {
-                Debug.Log("等了10秒了,连接失败");
-                if (!httpCountDownPanel.activeSelf) httpCountDownPanel.SetActive(true);
-
-                isSending = false;
-
-                break;
-            }
-        }
-    }
-    #endregion
-
-
-    private void Close()
-    {
-        gameObject.SetActive(false);
-        GameConfig.NextSceneName = endlessGameScene;
-        SceneManager.LoadScene(loadingScene);
     }
 
     private void GetHttpData(List<HttpGetInfo> allHttpGetInfoLis, int myrank, HttpGetInfo mydataHttpInfo)
     {
         scroller = transform.Find("Scroller").GetComponent<EnhancedScroller>();
         scroller.Delegate = this;
-
+        playPSItem = new List<FinalPanelItem>();
         RefreshHttpData(allHttpGetInfoLis, myrank, mydataHttpInfo);
 
         if (allHttpGetInfoLis != null)
@@ -238,6 +194,7 @@
         }
 
         PlayDoTween();
+        isFirstStart = false;
     }
 
     private void PlayDoTween()
@@ -309,8 +266,18 @@
         if (_data.Count > 0)
         {
             scrollerCanvasGroup.alpha = 1;
-            itemCanvasGroup.alpha = 1;
+            Debug.Log("开始展示排行榜");
+        }
+        itemCanvasGroup.alpha = 1;
+        float duration = 0.1f;
+        for (int i = 0; i < playPSItem.Count; i++)
+        {
+            playPSItem[i].PlayDoTween(duration);
+            yield return new WaitForSeconds(duration);
+        }
 
+        if (playPSItem.Count > 0)
+        {
             image_HScore.SetActive(true);
         }
 
@@ -427,6 +394,8 @@
     }
 
     List<HttpGetInfo> _allHttpGetInfoLis;
+    List<FinalPanelItem> playPSItem;//特效list
+    bool isFirstStart;
     private void RefreshHttpData(List<HttpGetInfo> allHttpGetInfoLis, int myrank, HttpGetInfo mydataHttpInfo)
     {
         _allHttpGetInfoLis = allHttpGetInfoLis;
@@ -469,6 +438,9 @@
                 data.index = 1;
                 itemFirst.gameObject.SetActive(true);
                 itemFirst.SetData(data);
+                itemFirst.SetPos();
+                if (isFirstStart)
+                    playPSItem.Add(itemFirst);
                 //itemFirst.CheckRank(tmpRankUp);
             }
             else
@@ -485,6 +457,9 @@
                 data.index = 2;
                 itemSecond.gameObject.SetActive(true);
                 itemSecond.SetData(data);
+                itemSecond.SetPos();
+                if (isFirstStart)
+                    playPSItem.Add(itemSecond);
                 //itemFirst.CheckRank(tmpRankUp);
             }
             else
@@ -500,6 +475,9 @@
                 data.index = 3;
                 itemThird.gameObject.SetActive(true);
                 itemThird.SetData(data);
+                itemThird.SetPos();
+                if (isFirstStart)
+                    playPSItem.Add(itemThird);
                 //itemFirst.CheckRank(tmpRankUp);
             }
             else
@@ -518,6 +496,18 @@
                     _data.Add(data);
                 }
                 scroller.ReloadData();
+
+                if (isFirstStart)
+                {
+                    Transform container = transform.Find("Scroller/Container");
+                    FinalPanelItem[] items = container.GetComponentsInChildren<FinalPanelItem>();
+                    for (int i = 0; i < items.Length; i++)
+                    {
+                        playPSItem.Add(items[i]);
+                        items[i].SetPos();
+                    }
+                }
+
             }
 
         }
diff --git a/Assets/Scripts/UI/FinalPanel/FinalPanelItem.cs b/Assets/Scripts/UI/FinalPanel/FinalPanelItem.cs
index 7d9d7d0..855eefe 100644
--- a/Assets/Scripts/UI/FinalPanel/FinalPanelItem.cs
+++ b/Assets/Scripts/UI/FinalPanel/FinalPanelItem.cs
@@ -107,7 +107,7 @@
 
     public void SetPos()
     {
-        backGround.rectTransform.anchoredPosition = new UnityEngine.Vector2(720, 0);
+        backGround.rectTransform.anchoredPosition = new UnityEngine.Vector2(796, 0);
     }
 
     public void PlayDoTween(float duration)

--
Gitblit v1.9.1