using System;
using System.ComponentModel.DataAnnotations;
using System.Reflection;
using System.Collections.Generic;
namespace BibliothequeClasses
{
///
/// Représente le plateau de jeu qui initialise deux tableaux de taille 12.
/// Il possède deux méthodes : une pour ajouter une combinaison dans le tableau et une autre pour vérifier si le tableau est plein.
///
public class Plateau
{
private static readonly int tailleMax = 12;
private CombinaisonSecrete combinaisonSecrete = new CombinaisonSecrete();
private CombinaisonJoueur[] lesCombinaisonsJoueur = new CombinaisonJoueur[tailleMax];
private Combinaison[] lesCombinaisonsIndicateur = new CombinaisonIndicateur[tailleMax];
private int index = 0;
///
/// Ajoute une combinaison de joueur au plateau.
///
/// La combinaison du joueur à ajouter.
/// True si la combinaison correspond à la combinaison secrète, sinon False.
public bool AjouterCombinaison(CombinaisonJoueur combinaisonJoueur)
{
if (EstComplet())
{
throw new Exception("Le plateau est plein, impossible d'ajouter une combinaison supplémentaire.");
}
lesCombinaisonsJoueur[index] = combinaisonJoueur;
index++;
return combinaisonSecrete.EstEgal(combinaisonJoueur);
}
///
/// Vérifie si le plateau est complet.
///
/// True si le plateau est plein, sinon False.
public bool EstComplet()
{
return index >= tailleMax;
}
}
}