private List<LidgrenIdentifiedPlayer> AddNewPlayersOnServer()
{
var newPlayers = new List<LidgrenIdentifiedPlayer>();
int numberOfPlayers = _incomingMessage.ReadVariableInt32();
for (int i = 0; i < numberOfPlayers; i++)
{
// we retrieve the player sent by the client
var player = new LidgrenIdentifiedPlayer(_incomingMessage.ReadString())
{
DisplayName = _incomingMessage.ReadString(),
};
_remotePlayerIpEndPoints.Add(player, _incomingMessage.SenderEndPoint);
// we test if the provided player is local
var localPlayer = LidgrenSessionManager.LocalPlayers.Values.FirstOrDefault(p => p == player);
if (localPlayer != null)
{
_allPlayers.Add(localPlayer);
}
else
{
_allPlayers.Add(player);
newPlayers.Add(player);
}
}
LidgrenSessionManager.Server.Connections.Add(new NetConnection(new NetPeer(new NetPeerConfiguration("scrap")), _incomingMessage.SenderEndPoint));
return newPlayers;
}