diff --git a/code/server/Server/PongServer.cs b/code/server/Server/PongServer.cs index 2b8cbc8..316a151 100644 --- a/code/server/Server/PongServer.cs +++ b/code/server/Server/PongServer.cs @@ -84,7 +84,7 @@ public class PongServer UdpClient clientSocket = new UdpClient(clientEndPoint); room.playerHost = new KeyValuePair(data.Data,clientSocket); - room.nbPlayer++; + room.NbPlayer++; @@ -94,9 +94,9 @@ public class PongServer room.Port = nextPort; nextPort++; - - // Send connection message to client + + // Send port message to client byte[] connectionData = Encoding.ASCII.GetBytes(nextPort.ToString()); serverSocket.Send(connectionData, connectionData.Length, remoteEndPoint); @@ -114,14 +114,17 @@ public class PongServer UdpClient clientSocket = new UdpClient(clientEndPoint); room.playerJoin = new KeyValuePair(data.Data, clientSocket); - room.nbPlayer++; + room.NbPlayer++; - room.PropertyChanged += room.OnReadyChanged; + Console.WriteLine("New connection Client from " + remoteEndPoint.ToString()); - room.Port = nextPort; - nextPort++; + // Send port message to client + byte[] connectionData = Encoding.ASCII.GetBytes(nextPort.ToString()); + serverSocket.Send(connectionData, connectionData.Length, remoteEndPoint); + + room.PropertyChanged += room.OnReadyChanged; } diff --git a/code/server/Server/Room.cs b/code/server/Server/Room.cs index d26de3e..0252adf 100644 --- a/code/server/Server/Room.cs +++ b/code/server/Server/Room.cs @@ -31,20 +31,22 @@ namespace Server public int Port { get; set; } - public int nbPlayer = 0; - - public bool maxPlayer + public int NbPlayer { - get { return nbPlayer >= 2; } + get + { + return nbPlayer; + } set { - if (nbPlayer >= 2) + nbPlayer = value; + if (value >= 2) { - maxPlayer = true; - NotifyPropertyChanged("Ready"); + NotifyPropertyChanged("nbPlayer"); } } } + private int nbPlayer; protected void NotifyPropertyChanged(string propertyName) @@ -62,10 +64,6 @@ namespace Server { byte[] receivedData = clientSocket1.Receive(ref remoteEndPoint); - string receivedMessage = Encoding.ASCII.GetString(receivedData); - Console.WriteLine("Received from " + remoteEndPoint.ToString() + ": " + receivedMessage); - - clientSocket2.Send(receivedData, receivedData.Length, remoteEndPoint); } @@ -75,12 +73,13 @@ namespace Server { Room nbPlayer = sender as Room; - bool maxPlayer = nbPlayer.maxPlayer; + int maxPlayer = nbPlayer.nbPlayer; + + //IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Any, Port); + //UdpClient serverSocket = new UdpClient(serverEndPoint); - IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Any, Port); - UdpClient serverSocket = new UdpClient(serverEndPoint); - if (maxPlayer) + if (maxPlayer == 2) { Thread receiveThread1 = new Thread(() => ReceiveMessages(playerHost.Value, playerJoin.Value));