PlayerIdentity
public class PlayerMovement : PlayerIdentity<PlayerMovement>
{
public void Teleport(Vector3 destination) {
//Do whatever to teleport here
}
}
public class GameManager : NetworkIdentity
{
[SerializeField] private Transform teleportDestination;
public void TeleportPlayer(PlayerID targetPlayer)
{
//Returns true if it finds the player
if(!PlayerMovement.TryGetPlayer(targetPlayer, out var player)
return;
player.Teleport(teleportDestination.position);
}
public void TeleportLocalPlayer()
{
//Returns true if it finds the local player
if(!PlayerMovement.TryGetLocal(out var player)
return;
player.Teleport(teleportDestination.position);
}
public void TeleportAllPlayers()
{
//allPlayers gives you a dictionary of all the players registered
foreach(var player in PlayerMovement.allPlayers) {
player.value.Teleport(teleportDestination.position);
}
}
}Last updated