public void Init(Player player, bl_UIReferences uir, bl_AIMananger.BotsStats bot = null) { Bot = bot; UIReference = uir; BackgroundImage = GetComponent <Image>(); if (Bot != null) { InitBot(); return; } cachePlayer = player; gameObject.name = player.NickName + player.ActorNumber; if (player.ActorNumber == PhotonNetwork.LocalPlayer.ActorNumber) { Color c = BackgroundImage.color; c.a = 0.35f; BackgroundImage.color = c; } InitTeam = player.GetPlayerTeam(); NameText.text = player.NickNameAndRole(); KillsText.text = player.CustomProperties[PropertiesKeys.KillsKey].ToString(); DeathsText.text = player.CustomProperties[PropertiesKeys.DeathsKey].ToString(); ScoreText.text = player.CustomProperties[PropertiesKeys.ScoreKey].ToString(); KickButton.SetActive(PhotonNetwork.IsMasterClient && player.ActorNumber != PhotonNetwork.LocalPlayer.ActorNumber && bl_GameData.Instance.MasterCanKickPlayers); #if LM LevelIcon.gameObject.SetActive(true); LevelIcon.sprite = bl_LevelManager.Instance.GetPlayerLevelInfo(cachePlayer).Icon; #else LevelIcon.gameObject.SetActive(false); #endif }
private bl_PlayerScoreboardUI GetBotScoreboardUI(bl_AIMananger.BotsStats bot) { for (int i = 0; i < cachePlayerScoreboard.Count; i++) { if (cachePlayerScoreboard[i].name == (bot.Name)) { return(cachePlayerScoreboard[i]); } } return(null); }
void OnBotStatUpdate(bl_AIMananger.BotsStats stat) { if (stat.ViewID != photonView.ViewID) { return; } BotStat = stat; AIName = stat.Name; AITeam = BotStat.Team; gameObject.name = AIName; bl_EventHandler.OnRemoteActorChange(transform, true, false); }
/// <summary> /// /// </summary> void ApplyMasterInfo(List <bl_AIMananger.BotsStats> stats) { int viewID = photonView.ViewID; bl_AIMananger.BotsStats bs = stats.Find(x => x.ViewID == viewID); if (bs != null) { AIName = bs.Name; AITeam = bs.Team; gameObject.name = AIName; BotStat = new bl_AIMananger.BotsStats(); BotStat.Name = AIName; BotStat.Score = bs.Score; BotStat.Kills = bs.Kills; BotStat.Deaths = bs.Deaths; BotStat.ViewID = bs.ViewID; bl_EventHandler.OnRemoteActorChange(transform, true, false); } }
/// <summary> /// /// </summary> void UpdateBotScoreboard() { if (AIManager == null || !AIManager.BotsActive || AIManager.BotsStatistics.Count <= 0) { return; } for (int i = 0; i < AIManager.BotsStatistics.Count; i++) { bl_AIMananger.BotsStats stat = AIManager.BotsStatistics[i]; if (botsScoreInstance) { if (GetBotScoreboardUI(stat) != null) { GetBotScoreboardUI(stat).InitBot(); } } else { GameObject newUIPS = Instantiate(PlayerScoreboardPrefab) as GameObject; newUIPS.GetComponent <bl_PlayerScoreboardUI>().Init(null, this, stat); Transform tp = null; if (!isOneTeamMode) { tp = stat.Team == Team.Delta ? Team1Panel : Team2Panel; } else { tp = TeamFFAPanel; } newUIPS.transform.SetParent(tp, false); cachePlayerScoreboard.Add(newUIPS.GetComponent <bl_PlayerScoreboardUI>()); } } botsScoreInstance = true; }