// loop over players and show their scores private void UpdateScoreText() { playerscores.Clear(); string _scoretext = ""; foreach (var player in PhotonNetwork.CurrentRoom.Players) { var _score = CustomPlayerProperties.GetCurrentScore(player.Value); if (playerscores.ContainsKey(_score)) { playerscores[_score].Add(player.Value.NickName); } else { playerscores.Add(_score, new List <string>(new string[] { player.Value.NickName })); } } var _keys = playerscores.Keys.ToList(); _keys.Sort(); var _counter = 1; for (var i = _keys.Count - 1; i >= 0; i--) { foreach (var pscore in playerscores[_keys[i]]) { _scoretext += $"{_counter}. {pscore} : {_keys[i]} \n"; } } scoreText.text = _scoretext; }
private void SceneLoadedCallback(Scene scene, LoadSceneMode mode) { if (scene.buildIndex == currentGameScene) { sceneLoadedEvent.Raise(); CustomPlayerProperties.UpdateProps <int>(PhotonNetwork.LocalPlayer, "loaded_scene", scene.buildIndex); } }
public void PlayerScored() { var player = PhotonNetwork.LocalPlayer; var score = 1; var team = CustomPlayerProperties.GetTeam(player); CustomPlayerProperties.AddScore(player, score); CustomRoomProperties.AddScore(PhotonNetwork.CurrentRoom, team, score); }
protected override void ResetGame() { InputBridgeBase.ToggleMovement(false); CustomPlayerProperties.ResetProps(PhotonNetwork.LocalPlayer); if (PhotonNetwork.IsMasterClient) { CustomRoomProperties.InitializeRoom(PhotonNetwork.CurrentRoom, PhotonNetwork.CurrentRoom.PlayerCount); } }
public override void OnLeftRoom() { if (printDebug) { Debug.Log("left room"); } roomName.text = ""; leaveRoomEvent.Raise(); CustomPlayerProperties.ResetProps(PhotonNetwork.LocalPlayer); }
public override void OnPlayerPropertiesUpdate(Player targetPlayer, Hashtable changedProps) { if (GameMode.instance == null || !GameMode.instance.IsGameActive) { return; } // this will update when players score // display message that they scored var team = CustomPlayerProperties.GetTeam(targetPlayer); var teamname = GameMode.instance.Teams[team].teamName; uiMessage.Value = $"{targetPlayer.NickName} ({teamname}) scored!"; }
// photon left room callback public override void OnLeftRoom() { //roomName.text = ""; //playerName.text = ""; leaveRoomEvent.Raise(); // reset any state from prior game CustomPlayerProperties.ResetProps(PhotonNetwork.LocalPlayer); uiMessage.Value = "you left the room"; // if we aren't at the main menu go there if (SceneManager.GetActiveScene().buildIndex != 0) { PhotonNetwork.LoadLevel(0); } }
public override void OnJoinedRoom() { roomName.text = PhotonNetwork.CurrentRoom.Name; if (printDebug) { Debug.Log("joined room: " + PhotonNetwork.CurrentRoom.Name); } joinRoomEvent.Raise(); CustomPlayerProperties.ResetProps(PhotonNetwork.LocalPlayer); if (spawnPlayerEntity) { SpawnPlayer(PhotonNetwork.LocalPlayer); } }
// photon join room callback public override void OnJoinedRoom() { // set some debug text //roomName.text = PhotonNetwork.CurrentRoom.Name; //playerName.text = PhotonNetwork.NickName; joinRoomEvent.Raise(); // reset any state from prior game CustomPlayerProperties.ResetProps(PhotonNetwork.LocalPlayer); uiMessage.Value = "you joined a room"; // spawn a network entity to setup voice CustomNetworkManager.SpawnNetworkEntity(); // if master client proceed to lobby scene if (PhotonNetwork.IsMasterClient) { PhotonNetwork.LoadLevel(1); } }
/// <summary> /// Set the color of the player avatar based on team. /// </summary> public void SetPlayerColors() { var _team = CustomPlayerProperties.GetTeam(view.Owner); var _color = GameMode.instance.Teams[_team].teamColor; foreach (Transform child in avatarObjects) { if (child.name != "Team") { continue; } child.gameObject.SetActive(true); var _renderer = child.GetComponent <Renderer>(); var _block = new MaterialPropertyBlock(); _renderer.GetPropertyBlock(_block); _block.SetColor("_Color", _color); _renderer.SetPropertyBlock(_block); } }
private void Awake() { instance = this; }