private void DeletePlayerElement(Player player) { PlayerUIElement toDestroy = FindUIElementByPlayerNumber(player.ActorNumber); allPlayerElements.Remove(toDestroy); toDestroy.DestroyReference(); }
private int GetNumberInTeam(int myTeamIndex) { int toReturn = 0; PlayerUIElement localPlayerElement = FindLocalPlayerElement(); List <PlayerUIElement> membersOfMyTeam = new List <PlayerUIElement>(); membersOfMyTeam.Add(localPlayerElement); for (int i = 0; i < allPlayerElements.Count; i++) { if (allPlayerElements[i].GetTeamNumber() == localPlayerElement.teamNumber) { membersOfMyTeam.Add(allPlayerElements[i]); } } for (int i = 0; i < membersOfMyTeam.Count; i++) { if (membersOfMyTeam[i].PlayerNumber > localPlayerElement.PlayerNumber) { toReturn++; } } return(toReturn); }
private void StartGameRPC() { PhotonNetwork.LeaveLobby(); PhotonNetwork.CurrentRoom.IsOpen = false; PlayerUIElement local = FindLocalPlayerElement(); NetworkManager.SetLocalPlayerInfo(local.teamNumber, GetNumberInTeam(local.teamNumber)); SceneHandler sceneManager = ServiceLocator.GetServiceOfType <SceneHandler>(); sceneManager.LoadScene(sceneToLoad); }
private PlayerUIElement CreatePlayerElement(Player player) { GameObject newObject = Instantiate(playerInRoomElementPrefab, Vector3.zero, Quaternion.identity); newObject.transform.SetParent(playerElementParent, false); PlayerUIElement toReturn = new PlayerUIElement(player, newObject.transform); toReturn.AddListenerToDropDown(delegate { UpdatePlayerElement(player.ActorNumber, toReturn.teamNumber); }); toReturn.AddListenerToReadyToggle(delegate { SetReady(player.ActorNumber, toReturn.GetToggleValue()); }); allPlayerElements.Add(toReturn); return(toReturn); }