private void CmdSpawnPlayer() { if (spawnSystem == null) { spawnSystem = FindObjectOfType <PlayerSpawnSystem>(); if (spawnSystem == null) { // If the spawn point is still null we need to give it a sec and try again Invoke(nameof(SpawnPlayer), 0.1f); return; } } var point = spawnSystem.GetSpawnPoint(netId); transform.position = point.position; transform.rotation = point.rotation; if (transform.position != point.position) { Invoke(nameof(SpawnPlayer), 0.1f); return; } var playerInstance = Instantiate(playerPrefab, transform.position, transform.rotation); NetworkServer.Spawn(playerInstance, connectionToClient); }
void Start() { if (healthTotal == 0) { Debug.LogError("Health total = null"); } healthCurrent = healthTotal; spawn = FindObjectOfType <PlayerSpawnSystem>(); }
public void ResetPlayers() { foreach (var team in teams) { foreach (var player in team.Value) { player.FootballPlayer.RpcSetPlayerLocation(PlayerSpawnSystem.GetRandomSpawnLocation(player.GamePlayer.Team)); } } }
private void Awake() { if (Singleton != null && Singleton != this) { Destroy(this.gameObject); } else { Singleton = this; } }
public override void OnStartServer() { base.OnStartServer(); teams = new Dictionary <Team, List <PlayerContainer> > { { Team.Red, new List <PlayerContainer>() }, { Team.Blue, new List <PlayerContainer>() } }; spawnSystem = FindObjectOfType <PlayerSpawnSystem>(); }
void Awake() { //Enfore singleton if (singleton != null) { Destroy(gameObject); return; } //Initialize singleton singleton = this; //Initialize systems scoreSystem = GetComponent <ScoreSystem>(); waveSystem = GetComponent <WaveSystem>(); playerSpawnSystem = GetComponent <PlayerSpawnSystem>(); spectatorSystem = GetComponent <SpectatorSystem>(); IsReady = true; }
public override void ServerChangeScene(string newSceneName) { previousSceneName = SceneManager.GetActiveScene().name; if (newSceneName.StartsWith("Map")) { PlayerSpawnSystem.ClearSpawnPoints(); if (previousSceneName == "Menu") { for (int i = RoomPlayers.Count - 1; i >= 0; i--) { var conn = RoomPlayers[i].connectionToClient; var gameplayerInstance = Instantiate(gamePlayerPrefab); gameplayerInstance.SetDisplayName(RoomPlayers[i].DisplayName); gameplayerInstance.SetTeam(RoomPlayers[i].Team); NetworkServer.Destroy(conn.identity.gameObject); NetworkServer.ReplacePlayerForConnection(conn, gameplayerInstance.gameObject); } } } if (newSceneName == "GameEnd" && previousSceneName.StartsWith("Map")) { NetworkServer.Destroy(playerSpawnSystemInstance); playerSpawnSystemInstance = null; NetworkServer.Destroy(publicUIInstance); publicUIInstance = null; } if (newSceneName == "Menu" && roundSystemInstance != null) { NetworkServer.Destroy(roundSystemInstance); roundSystemInstance = null; roundSystemInstance2 = null; } base.ServerChangeScene(newSceneName); }
private void Awake() { PlayerSpawnSystem.AddSpawnPoint(transform); }
private void OnDestroy() { PlayerSpawnSystem.RemoveSpawnPoint(transform); }
private void OnDestroy() { //removes spawnpoint from spawn system PlayerSpawnSystem.RemoveSpawnPoint(transform); }
private void Awake() { //adds spawnpoint to spawn system PlayerSpawnSystem.AddSpawnPoint(transform); }
private void Awake() { PlayerSpawnSystem.AddSpawnPoint(transform); //add to the list }
private void Awake() => PlayerSpawnSystem.AddSpawnPoint(transform, team);