using CoreLibrary.Core; using CoreLibrary.Joueurs; namespace CoreLibrary.Regles { /// /// Interface définissant les règles du jeu. /// public interface IRegles { /// /// Le nom des règles du jeu. /// string Nom { get; } /// /// Le nombre de maximum de tours. /// int TourMaximum { get; } /// /// La taille maximal du code. /// int TailleCodeMaximum { get; } /// /// Le nombre de joueurs actuels. /// int NbJoueurs { get; } /// /// Le nombre maximum de joueurs. /// int NbJoueursMaximum { get; } /// /// Ajoute un joueur à partir de son nom. /// /// Nom du joueur à ajouter. /// Le joueur ajouté. Joueur AjouterJoueur(string nom); /// /// Récupère le joueur courant. /// /// Le joueur courant. (Joueur, Plateau) JoueurCourant(); /// /// Passe la main au joueur suivant. /// void PasserLaMain(); /// /// Génère un code selon les règles du jeu. /// /// Le code généré. Code GenererCode(); /// /// Démarre la partie. /// void CommencerLaPartie(); /// /// Vérifie si la partie est terminée. /// /// True si la partie est terminée, sinon False. bool EstTerminee(); /// /// Récupère les joueurs gagnants. /// /// Les joueurs gagnants. IEnumerable Gagnants(); /// /// Récupère les joueurs perdants. /// /// Les joueurs perdants. IEnumerable Perdants(); } }