namespace AOW4.Data;

/// <summary>
/// Static raw data provider for Province Improvements.
/// </summary>
public static class ProvinceImprovementsData
{
    public static List<ProvinceImprovement> RawData => new()
    {
        // Basic Province Improvements
        new ProvinceImprovement
        {
            Name = "Conduit",
            Category = "Conduit",
            Effects = "+5 Mana",
            Requirements = "Mana node, pearl reef, or magic material",
            Source = "Base",
            CostProduction = 0,
            CostGold = 0
        },
        new ProvinceImprovement
        {
            Name = "Farm",
            Category = "Farm",
            Effects = "+5 Food",
            Requirements = "Grassland or coast terrain, fungus fields (underground)",
            Source = "Base",
            CostProduction = 0,
            CostGold = 0
        },
        new ProvinceImprovement
        {
            Name = "Forester",
            Category = "Forester",
            Effects = "+2 Food\n+3 Production",
            Requirements = "Forest or mangrove forest terrain, mushroom forest (underground)",
            Source = "Base",
            CostProduction = 0,
            CostGold = 0
        },
        new ProvinceImprovement
        {
            Name = "Hut",
            Category = "Hut",
            Effects = "+2 Food",
            Requirements = "Ashlands, sand or snow terrain",
            Source = "Base",
            CostProduction = 0,
            CostGold = 0
        },
        new ProvinceImprovement
        {
            Name = "Mine",
            Category = "Mine",
            Effects = "+5 Gold",
            Requirements = "Gold vein, iron deposit, or pearl reef resource node",
            Source = "Base",
            CostProduction = 0,
            CostGold = 0
        },
        new ProvinceImprovement
        {
            Name = "Quarry",
            Category = "Quarry",
            Effects = "+5 Production",
            Requirements = "Cliff, rocky, or sunken ruins terrain; or iron deposit resource node",
            Source = "Base",
            CostProduction = 0,
            CostGold = 0
        },
        new ProvinceImprovement
        {
            Name = "Research Post",
            Category = "Research Post",
            Effects = "+5 Knowledge",
            Requirements = "Mana node, magic material or sunken ruins terrain",
            Source = "Base",
            CostProduction = 0,
            CostGold = 0
        },

        // General Province Improvements
        new ProvinceImprovement
        {
            Name = "Spell Jammer",
            Category = "Conduit",
            Effects = """
                Enemies cannot target World Map Spells in this Domain.
                Enemy Spells cost +100% Combat Casting Points in Combat in Domain.
                -10 Mana.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall III",
            Source = "General",
            CostProduction = 250,
            CostGold = 100
        },
        new ProvinceImprovement
        {
            Name = "Teleporter",
            Category = "Teleporter",
            Effects = """
                A Province Improvement which enables an Army to teleport from one teleporter to another.
                -10 Mana.
                """,
            Requirements = "Must be built on an acquired province",
            Source = "General",
            CostProduction = 250,
            CostGold = 100
        },

        // Cultural Province Improvements - Barbarian
        new ProvinceImprovement
        {
            Name = "Forest of Stakes",
            Category = "Forester",
            Effects = """
                +7 Food income.
                +7 Production income.
                +7 Draft per adjacent Forester.
                Enemy Units in this Domain get Demoralized.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Communal Tent",
            Source = "Barbarian",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Dark Cult of Death
        new ProvinceImprovement
        {
            Name = "Masoleum",
            Category = "Research Post",
            Effects = """
                +10 Knowledge income.
                +3 Knowledge Production per adjacent Conduit.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Dread Spire",
            Source = "Dark - Cult of Death",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Dark Cult of Tyranny
        new ProvinceImprovement
        {
            Name = "Dark Forge",
            Category = "Mine",
            Effects = """
                +10 Gold income.
                +5 Production per adjacent Quarry, Mine, or Forester.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Dread Spire",
            Source = "Dark - Cult of Tyranny",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Feudal
        new ProvinceImprovement
        {
            Name = "Farmstead",
            Category = "Farm",
            Effects = """
                +15 Food income.
                +5 Food per adjacent Farm.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Castle",
            Source = "Feudal",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - High
        new ProvinceImprovement
        {
            Name = "Sunshrine",
            Category = "Research Post",
            Effects = """
                +10 Knowledge income.
                +3 Knowledge per adjacent Research Post.
                Friendly Units in this Domain are Encouraged.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Atrium of Light",
            Source = "High",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Industrious
        new ProvinceImprovement
        {
            Name = "Builder's Quarters",
            Category = "Quarry",
            Effects = """
                +15 Production income.
                +5 Production per adjacent Quarry.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Bulwark",
            Source = "Industrious",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Mystic School of Attunement
        new ProvinceImprovement
        {
            Name = "Mystic Abbey",
            Category = "Conduit",
            Effects = """
                +10 Mana income.
                +3 Knowledge per adjacent Conduit or Research Post.
                """,
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Mage's Plaza",
            Source = "Mystic - School of Attunement",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Mystic School of Summoning
        new ProvinceImprovement
        {
            Name = "Astral Manalith",
            Category = "Conduit",
            Effects = """
                +10 Mana income.
                +5 Mana per adjacent Conduit or Research Post.
                """,
            Requirements = "Must be built on an acquired Province.\nRequires City Tier 2.\nRequires Town Hall II: Mage's Plaza",
            Source = "Mystic - School of Summoning",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Nomad Conquerors
        new ProvinceImprovement
        {
            Name = "Warcamp",
            Category = "Forester",
            Effects = """
                +15 Draft.
                Pillaging adjacent provinces takes -1 Turn.
                Friendly units in this and adjacent provinces gain +15 Hit Point regeneration per World Map Turn.
                """,
            Requirements = "Must be built on an annexed Province.\nRequires Town Hall II: Council Deck",
            Source = "Nomad - Conquerors",
            CostProduction = 130,
            CostGold = 60
        },

        // Cultural Province Improvements - Nomad Scavengers
        new ProvinceImprovement
        {
            Name = "Scavenging Camp",
            Category = "Mine",
            Effects = """
                +10 Gold.
                +10 Gold for this and each adjacent province containing a Resource Node.
                """,
            Requirements = "Must be built on an annexed Province.\nRequires Town Hall II: Council Deck",
            Source = "Nomad - Scavengers",
            CostProduction = 130,
            CostGold = 60
        },

        // Primal Megalith improvements
        new ProvinceImprovement
        {
            Name = "Ash Megalith",
            Category = "Conduit",
            Effects = "+6 Gold per adjacent Ashland Province",
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Clan Lodge",
            Source = "Primal - Ash Sabertooth",
            CostProduction = 250,
            CostGold = 100
        },
        new ProvinceImprovement
        {
            Name = "Dune Megalith",
            Category = "Conduit",
            Effects = "+4 Gold per adjacent Sand Province",
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Clan Lodge",
            Source = "Primal - Dune Serpent",
            CostProduction = 250,
            CostGold = 100
        },
        new ProvinceImprovement
        {
            Name = "Glacial Megalith",
            Category = "Conduit",
            Effects = "+6 Production per adjacent Snow Province",
            Requirements = "Must be built on an acquired province.\nRequires Town Hall II: Clan Lodge",
            Source = "Primal - Glacial Mammoth",
            CostProduction = 250,
            CostGold = 100
        },

        // Oathsworn Schools
        new ProvinceImprovement
        {
            Name = "School of Contemplation",
            Category = "Conduit",
            Effects = """
                +7 Mana.
                +7 Knowledge.
                +3 Knowledge per adjacent Conduit or Research Post.
                """,
            Requirements = "Must be built on an acquired Province.\nRequires Town Hall II: Oath Square",
            Source = "Oathsworn - Oath of Harmony",
            CostProduction = 250,
            CostGold = 100
        },
        new ProvinceImprovement
        {
            Name = "School of Discipline",
            Category = "Conduit",
            Effects = """
                +7 Mana.
                +7 Draft.
                +5 Draft per adjacent Quarry.
                """,
            Requirements = "Must be built on an acquired Province.\nRequires Town Hall II: Oath Square",
            Source = "Oathsworn - Oath of Righteousness",
            CostProduction = 250,
            CostGold = 100
        },
        new ProvinceImprovement
        {
            Name = "School of Mastery",
            Category = "Conduit",
            Effects = """
                +7 Mana.
                +7 Draft.
                Units produced in this city start with +1 Starting Rank.
                """,
            Requirements = "Must be built on an acquired Province.\nRequires Town Hall II: Oath Square",
            Source = "Oathsworn - Oath of Strife",
            CostProduction = 250,
            CostGold = 100
        }
    };
}
