using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace WildAttack { /// /// 游戏结束界面 /// public class GameOverPanelPK : MonoBehaviour { #region Members public Image AvatarPlayer1; public Image AvatarPlayer2; [SerializeField] Button btn_restart; [SerializeField] Button btn_back; [SerializeField] Text text_restart; [SerializeField] Text text_back; [SerializeField] Text text_currScoreTitle; [SerializeField] Text text_currScorePlayer1; [SerializeField] Text text_currScorePlayer2; [SerializeField] Text text_ResultPlayer1; [SerializeField] Text text_ResultPlayer2; #endregion #region Lifecycle // Start is called before the first frame update void Start() { RegisterEvent(); } void OnEnable() { SimulateMouseController.ins?.AddOpenLocker(this); InfraredDemo._ins?.SetSinglePoint(true); } void OnDisable() { SimulateMouseController.ins?.RemoveOpenLocker(this); InfraredDemo._ins?.SetSinglePoint(false, ScreenPointTypeEnum.FullScreen); } #endregion #region ButtonClickEvent /// /// 注册btn监听 /// private void RegisterEvent() { btn_restart.onClick.AddListener(OnBtnRestartClick); btn_back.onClick.AddListener(OnBtnBackClick); } /// ///点击 不玩了, 退出 /// private void OnBtnBackClick() { AudioMgr.ins.PlayBtn(); UnityEngine.SceneManagement.SceneManager.LoadScene("Home", UnityEngine.SceneManagement.LoadSceneMode.Single); } /// /// 重开按钮 /// private void OnBtnRestartClick() { AudioMgr.ins.PlayBtn(); // 重开设置 GameMananger.GetInstance().ResetMainCamera(); //GameMananger.GetInstance().ResetAim(); GameMananger.GetInstance().AddHp((int)GameModule.GetInstance().GetData("wallHp")); GameMananger.GetInstance().SetScore(0); // 重置enemys for (int i = EnemyManager.GetInstance().enemyList.Count - 1; i >= 0; i--) { EnemyManager.GetInstance().enemyList[i].ResetEnemy(); } //道具cd 关卡重置 EnemyPool.GetInstance().RecycleAll(); BalloonPool.GetInstance().RecycleAll(); FlotagePool.GetInstance().RecycleAll(); ProcessManager.GetInstance().RestartLevel(); UIManager.GetInstance().Restart(); } #endregion #region Functions /// /// 双人模式结束游戏 /// /// public void ShowGameOverPanelByPK(bool isWin) { text_restart.text = StringModule.GetInstance().GetData("restart"); text_back.text = StringModule.GetInstance().GetData("back"); //分数部分 text_currScoreTitle.text = StringModule.GetInstance().GetData("score"); int player1Score = GameMananger.GetInstance().TotalScore; int player2Score = GameMananger.GetInstance().TotalScore_2P; text_currScorePlayer1.text = GameMananger.GetInstance().TotalScore.ToString(); text_currScorePlayer2.text = GameMananger.GetInstance().TotalScore_2P.ToString(); if (player1Score > player2Score) { //玩家1胜利 text_ResultPlayer1.text = StringModule.GetInstance().GetData("victory"); text_ResultPlayer2.text = StringModule.GetInstance().GetData("defeat"); } else if (player1Score < player2Score) { //玩家2胜利 text_ResultPlayer2.text = StringModule.GetInstance().GetData("victory"); text_ResultPlayer1.text = StringModule.GetInstance().GetData("defeat"); } else { //平局 text_ResultPlayer1.text = StringModule.GetInstance().GetData("draw"); text_ResultPlayer2.text = StringModule.GetInstance().GetData("draw"); } } #endregion } }