static bool EstVictoireVilain(Carte carte) => carte.Trouver(Carte.SYMBOLE_DÉCÈS).Count != 0;
static async Task <État> AppliquerChoix(Carte carte, Task <(Protagoniste qui, Choix quoi)> choix)
static void Afficher(Carte carte) { carte.Afficher(); }
static bool EstVictoireHéros(Carte carte) => carte.Trouver(Carte.SYMBOLE_BONHEUR).Count != 0;
static void AfficherMenu(Carte carte) { Console.WriteLine($"Carte de format {carte.Hauteur} x {carte.Largeur}"); Console.WriteLine($"Entrez {(char)Choix.Quitter} pour quitter"); }
public override Choix Agir(Carte carte) { AfficherMenu(carte); return(LireChoix()); }
public virtual async Task <(Protagoniste, Choix)> Agir(Carte carte, CancellationToken jeton) { return(this, Choix.Rien); }
public abstract Choix Agir(Carte carte);
static État AppliquerChoix(Carte carte, List <(Protagoniste qui, Choix quoi)> choix)