From fac697773b8cb65b3ab54569413e15fca03ad1d7 Mon Sep 17 00:00:00 2001
From: chenxin <chenxin6991@163.com>
Date: Fri, 11 Dec 2020 20:21:14 +0800
Subject: [PATCH] Merge commit '31f0c1761b37dfd47408a93df9ed18468b50ef40' into master

---
 Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs |   70 +++++++++++++++++++++++++++++-----
 1 files changed, 59 insertions(+), 11 deletions(-)

diff --git a/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs b/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs
index 07b0ea3..ab2279b 100644
--- a/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs
+++ b/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs
@@ -41,6 +41,10 @@
 
         public GameObject SettlementUI;
 
+        public GameObject EffectPrefabObject;
+
+        private GameObject effectObj;
+
         public void Init()
         {
             LazyLoad();
@@ -53,15 +57,12 @@
         /// </summary>
         public void ReturnToMainMenu()
         {
-            if (GameConfig.IsNewbieGuideCompleted)
-                GameConfig.IsNewbie = false;
-
             // 清空所有Tween数据:
             DOTween.Clear();
             EndlessUIStart.bFirstLoaded = false;
             EndlessUIStart.bGameStart = false;
 
-            TowerPlacementGridEndless.GRID_OPENCASH = 100;
+            TowerPlacementGridEndless.GRID_OPENCASH = 200;
 
             SafelyUnsubscribe();
             SceneManager.LoadScene(menuSceneName);
@@ -77,9 +78,34 @@
             if (EndlessGameUI.instance.state == EndlessGameUI.State.Building)
                 EndlessGameUI.instance.CancelGhostPlacement();
 
-            RefreshFinalWave();
-            RefreshPropList();
-            SettlementUI.SetActive(true);
+            GameObject go = Instantiate(Resources.Load<GameObject>("UI/Final/FinalPanel"), GameObject.Find("UICamera/BottomCanvas").transform);
+            FinalPanel panelUI = go.GetComponent<FinalPanel>();
+            panelUI.SetData($"{EndlessLevelManager.instance.CurrentLevel}关 {EndlessLevelManager.instance.WaveManager.CurrentWaveIndex}波", EndlessScoreData.CurrentSocre);
+            //panelUI.SetPlayEffectAC(PlayEffect);
+            //GameObject.Find("UICamera/BottomCanvas").GetComponent<Canvas>().enabled = false;
+
+            EndlessUIStart.instance.GameOver();
+            return;
+
+            // RefreshFinalWave();
+            // RefreshPropList();
+            // SettlementUI.SetActive(true);
+            // PlayEffect();
+        }
+
+        private void PlayEffect()
+        {
+            if (effectObj == null)
+            {
+                effectObj = Instantiate(EffectPrefabObject);
+                GameObject particleSystemObject = GameObject.Find("ParticleSystemObject");
+                effectObj.transform.SetParent(particleSystemObject.transform, false);
+                effectObj.transform.localPosition = new Vector3(0, -51.6f, 36.6f);
+                effectObj.transform.localScale = new Vector3(6, 6, 6);
+            }
+
+            ParticleSystem ps = effectObj.transform.GetChild(0).GetComponent<ParticleSystem>();
+            ps.Play();
         }
 
         /// <summary>
@@ -87,11 +113,32 @@
         /// </summary>
         protected void Victory()
         {
+            ++GameConfig.GameCompletedCount;
             EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLevelCompleted);
             EndlessUIStart.instance.Pause();
+
+            ShowPanel();
+
+            // int showFavorite = PlayerPrefs.GetInt("GemBattleFavorite");
+
+            // if (showFavorite == 0)
+            // {
+            //     GameObject go = Instantiate(Resources.Load<GameObject>("UI/Favorite/FavoritePanel"), this.transform.parent.parent);
+            //     FavoritePanelUI panelUI = go.GetComponent<FavoritePanelUI>();
+            //     panelUI.SetAC(ShowPanel);
+
+            // }
+            // else
+            // {
+            //     ShowPanel();
+            // }
+        }
+
+        private void ShowPanel()
+        {
             OpenEndGameScreen(true);
-            if (VictoryAudio != null && AudioSource != null)
-                AudioSource.PlayOneShot(VictoryAudio);
+            // if (VictoryAudio != null && AudioSource != null)
+            //     AudioSource.PlayOneShot(VictoryAudio);
         }
 
         /// <summary>
@@ -110,7 +157,8 @@
         protected void SafelyUnsubscribe()
         {
             LazyLoad();
-            levelManager.LevelCompleted -= Victory;
+            if (levelManager != null)
+                levelManager.LevelCompleted -= Victory;
         }
 
         /// <summary>
@@ -132,7 +180,7 @@
             int level = EndlessLevelManager.instance.CurrentLevel;
             int wave = EndlessLevelManager.instance.WaveManager.CurrentWaveIndex;
 
-            FinalWaveText.text = $"最终波次:第{level}关,第{wave}波";
+            FinalWaveText.text = $"第{level}关,第{wave}波";
         }
 
         private void RefreshPropList()

--
Gitblit v1.9.1