Skip to main content

Class CharacterSpawner

Spawns a player as soon as the connection is authenticated

Inheritance
System.Object
Syntax
public class CharacterSpawner : MonoBehaviour

Fields

Client

Declaration
public NetworkClient Client

Server

Declaration
public NetworkServer Server

SceneManager

Declaration
public NetworkSceneManager SceneManager

ClientObjectManager

Declaration
public ClientObjectManager ClientObjectManager

ServerObjectManager

Declaration
public ServerObjectManager ServerObjectManager

PlayerPrefab

Declaration
public NetworkIdentity PlayerPrefab

AutoSpawn

Declaration
public bool AutoSpawn

SetName

Declaration
public bool SetName

startPositionIndex

Declaration
public int startPositionIndex

startPositions

List of transforms where players can be spawned

Declaration
public List<Transform> startPositions

playerSpawnMethod

The current method of spawning players used by the CharacterSpawner.

Declaration
public CharacterSpawner.PlayerSpawnMethod playerSpawnMethod

Methods

Awake()

Declaration
protected virtual void Awake()

OnDestroy()

Declaration
protected virtual void OnDestroy()

OnClientFinishedSceneChange(Scene, SceneOperation)

Called on the client when a normal scene change happens. The default implementation of this function sets the client as ready and adds a player. Override the function to dictate what happens when the client connects.

Declaration
public virtual void OnClientFinishedSceneChange(Scene scene, SceneOperation sceneOperation)
Parameters
TypeNameDescription
Scenescene
Mirage.SceneOperationsceneOperationThe type of scene load that happened.

RequestServerSpawnPlayer()

Declaration
public virtual void RequestServerSpawnPlayer()

OnServerAddPlayer(INetworkPlayer)

Called on the server when a client adds a new player with ClientScene.AddPlayer. The default implementation for this function creates a new player object from the playerPrefab.

Declaration
public virtual void OnServerAddPlayer(INetworkPlayer player)
Parameters
TypeNameDescription
Mirage.INetworkPlayerplayerConnection from client.

SetCharacterName(INetworkPlayer, NetworkIdentity)

Declaration
protected virtual void SetCharacterName(INetworkPlayer player, NetworkIdentity character)
Parameters
TypeNameDescription
Mirage.INetworkPlayerplayer
Mirage.NetworkIdentitycharacter

GetStartPosition()

This finds a spawn position based on start position objects in the scene. This is used by the default implementation of OnServerAddPlayer.

Declaration
public virtual Transform GetStartPosition()
Returns
TypeDescription
TransformReturns the transform to spawn a player at, or null.