using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; /* PK模式的结算界面 */ public class PKGameSettleView : MonoBehaviour { void Start() { GameMode gameMode = GameMgr.ins.gameMode; if (PKGameView.ins) { PKGameView.ins.gameObject.SetActive(false); } string[] results = (string[]) gameMode.Settle(); for (int i = 1; i <= 2; i++) { if (GlobalData.pkMatchType == PKMatchType.OnlinePK) { int playerIndex = i - 1; (Sprite avatar, string nickName) = RoleMgr.GetRoleInfo(GlobalData.matchPlayerInfos[playerIndex].avatarID); nickName = GlobalData.matchPlayerInfos[playerIndex].nickname; this.transform.Find("Avatar" + i + "/Sprite").GetComponent().sprite = avatar; this.transform.Find("Name" + i).GetComponent().text = nickName; } else if (GlobalData.pkMatchType == PKMatchType.LocalPK) { (Sprite avatar, string nickName) = RoleMgr.GetRoleInfo(PKGameMode.playerRoleIDs[i - 1]); this.transform.Find("Avatar" + i + "/Sprite").GetComponent().sprite = avatar; this.transform.Find("Name" + i).GetComponent().text = nickName; } this.transform.Find("Win" + i).gameObject.SetActive(results[i - 1] == "胜利"); this.transform.Find("Fail" + i).gameObject.SetActive(results[i - 1] == "失败"); if (GlobalData.pkMatchType == PKMatchType.LocalPK) { this.transform.Find("Score" + i + "/Text").GetComponent().text = ((PKGameMode)gameMode).totalScores[i - 1].ToString(); } else if (GlobalData.pkMatchType == PKMatchType.OnlinePK) { this.transform.Find("Score" + i + "/Text").GetComponent().text = ((PKGameMode_OnlinePK)gameMode).gameLogic.totalScores[i - 1].ToString(); } } if (GlobalData.pkMatchType == PKMatchType.OnlinePK) { Transform btnsTF = this.transform.Find("Btns"); for (int i = 0; i < btnsTF.childCount; i++) { Transform tf = btnsTF.GetChild(i); tf.gameObject.SetActive(tf.gameObject.name == "BtnBack"); } } AudioMgr.ins.PlayWin(); if (GlobalData.pkMatchType == PKMatchType.OnlinePK) { PKGameMode_OnlinePK gm = (PKGameMode_OnlinePK)gameMode; string res = results[gm.myPlayerIndex]; int score = res == "胜利" ? 20 : 10; UserPlayer.ins.call("rankComp.uploadGameScore", GameMgr.gameType, score); } } public void GoHome() { AudioMgr.ins.PlayBtn(); SceneManager.LoadScene("Home", LoadSceneMode.Single); HomeMgr.DestroyCacheViews(); } public void TryAgain() { AudioMgr.ins.PlayBtn(); if (GameAssistUI.ins) GameAssistUI.ins.recordPlayerRecordsWhenGameTryAgain(); SceneManager.LoadScene("Game", LoadSceneMode.Single); } }