wangguan
2020-11-26 0cee8023e1e8ce0fdd20dbddd90270c29c80653a
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()