using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; using DG.Tweening; /* 限时模式的结算界面 */ public class TimeLimitGameSettleView : MonoBehaviour { [SerializeField] Sprite starLight; void Start() { if (TimeLimitGameView.ins) { TimeLimitGameView.ins.gameObject.SetActive(false); } object[] results = GameMgr.ins.gameMode.Settle(); int starCount = (int) results[0]; float score = (float) results[1]; // if (starCount >= 3) // this.transform.Find("Result1").gameObject.SetActive(true); // else // this.transform.Find("Result2").gameObject.SetActive(true); for (int i = 1; i <= starCount && i <= 3; i++) { Transform tsf = this.transform.Find("Star" + i); tsf.DOMoveZ(0, (float) i * 0.3f).OnComplete(() => { tsf.GetComponent().sprite = starLight; tsf.DOPunchScale(new Vector3(0.3f, 0.3f, 0.3f), 0.3f); }); } Text scoreText = this.transform.Find("ScoreBG/Layout/Score").GetComponent(); DOTween.To(() => 0, value => { scoreText.text = value.ToString($"f{CommonConfig.ringsPrecision}"); LayoutRebuilder.ForceRebuildLayoutImmediate(scoreText.transform.parent.GetComponent()); }, score, 1); AudioMgr.ins.PlayWin(); SimulateMouseController.ins?.AddOpenLocker("NotGame"); GameOverInterface.OnGameOver(GameMgr.gameType); if (CommonConfig.StandaloneModeOrPlatformB) { //设置一下需要上传排行榜的分数 LocalRank.RankManager.SetCurrentScore((int)score); LocalRank.RankManager.CreateRankView(GameMgr.gameType, null); } } public void OnClick_Back() { //更改为点击‘返回上一页’,先进入运动结算页面后,返回到主界面。以减少用户对左上角返回键的操作(太边缘了) GameAssistUI.ins.onBtnBack(); //AudioMgr.ins.PlayBtn(); ////返回上一页。还未退出。退出再统一结算 //SceneManager.LoadScene(SceneManager.GetActiveScene().name, LoadSceneMode.Single); //GameMgr.ins.gameMode.gameMgr.userGameAnalyse.showResultView(() => { // SceneManager.LoadScene(SceneManager.GetActiveScene().name, LoadSceneMode.Single); //}); } public void OnClick_Again() { AudioMgr.ins.PlayBtn(); TimeLimitGameMode.insCountWillTryAgain = TimeLimitGameMode.insCount + 1; SceneManager.LoadScene(SceneManager.GetActiveScene().name, LoadSceneMode.Single); //这里设置需要播放开始音效 AudioMgr.bNeedPlayStartAudio = true; } }