namespace LittleTown.Core;

/// <summary>
/// Représente une carte objectif dans le jeu, les objectif sont des conditions qui une fois remplie accordent des points au joueur
/// </summary>
public class Objective
{
    /// <summary> la description, une clé pour la traduction </summary>
    public required string Description { get; init; }
    /// <summary> la condition de l'objectif sous forme de formule </summary>
    public string Formula { get; init; } = string.Empty;

    /// <summary> le nombre de points que procure cet objectif </summary>
    public int Points { get; init; }

    /// <summary> indique si l'objectif a deja été atteint ou non, un objectif ne peut etre atteint qu'une fois </summary>
    public bool Filled { get; init; }
}