tentative de correction d'une methode trop complexe cognitivement - DessinerPlateau
continuous-integration/drone/push Build is passing Details

master
Céleste BARBOSA 12 months ago
parent df2fab0c34
commit e310163730

@ -59,6 +59,14 @@ namespace ConsoleApp
Console.Write(" "); Console.Write(" ");
} }
private static void DessinerLigne(Enum[] ligne)
{
foreach(Enum pion in ligne)
DessinerPion(pion);
Console.Write("".PadLeft((4 - ligne.Length) * 3));
}
public static void DessinerPlateau(IEnumerable<IEnumerable<Jeton?>> grille, IEnumerable<IEnumerable<Indicateur>> indicateurs) public static void DessinerPlateau(IEnumerable<IEnumerable<Jeton?>> grille, IEnumerable<IEnumerable<Indicateur>> indicateurs)
{ {
IEnumerable<Jeton?>[] grilleTableau = grille.ToArray(); IEnumerable<Jeton?>[] grilleTableau = grille.ToArray();
@ -72,44 +80,26 @@ namespace ConsoleApp
{ {
Console.Write("│ "); Console.Write("│ ");
Jeton?[] ligneGrille = grilleTableau[i].ToArray(); DessinerLigne(
grilleTableau[i]
for (int j = 0; j < ligneGrille.Length; ++j) .Where(jeton => jeton.HasValue)
{ .Select(jeton => (Enum)jeton!.Value.Couleur)
Jeton? jeton = ligneGrille[j]; .ToArray()
);
if (jeton.HasValue)
{
DessinerPion(jeton.Value.Couleur);
}
else
{
Console.Write(" ");
}
}
Console.Write(" │ │ "); Console.Write(" │ │ ");
if (indicateursTableau[i] != null) if (indicateursTableau[i] == null)
{ {
Indicateur[] ligneIndicateurs = indicateursTableau[i].ToArray(); indicateursTableau[i] = [];
for (int j = 0; j < ligneIndicateurs.Length; ++j)
{
DessinerPion(ligneIndicateurs[j]);
}
if (ligneIndicateurs.Length < 4)
{
Console.Write("".PadLeft((4 - ligneIndicateurs.Length) * 3));
}
}
else
{
Console.Write(" ");
} }
DessinerLigne(
indicateursTableau[i]
.Select(indicateur => (Enum)indicateur)
.ToArray()
);
Console.WriteLine(" │"); Console.WriteLine(" │");
} }

Loading…
Cancel
Save