Пример #1
0
 /// <summary>
 /// Constructeur, initialise la classe Partie
 /// </summary>
 /// <param name="style">le style qui correspond à cette classe</param>
 public Partie(String style)
 {
     gm         = new GestionMusique();
     this.style = style;
     gm.setStyle(style);
     gm.chercheChansons();
     gm.setNbChoixMax(6);
 }
Пример #2
0
        /// <summary>
        /// Crée un thread d'écoute de client
        /// Récupére les identifiants du serveur
        /// Crée une partie par style de musique
        /// </summary>
        public void serverStart()
        {
            this.listen = new TcpListener(IPAddress.Any, 25000);
            Console.WriteLine("Serveur connecté");
            this.listenThread = new Thread(new ThreadStart(ListenForClients));
            this.listenThread.Start();
            //On crée une partie par style de musique
            this.gm = new GestionMusique();
            List <String> styles = gm.choixStyle();

            foreach (String style in styles)
            {
                listePartie.Add(new Partie(style));
            }
        }
Пример #3
0
 /// <summary>
 /// Toutes les requêtes reçues par le serveur sont traitées ici
 /// On les parse en fonction de la norme choisie
 /// </summary>
 /// <param name="message">Requête reçu</param>
 private void traite(String message)
 {
     Console.WriteLine("Recoit : " + message);
     String[] tabMessage = message.Split('?');
     if (tabMessage[0].Equals(""))
     {
         send(Requete.erreur("Message mal forme"), joueur.getStream());
     }
     else
     {
         if (tabMessage[0].Equals("CHANSON"))
         {
             traiteChanson(tabMessage);
         }
         else if (tabMessage[0].Equals("INFO"))
         {
             traiteInfo(tabMessage);
         }
         else if (tabMessage[0].Equals("CHOIXSTYLE"))
         {
             GestionMusique gm         = serv.getGM();
             List <String>  listeStyle = gm.choixStyle();
             if (listeStyle == null)
             {
                 send(Requete.erreur("Pas de style de musique defini"), joueur.getStream());
             }
             else
             {
                 send(Requete.choixStyle(listeStyle), joueur.getStream());
             }
         }
         else if (tabMessage[0].Equals("DECONNEXION"))
         {
             Console.WriteLine("Le joueur " + joueur.getName() + " est retiré du serveur");
             if (partie != null) //Si le joueur n'a pas encore été ajouté à une partie
             {
                 partie.removeJoueur(joueur);
             }
         }
         else if (tabMessage[0].Equals("BESTSCORE"))
         {
             //Si on a mis un style en paramètre
             send(Requete.bestScores(serv), joueur.getStream());
         }
     }
 }