//Upon server startup, open TCP and UDP sockets and begin accepting clients to connect. public static void Start(int _maxPlayers, int _port) { MaxPlayers = _maxPlayers; Port = _port; Console.WriteLine("Starting server..."); InitalizeServerData(); //Open tcp listeners to allow incoming communication. tcpListener = new TcpListener(IPAddress.Any, Port); tcpListener.Start(); tcpListener.BeginAcceptTcpClient(new AsyncCallback(TCPConnectCallback), null); //Open a udp client for incoming communication. udpListener = new UdpClient(Port); udpListener.BeginReceive(UDPReceiveCallback, null); Console.WriteLine($"Server started on {Port}."); CardFactory.GetInstance(); }