From a20b02dc332ae680fdbe493725411dda26815905 Mon Sep 17 00:00:00 2001 From: Bruno Da Costa Cunha Date: Tue, 7 Mar 2023 10:47:03 +0100 Subject: [PATCH] Gestion du nombre de clients permits dans le server --- code/server/Server/Program.cs | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/code/server/Server/Program.cs b/code/server/Server/Program.cs index e77fe4a..d12d847 100644 --- a/code/server/Server/Program.cs +++ b/code/server/Server/Program.cs @@ -1,12 +1,14 @@ using System; using System.Net; using System.Net.Sockets; +using System.Collections.Generic; class Program { static int playerCount = 0; + static List clientAddresses = new List(); // Liste des adresses IP des clients connectés static void Main(string[] args) { Console.WriteLine("Welcome to LeapHit Multiplayer - Server"); @@ -26,13 +28,21 @@ class Program byte[] data = server.Receive(ref clientEndPoint); string dataReceived = System.Text.Encoding.ASCII.GetString(data); Console.WriteLine("Data received from client: " + dataReceived + " from " + clientEndPoint.ToString()); - - playerCount++; - if (playerCount == 2) + if (!clientAddresses.Contains(clientEndPoint)) // Vérification si l'adresse IP est déjà présente dans la liste { - Console.WriteLine("Deux joueurs connectés, le jeu va commencer..."); - // On va mettre le code du pour demarrer le match ici + clientAddresses.Add(clientEndPoint); // Ajout de l'adresse IP à la liste + playerCount++; + + if (playerCount == 2) + { + Console.WriteLine("Deux joueurs connectés, le jeu va commencer..."); + // On va mettre le code du pour demarrer le match ici + } + } + else + { + Console.WriteLine("Client with IP " + clientEndPoint.Address.ToString() + " has already sent a message and will not be counted."); } }