internal PlayerConnection PlayerConnected(Guid playerId, OutputChanel outputChanel) { lock (Locker) { foreach (var connection in PlayerConnections.Where(x => x.PlayerId == playerId).ToArray()) { RemoveConnection(connection); } var newConnection = new PlayerConnection(playerId, outputChanel); PlayerConnections.Add(newConnection); DisploseAndRemoveTimer(playerId); return(newConnection); } }
public PlayerConnection(Guid playerId, OutputChanel outputChanel) { ConnectionId = Guid.NewGuid(); OutputChanel = outputChanel; PlayerId = playerId; }