diff --git a/Sources/CoreLibrary/Joueurs/Joueur.cs b/Sources/CoreLibrary/Joueurs/Joueur.cs index ed27989..3dc5fc2 100644 --- a/Sources/CoreLibrary/Joueurs/Joueur.cs +++ b/Sources/CoreLibrary/Joueurs/Joueur.cs @@ -9,6 +9,7 @@ namespace CoreLibrary.Joueurs { [DataContract] [KnownType(typeof(ReglesClassiques))] + [KnownType(typeof(ReglesDifficiles))] public class Joueur : IEstPersistant { public event EventHandler? JoueurSeConnecter; diff --git a/Sources/CoreLibrary/Partie.cs b/Sources/CoreLibrary/Partie.cs index f793400..7f727dc 100644 --- a/Sources/CoreLibrary/Partie.cs +++ b/Sources/CoreLibrary/Partie.cs @@ -9,6 +9,7 @@ namespace CoreLibrary { [DataContract] [KnownType(typeof(ReglesClassiques))] + [KnownType(typeof(ReglesDifficiles))] public class Partie : IEstPersistant { public event EventHandler? PartieDemanderJoueur; diff --git a/Sources/CoreLibrary/Regles/ReglesDifficiles.cs b/Sources/CoreLibrary/Regles/ReglesDifficiles.cs new file mode 100644 index 0000000..9c6bfde --- /dev/null +++ b/Sources/CoreLibrary/Regles/ReglesDifficiles.cs @@ -0,0 +1,24 @@ +using System.Runtime.Serialization; + +namespace CoreLibrary.Regles +{ + [DataContract] + public class ReglesDifficiles : IRegles + { + public string Nom => "Règles difficile"; + public int NbJoueurs => 2; + public int NbTour => 12; + public int TailleCode => 6; + + public override bool Equals(object? obj) + { + if (obj == null || obj is not ReglesDifficiles) return false; + return true; + } + + public override int GetHashCode() + { + return HashCode.Combine(Nom, NbJoueurs, NbTour, TailleCode); + } + } +} diff --git a/Sources/Fichiers/joueurs.json b/Sources/Fichiers/joueurs.json deleted file mode 100644 index 1a549ec..0000000 --- a/Sources/Fichiers/joueurs.json +++ /dev/null @@ -1,46 +0,0 @@ -[ - { - "Nom": "Céleste", - "statistiques": [ - { - "Key": { - "Item1": { - "__type": "ReglesClassiques:#CoreLibrary.Regles" - }, - "Item2": 3 - }, - "Value": 2 - } - ] - }, - { - "Nom": "Pauline", - "statistiques": [ - { - "Key": { - "Item1": { - "__type": "ReglesClassiques:#CoreLibrary.Regles" - }, - "Item2": 3 - }, - "Value": 2 - } - ] - }, - { - "Nom": "a", - "statistiques": [ ] - }, - { - "Nom": "b", - "statistiques": [ ] - }, - { - "Nom": "e", - "statistiques": [ ] - }, - { - "Nom": "f", - "statistiques": [ ] - } -] \ No newline at end of file diff --git a/Sources/Fichiers/parties.json b/Sources/Fichiers/parties.json deleted file mode 100644 index 780cb44..0000000 --- a/Sources/Fichiers/parties.json +++ /dev/null @@ -1,282 +0,0 @@ -[ - { - "Regles": { - "__type": "ReglesClassiques:#CoreLibrary.Regles" - }, - "Termine": false, - "Tour": 3, - "courant": 0, - "joueurs": [ - "Céleste", - "Pauline" - ], - "plateaux": [ - { - "TailleMax": 12, - "TailleMaxCode": 4, - "Victoire": false, - "codeSecret": { - "Jetons": [ - { - "Couleur": 2 - }, - { - "Couleur": 3 - }, - { - "Couleur": 5 - }, - { - "Couleur": 0 - } - ], - "TailleMax": 4 - }, - "codes": [ - { - "Jetons": [ - { - "Couleur": 0 - }, - { - "Couleur": 0 - }, - { - "Couleur": 0 - }, - { - "Couleur": 0 - } - ], - "TailleMax": 4 - }, - { - "Jetons": [ - { - "Couleur": 0 - }, - { - "Couleur": 0 - }, - { - "Couleur": 0 - }, - { - "Couleur": 0 - } - ], - "TailleMax": 4 - } - ], - "indicateurs": [ - [ - 0 - ], - [ - 0 - ] - ] - }, - { - "TailleMax": 12, - "TailleMaxCode": 4, - "Victoire": false, - "codeSecret": { - "Jetons": [ - { - "Couleur": 0 - }, - { - "Couleur": 1 - }, - { - "Couleur": 2 - }, - { - "Couleur": 4 - } - ], - "TailleMax": 4 - }, - "codes": [ - { - "Jetons": [ - { - "Couleur": 2 - }, - { - "Couleur": 2 - }, - { - "Couleur": 2 - }, - { - "Couleur": 2 - } - ], - "TailleMax": 4 - }, - { - "Jetons": [ - { - "Couleur": 1 - }, - { - "Couleur": 1 - }, - { - "Couleur": 1 - }, - { - "Couleur": 1 - } - ], - "TailleMax": 4 - } - ], - "indicateurs": [ - [ - 0 - ], - [ - 0 - ] - ] - } - ] - }, - { - "Regles": { - "__type": "ReglesClassiques:#CoreLibrary.Regles" - }, - "Termine": false, - "Tour": 0, - "courant": 0, - "joueurs": [ ], - "plateaux": [ ] - }, - { - "Regles": { - "__type": "ReglesClassiques:#CoreLibrary.Regles" - }, - "Termine": false, - "Tour": 1, - "courant": 0, - "joueurs": [ - "a", - "b" - ], - "plateaux": [ - { - "TailleMax": 12, - "TailleMaxCode": 4, - "Victoire": false, - "codeSecret": { - "Jetons": [ - { - "Couleur": 0 - }, - { - "Couleur": 4 - }, - { - "Couleur": 4 - }, - { - "Couleur": 5 - } - ], - "TailleMax": 4 - }, - "codes": [ ], - "indicateurs": [ ] - }, - { - "TailleMax": 12, - "TailleMaxCode": 4, - "Victoire": false, - "codeSecret": { - "Jetons": [ - { - "Couleur": 0 - }, - { - "Couleur": 4 - }, - { - "Couleur": 0 - }, - { - "Couleur": 4 - } - ], - "TailleMax": 4 - }, - "codes": [ ], - "indicateurs": [ ] - } - ] - }, - { - "Regles": { - "__type": "ReglesClassiques:#CoreLibrary.Regles" - }, - "Termine": false, - "Tour": 1, - "courant": 0, - "joueurs": [ - "e", - "f" - ], - "plateaux": [ - { - "TailleMax": 12, - "TailleMaxCode": 4, - "Victoire": false, - "codeSecret": { - "Jetons": [ - { - "Couleur": 0 - }, - { - "Couleur": 3 - }, - { - "Couleur": 0 - }, - { - "Couleur": 2 - } - ], - "TailleMax": 4 - }, - "codes": [ ], - "indicateurs": [ ] - }, - { - "TailleMax": 12, - "TailleMaxCode": 4, - "Victoire": false, - "codeSecret": { - "Jetons": [ - { - "Couleur": 0 - }, - { - "Couleur": 0 - }, - { - "Couleur": 2 - }, - { - "Couleur": 3 - } - ], - "TailleMax": 4 - }, - "codes": [ ], - "indicateurs": [ ] - } - ] - } -] \ No newline at end of file diff --git a/Sources/MauiSpark/Pages/ClassementPage.xaml b/Sources/MauiSpark/Pages/ClassementPage.xaml index 34defd9..f025c92 100644 --- a/Sources/MauiSpark/Pages/ClassementPage.xaml +++ b/Sources/MauiSpark/Pages/ClassementPage.xaml @@ -14,8 +14,9 @@ - +