From ef3face08f1b3bad890dccebb11bc6ef09acb22a Mon Sep 17 00:00:00 2001 From: "pauline.prady" Date: Thu, 30 May 2024 22:44:46 +0200 Subject: [PATCH] =?UTF-8?q?D=C3=A9corateurs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sources/CoreLibrary/Core/Code.cs | 5 +++++ Sources/CoreLibrary/Core/Indicateur.cs | 5 ++++- Sources/CoreLibrary/Core/Jeton.cs | 6 +++++- Sources/CoreLibrary/Core/Plateau.cs | 8 ++++++++ Sources/CoreLibrary/Partie.cs | 5 ++++- 5 files changed, 26 insertions(+), 3 deletions(-) diff --git a/Sources/CoreLibrary/Core/Code.cs b/Sources/CoreLibrary/Core/Code.cs index 3567998..4cf8e91 100644 --- a/Sources/CoreLibrary/Core/Code.cs +++ b/Sources/CoreLibrary/Core/Code.cs @@ -1,11 +1,13 @@ using CoreLibrary.Exceptions; using System.Collections.ObjectModel; +using System.Runtime.Serialization; namespace CoreLibrary.Core { /// /// Classe représentant un code composé de jetons et ses différentes méthodes. /// + [DataContract] public class Code { private readonly ObservableCollection lesJetons = new ObservableCollection(); @@ -13,13 +15,16 @@ namespace CoreLibrary.Core /// /// Le nombre maximum de jetons dans le code. /// + [DataMember] public int NbJetonsMax { get; private set; } /// /// Le nombre de jetons dans le code. /// + [DataMember] public int NbJetons { get => lesJetons.Count; } + [DataMember] public ObservableCollection Jetons => lesJetons; /// diff --git a/Sources/CoreLibrary/Core/Indicateur.cs b/Sources/CoreLibrary/Core/Indicateur.cs index 89180d8..c4284d5 100644 --- a/Sources/CoreLibrary/Core/Indicateur.cs +++ b/Sources/CoreLibrary/Core/Indicateur.cs @@ -1,8 +1,11 @@ -namespace CoreLibrary.Core +using System.Runtime.Serialization; + +namespace CoreLibrary.Core { /// /// Enumération des indicateurs disponibles pour les jetons. /// + [DataContract] public enum Indicateur { BONNEPLACE, diff --git a/Sources/CoreLibrary/Core/Jeton.cs b/Sources/CoreLibrary/Core/Jeton.cs index 1996ce5..4451cdc 100644 --- a/Sources/CoreLibrary/Core/Jeton.cs +++ b/Sources/CoreLibrary/Core/Jeton.cs @@ -1,13 +1,17 @@ -namespace CoreLibrary.Core +using System.Runtime.Serialization; + +namespace CoreLibrary.Core { /// /// Structure représentant un jeton de couleur /// + [DataContract] public struct Jeton { /// /// La couleur du jeton. /// + [DataMember] public readonly Couleur Couleur { get; private init; } /// diff --git a/Sources/CoreLibrary/Core/Plateau.cs b/Sources/CoreLibrary/Core/Plateau.cs index c3d1f3e..6d560b5 100644 --- a/Sources/CoreLibrary/Core/Plateau.cs +++ b/Sources/CoreLibrary/Core/Plateau.cs @@ -1,4 +1,5 @@ using CoreLibrary.Exceptions; +using System.Runtime.Serialization; using System.Security.Cryptography; namespace CoreLibrary.Core @@ -6,22 +7,29 @@ namespace CoreLibrary.Core /// /// Classe représentant un plateau de jeu composé de codes et leurs indicateurs ainsi que les méthodes associées. /// + [DataContract] public class Plateau { + [DataMember] private readonly Code codeSecret; + [DataMember] private readonly Code?[] grille; + [DataMember] private readonly IEnumerable[] indicateurs; + [DataMember] private readonly int tailleCode; /// /// Le numéro de tour actuel. /// + [DataMember] public int Tour { get; private set; } = 1; /// /// La victoire du joueur, True si le joueur a gagné sinon False /// + [DataMember] public bool Victoire { get; private set; } = false; /// diff --git a/Sources/CoreLibrary/Partie.cs b/Sources/CoreLibrary/Partie.cs index aaab371..a692fe3 100644 --- a/Sources/CoreLibrary/Partie.cs +++ b/Sources/CoreLibrary/Partie.cs @@ -15,12 +15,15 @@ namespace CoreLibrary [DataMember] public IRegles Regles { get; private set; } + [DataMember] private readonly List joueurs = new List(); + [DataMember] private readonly List plateaux = new List(); + [DataMember] private int? courant; /// - /// Événement déclenché lorsqu'il est nécessaire de d'ajouter un joueur. + /// Événement déclenché lorsqu'il est nécessaire d'ajouter un joueur. /// public event EventHandler? DemanderNom;