}
}
private void spawnPlayer(EntityRef clientEntity, Vector3i initialSpawnPosition) {
Vector3i spawnPos = getSafeSpawnPosition(initialSpawnPosition);
ClientComponent client = clientEntity.getComponent(ClientComponent.class);
if (client != null) {
PlayerFactory playerFactory = new PlayerFactory(entityManager);
EntityRef playerCharacter = playerFactory.newInstance(new Vector3f(spawnPos.x, spawnPos.y + 1.5f, spawnPos.z), clientEntity);
Location.attachChild(playerCharacter, clientEntity, new Vector3f(), new Quat4f(0, 0, 0, 1));
Client clientListener = networkSystem.getOwner(clientEntity);
Vector3i distance = clientListener.getViewDistance().getChunkDistance();
updateRelevanceEntity(clientEntity, distance);
client.character = playerCharacter;
clientEntity.saveComponent(client);
playerCharacter.send(new OnPlayerSpawnedEvent());
}