using CoreLibrary;
using CoreLibrary.Regles;
using MauiSpark.Pages;
namespace MauiSpark.Vues;
///
/// Vue permettant de sélectionner un mode de jeu.
///
public partial class ModeVue : ContentView
{
///
/// Propriété de dépendance pour les règles du jeu.
///
public static readonly BindableProperty ReglesProperty = BindableProperty.Create(nameof(Regles), typeof(IRegles), typeof(ModeVue), null);
///
/// Les règles du jeu sélectionnées.
///
public IRegles Regles
{
get => (IRegles)GetValue(ReglesProperty);
set => SetValue(ReglesProperty, value);
}
///
/// Constructeur par défaut de la vue du mode de jeu.
///
public ModeVue()
{
InitializeComponent();
}
///
/// Méthode déclenchée lorsque le bouton de sélection des règles est pressé.
///
/// L'objet qui a déclenché l'événement ; ici, le bouton de sélection des règles.
/// Les arguments de l'événement EventArgs.
private void QuandReglesPresse(Object sender, EventArgs e)
{
Partie partie = MauiProgram.Manageur.NouvellePartie(Regles);
partie.PartieDemanderJoueur += new ConnexionPage().QuandDemanderNom;
partie.PartiePartieTerminee += new VictoirePage().QuandPartieTerminee;
partie.PartieNouveauTour += new PlateauPage().QuandNouveauTour;
partie.Jouer();
}
}