namespace LittleTown.Core.Aggregates.MatchAggregate
{
    /// <summary>
    /// Classe indiquant l'etat d'un batiment sélectionné pour une partie.
    /// Au debut d'un match, 12 batiments sont sélectionnés aléatoirement parmi les 24 batiments du jeu, et sont disponibles pour tous les joueurs.
    /// Cette classe indique l'etat de ces batiments (si ils sont encore disponibles ou si ils ont été construit par un joueur) et d'autres informations utiles pour le match.
    /// </summary>
    public class BuildingInfos
    {
        /// <summary> Le building concerné /// </summary>
        required public Building Building { get; init; }

        /// <summary> Indique si le batiment est dans la zone a construire ou sur le terrain construit </summary>
        public bool IsBuilt { get; set; }
        /// <summary> Le owner du batiment, null si le batiment n'est pas encore construit </summary>
        public string? Owner { get; set; }
    }

}
