new drawing methods
This commit is contained in:
121
Program.cs
121
Program.cs
@ -375,6 +375,10 @@ namespace P4
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Classe Board contient les méthodes pour la création du tableau
|
||||
/// </summary>
|
||||
public class Board
|
||||
{
|
||||
private Program _program = new Program();
|
||||
@ -442,7 +446,50 @@ namespace P4
|
||||
/// Méthode DrawPlayGroundBorder qui dessine le terrain de jeu
|
||||
/// </summary>
|
||||
/// <param name="board">tableau de jetons</param>
|
||||
|
||||
public void DrawPlayGroundBorder(Token[,] board)
|
||||
{
|
||||
for (int y = 0; y < 3; y++)
|
||||
for (int x = 0; x < board.GetLength(0) * 4 + 1; x++)
|
||||
{
|
||||
// on met la position partout où l'on va écrire un caractère
|
||||
Console.SetCursorPosition(x + leftSpacing, y + topSpacing);
|
||||
|
||||
// case 0, 0
|
||||
if (x == 0 && y == 0)
|
||||
Console.Write('╔');
|
||||
|
||||
// case 0, 2
|
||||
if (x == 0 && y == 2)
|
||||
Console.Write('╚');
|
||||
|
||||
// toutes 4 case de la 2eme ligne
|
||||
if (x % 4 == 0 && y == 1)
|
||||
Console.Write('║');
|
||||
|
||||
// tout le reste
|
||||
if (x % 4 != 0 && y != 1)
|
||||
Console.Write('═');
|
||||
|
||||
// dernière case de la première rangée
|
||||
if (x == board.GetLength(0) * 4 && y == 0)
|
||||
Console.Write('╗');
|
||||
|
||||
// dernière case de la première rangée
|
||||
if (x == board.GetLength(0) * 4 && y == 2)
|
||||
Console.Write('╝');
|
||||
|
||||
// tous les case 4 case de la première ligne
|
||||
if (x != board.GetLength(0) * 4 && x % 4 == 0 && y == 0)
|
||||
Console.Write('╦');
|
||||
|
||||
// tous les case 4 case de la dernière ligne
|
||||
if (x != board.GetLength(0) * 4 && x % 4 == 0 && y == 2)
|
||||
Console.Write('╩');
|
||||
}
|
||||
}
|
||||
|
||||
/*public void DrawPlayGroundBorder(Token[,] board)
|
||||
{
|
||||
// on place le curseur en haut du terrain de jeu après le titre
|
||||
Console.SetCursorPosition(leftSpacing, topSpacing);
|
||||
@ -474,7 +521,7 @@ namespace P4
|
||||
Console.Write("╩═══");
|
||||
}
|
||||
Console.Write("╝");
|
||||
}
|
||||
}*/
|
||||
|
||||
/// <summary>
|
||||
/// Méthode DrawPlayGround qui dessine les jetons dans le terrain de jeu
|
||||
@ -500,6 +547,76 @@ namespace P4
|
||||
/// </summary>
|
||||
/// <param name="board">tableau de jetons</param>
|
||||
public void DrawBorder(Token[,] board)
|
||||
{
|
||||
for (int y = 0; y < board.GetLength(1) * 2 + 1; y++)
|
||||
for (int x = 0; x < board.GetLength(0) * 4 + 1; x++)
|
||||
{
|
||||
// on place le curseur
|
||||
Console.SetCursorPosition(x + leftSpacing, y + topSpacing + 3);
|
||||
|
||||
// la première case
|
||||
if (x == 0 && y == 0)
|
||||
Console.Write('╔');
|
||||
|
||||
// une case sur deux en y et une case sur quatre en y
|
||||
if (x % 4 == 0 && y % 2 == 1)
|
||||
Console.Write('║');
|
||||
|
||||
// toutes les case qui ne sont pas toutes les 4 case en x et toutes les 2 case en y
|
||||
if (x % 4 != 0 && y % 2 == 0)
|
||||
Console.Write('═');
|
||||
|
||||
// dans la première colonne toutes les deux cases
|
||||
if (x == 0 && y == board.GetLength(1) * 2)
|
||||
Console.Write('╚');
|
||||
|
||||
// la dernière case de la première ligne
|
||||
if (x == board.GetLength(0) * 4 && y == 0)
|
||||
Console.Write('╗');
|
||||
|
||||
// la dernière case de la dernière ligne
|
||||
if (x == board.GetLength(0) * 4 && y == board.GetLength(1) * 2)
|
||||
Console.Write('╝');
|
||||
|
||||
// toutes les 4 case de la première ligne sauf la première et la dernière
|
||||
if (x != 0 &&
|
||||
x != board.GetLength(0) * 4 &&
|
||||
x % 4 == 0 &&
|
||||
y == 0)
|
||||
Console.Write('╦');
|
||||
|
||||
// toutes les 4 case de la dernière ligne sauf la première et la dernière
|
||||
if (x != 0 &&
|
||||
x != board.GetLength(0) * 4 &&
|
||||
x % 4 == 0 &&
|
||||
y == board.GetLength(1) * 2)
|
||||
Console.Write('╩');
|
||||
|
||||
// toutes les 2 case d'une ligne sur deux dans la dernière colonne sauf la première et la dernière
|
||||
if (y != 0 &&
|
||||
y != board.GetLength(1) * 2 &&
|
||||
x == board.GetLength(0) * 4 &&
|
||||
y % 2 == 0)
|
||||
Console.Write('╣');
|
||||
|
||||
// toutes les 2 case d'une ligne sur deux dans la première colonne sauf la première et la dernière
|
||||
if (y != 0 &&
|
||||
y != board.GetLength(1) * 2 &&
|
||||
x == 0 &&
|
||||
y % 2 == 0)
|
||||
Console.Write('╠');
|
||||
|
||||
// toutes les cases au milieu
|
||||
if (x != 0 &&
|
||||
x != board.GetLength(0) * 4 &&
|
||||
y != 0 &&
|
||||
y != board.GetLength(1) * 2 &&
|
||||
x % 4 == 0 &&
|
||||
y % 2 == 0)
|
||||
Console.Write('╬');
|
||||
}
|
||||
}
|
||||
/*public void DrawBorder(Token[,] board)
|
||||
{
|
||||
// déclaration de l'espacement du plateau
|
||||
int playgroundSpacing = topSpacing + 3;
|
||||
@ -548,7 +665,7 @@ namespace P4
|
||||
Console.Write("╩═══");
|
||||
}
|
||||
Console.Write("╝");
|
||||
}
|
||||
}*/
|
||||
|
||||
/// <summary>
|
||||
/// Méthode DrawBoard qui dessine les jetons sur le plateau
|
||||
|
Reference in New Issue
Block a user