using CoreLibrary.Events; using CoreLibrary.Joueurs; using CoreLibrary.Persistance; namespace CoreLibrary.Manager { public class Manageur { public List joueurs; public List parties; private IPersistance persistance; public Manageur(IPersistance persistance) { this.persistance = persistance; joueurs = persistance.Charger().ToList(); parties = persistance.Charger().ToList(); } public void NouvellePartie(Partie partie) { parties.Add(partie); partie.PasserMain += (object? sender, PasserMainEventArgs e) => { persistance.Enregistrer(parties.ToArray()); persistance.Enregistrer(joueurs.ToArray()); }; partie.PartieTerminee += (object? sender, PartieTermineeEventArgs e) => { persistance.Enregistrer(parties.ToArray()); persistance.Enregistrer(joueurs.ToArray()); }; } public Joueur DemanderJoueur(string nom) { foreach (Joueur joueur in joueurs) { if (joueur.Nom == nom) return joueur; } Joueur nouveauJoueur = new Joueur(nom); joueurs.Add(nouveauJoueur); return nouveauJoueur; } } }