From 0cee8023e1e8ce0fdd20dbddd90270c29c80653a Mon Sep 17 00:00:00 2001 From: wangguan <wangguan@kt007.com> Date: Thu, 26 Nov 2020 21:10:09 +0800 Subject: [PATCH] 技能特效 --- Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs | 66 ++++++++++++++++++++++++++++----- 1 files changed, 56 insertions(+), 10 deletions(-) diff --git a/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs b/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs index e9a31a2..9e9c464 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,35 @@ 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; + CanvasGroup canvasGroup = GameObject.Find("UICamera/BottomCanvas/Panel").GetComponent<CanvasGroup>(); + canvasGroup.alpha = 0; + canvasGroup.interactable = false; + 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,10 +114,29 @@ /// </summary> protected void Victory() { + EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLevelCompleted); EndlessUIStart.instance.Pause(); + + 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> @@ -131,7 +177,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