diff --git a/Sources/CoreLibrary/Joueurs/Joueur.cs b/Sources/CoreLibrary/Joueurs/Joueur.cs
index 2956f4d..a7f0979 100644
--- a/Sources/CoreLibrary/Joueurs/Joueur.cs
+++ b/Sources/CoreLibrary/Joueurs/Joueur.cs
@@ -7,30 +7,59 @@ using System.Runtime.Serialization;
namespace CoreLibrary.Joueurs
{
+ ///
+ /// Classe représentant un joueur.
+ ///
[DataContract]
[KnownType(typeof(ReglesClassiques))]
public class Joueur : IEstPersistant
{
+ ///
+ /// Événement déclenché lorsque le joueur se connecte.
+ ///
public event EventHandler? JoueurSeConnecter;
private void QuandJoueurSeConnecter() => JoueurSeConnecter?.Invoke(this, new JoueurSeConnecterEventArgs(Nom));
+ ///
+ /// Dictionnaire des statistiques du joueur avec les règles et les statistiques.
+ ///
[DataMember]
private Dictionary<(IRegles, Statistique), int> statistiques = new Dictionary<(IRegles, Statistique), int>();
+ ///
+ /// Obtient le nom du joueur.
+ ///
[DataMember]
public string Nom { get; private set; } = "";
+
+ ///
+ /// Indique si le joueur est connecté.
+ ///
public bool EstConnecte { get; private set; } = false;
+ ///
+ /// Constructeur de joueur.
+ ///
public Joueur()
{
}
+ ///
+ /// Constructeur de joueur avec le nom spécifié.
+ ///
+ /// Le nom du joueur.
public Joueur(string nom)
{
Nom = nom;
}
+ ///
+ /// Connecte le joueur actuel avec les informations d'un autre joueur.
+ ///
+ /// Le joueur à partir duquel copier les informations.
+ /// Renvoie le joueur actuel connecté.
+ /// Lancée si le joueur est déjà connecté.
public Joueur SeConnecter(Joueur joueur)
{
if (EstConnecte)
@@ -45,11 +74,26 @@ namespace CoreLibrary.Joueurs
return this;
}
+ ///
+ /// Retourne une représentation sous forme de chaîne de caractères.
+ ///
+ /// Renvoie une chaîne de caractères du nom du joueur.
public override string ToString() => Nom;
+ ///
+ /// Obtient la valeur de la statistique spécifiée pour les règles données.
+ ///
+ /// Les règles du jeu.
+ /// Le type de statistique.
+ /// Renvoie la valeur de la statistique.
public int Statistique(IRegles regles, Statistique statistique) =>
statistiques.GetValueOrDefault((regles, statistique), 0);
+ ///
+ /// Incrémente la valeur de la statistique spécifiée pour les règles données.
+ ///
+ /// Les règles du jeu.
+ /// Le type de statistique.
public void IncrementerStatistique(IRegles regles, Statistique statistique) =>
statistiques[(regles, statistique)] = Statistique(regles, statistique) + 1;
}