namespace AOW4.Data;

/// <summary>
/// Represents a Province Improvement - a buildable enhancement that can be constructed in a province.
/// Each Province Improvement decreases stability by -5.
/// </summary>
public class ProvinceImprovement
{
    /// <summary>
    /// The name of the province improvement.
    /// </summary>
    public required string Name { get; set; }

    /// <summary>
    /// The base category/type (Conduit, Farm, Forester, Mine, Quarry, Research Post, Teleporter, Monument, etc.).
    /// </summary>
    public required string Category { get; set; }

    /// <summary>
    /// A description of the effects this improvement provides (resource bonuses, adjacency bonuses, special mechanics, etc.).
    /// </summary>
    public required string Effects { get; set; }

    /// <summary>
    /// Any requirements to build this improvement (terrain, resource nodes, Town Hall tier, etc.).
    /// </summary>
    public required string Requirements { get; set; }

    /// <summary>
    /// The source/culture/tome that grants this improvement (General, Barbarian, Feudal, High, Mystic, etc.).
    /// </summary>
    public required string Source { get; set; }

    /// <summary>
    /// The production cost to build this improvement.
    /// </summary>
    public int CostProduction { get; set; }

    /// <summary>
    /// The gold cost to build this improvement.
    /// </summary>
    public int CostGold { get; set; }
}
