############################################################
###               ESC buildings : resources              ###
############################################################

# - Zro Distillery					: special building for Zro production
# - Dark Matter Drawing Facility	: special building for Zro production
# - Nanite foundry          		: provides jobs for generation of 'nanites' resources (nanite weapons, nanite-augmented armor, shielding armor)
# - Crystal Farm	        		: provides jobs for generation of 'rare crystal' resources (crystalline weapons)
# - Improved Crystal Farm	   		: improved versin of Crystal Farm
# - Reprocessing Plant				: special building that provides 'resource reprocessing manager' jobs that provide alloys and consumer goods. requires empire to have killed Scavenger Bot
# - Mantle Mining Facility			: special ecumenopolis mining building
# - Imporved Mantle Mining Facility	: improved version of the Mantle Mining Facility

############################################################
###                    Zro Distillery                    ###
############################################################

esc_building_zro_distillery = {
	base_buildtime = 360
	planet_limit = 1
	icon = esc_building_zro_distillery
	category = manufacturing

	building_sets = {
		industrial
		factory
		foundry
		research
	}

	potential = {
		NOT = { has_modifier = resort_colony }
		NOT = { has_modifier = slave_colony }
		NOT = { has_global_flag = ESC_GLOBAL_FLAG_psionic_weapons_forbidden }
	}
	destroy_trigger = {
		OR = {
			has_modifier = resort_colony
			has_modifier = slave_colony
		}
	}
	allow = { has_upgraded_capital = yes }

	resources = {
        category = planet_buildings
        cost = {
			minerals = 400
			rare_crystals = 30
			exotic_gases = 30
			volatile_motes = 30
        }
        upkeep = {
			energy = 5
			rare_crystals = @ESC_job_upkeep_secondary_resource
			exotic_gases = @ESC_job_upkeep_secondary_resource
			volatile_motes = @ESC_job_upkeep_secondary_resource
        }
	}

	# resgular empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_regular_empire = yes }
		}
		modifier = {
			planet_biologists_sr_zro_produces_add = 1
			planet_biologists_consumer_goods_upkeep_add = 2
			planet_biologists_energy_upkeep_add = 3
		}
	}
	# gestalt empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			planet_biologists_sr_zro_produces_add = 1
			planet_biologists_energy_upkeep_add = 7
		}
	}

	prerequisites = { "esc_tech_zro_distilleries" }

	ai_resource_production = {
		sr_zro = 4
        trigger = { always = yes }
    }
}

############################################################
###             Dark Matter Drawing Facility             ###
############################################################

esc_building_dark_matter_facility = {
	base_buildtime = 360
	planet_limit = 1
	icon = esc_building_dark_matter_facility
	category = manufacturing

	building_sets = {
		industrial
		factory
		foundry
		research
	}

	potential = {
		NOT = { has_modifier = resort_colony }
		NOT = { has_modifier = slave_colony }
		NOR = {
			has_global_flag = ESC_GLOBAL_FLAG_chronospatial_weapons_forbidden
			has_global_flag = ESC_GLOBAL_FLAG_enigmatic_weapons_forbidden
			has_global_flag = ESC_GLOBAL_FLAG_gravitic_weapons_forbidden
		}
	}
	destroy_trigger = {
		OR = {
			has_modifier = resort_colony
			has_modifier = slave_colony
		}
	}
	allow = { has_upgraded_capital = yes }

	resources = {
        category = planet_buildings
        cost = {
			minerals = 500
			volatile_motes = 25
		}
		produces = {
			sr_dark_matter = 2
		}
        upkeep = {
			energy = 5
			volatile_motes = 2
        }
	}

	# resgular empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_regular_empire = yes }
		}
		modifier = {
			planet_physicists_sr_dark_matter_produces_add = 1
			planet_physicists_consumer_goods_upkeep_add = 2
			planet_physicists_energy_upkeep_add = 2
		}
	}
	# gestalt empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			planet_physicists_sr_dark_matter_produces_add = 1
			planet_physicists_energy_upkeep_add = 6
		}
	}

	prerequisites = { "esc_tech_dark_matter_facilities" }

	ai_resource_production = {
		sr_dark_matter = 4
        trigger = { always = yes }
	}
}

############################################################
###                   Nanite Foundry                     ###
############################################################

esc_building_nanite_foundry = {
	base_buildtime = 540
	icon = esc_building_nanite_foundry
	category = manufacturing

	building_sets = {
		industrial
		factory
		foundry
	}

	potential = {
		NOT = { has_modifier = resort_colony }
		NOT = { has_modifier = slave_colony }
		NOT = { has_global_flag = ESC_GLOBAL_FLAG_nanite_weapons_forbidden }
	}
	destroy_trigger = {
		OR = {
			has_modifier = resort_colony
			has_modifier = slave_colony
		}
	}
	allow = {
		has_upgraded_capital = yes
		exists = owner
		owner = { ESC_TRIGGER_is_normal_empire_or_machine_fe = yes }
	}

    resources = {
        category = planet_buildings
        cost = {
			minerals = 600
			rare_crystals = 50
			exotic_gases = 25
        }
        upkeep = {
			energy = 4
			alloys = 2
        }
	}

	# resgular empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_regular_empire = yes }
		}
		modifier = {
			planet_metallurgists_nanites_produces_add = 1
			planet_metallurgists_minerals_upkeep_add = 3
			planet_metallurgists_consumer_goods_upkeep_add = 1
		}
	}
	# gestalt empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			planet_metallurgists_nanites_produces_add = 1
			planet_metallurgists_minerals_upkeep_add = 3
			planet_metallurgists_energy_upkeep_add = 2
		}
	}

	prerequisites = { "esc_tech_synthetic_lifeform_studies" }

	ai_resource_production = {
		nanites = 4
        trigger = { always = yes }
    }
}

############################################################
###                    Crystal Farm                      ###
############################################################

esc_building_crystal_farm_1 = {
    base_buildtime = 360
	icon = esc_building_crystal_farm_1
	category = resource

	building_sets = {
		farming
	}

	potential = {
		NOT = { has_modifier = resort_colony }
		NOT = { has_modifier = slave_colony }
		NOT = { has_global_flag = ESC_GLOBAL_FLAG_crystalline_weapons_forbidden }
	}
	destroy_trigger = {
		OR = {
			has_modifier = resort_colony
			has_modifier = slave_colony
		}
	}
	allow = { has_upgraded_capital = yes }

	resources = {
        category = planet_buildings
        cost = {
            minerals = 360
        }
        upkeep = {
            minerals = 4
        }
	}

	upgrades = { esc_building_crystal_farm_2 }

	# resgular empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_regular_empire = yes }
		}
		modifier = {
			planet_farmers_food_produces_add = -1
			planet_farmers_rare_crystals_produces_add = 0.5
			planet_farmers_minerals_upkeep_add = 1
			planet_farmers_consumer_goods_upkeep_add = 0.5
		}
	}
	# gestalt empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			planet_farmers_food_produces_add = -1
			planet_farmers_rare_crystals_produces_add = 0.5
			planet_farmers_minerals_upkeep_add = 1
			planet_farmers_energy_upkeep_add = 1
		}
	}

	prerequisites = { "esc_tech_crystal_cannon_1" }

	ai_resource_production = {
        rare_crystals = 8
        trigger = { always = yes }
    }
}

############################################################
###               Improved Crystal Farm                  ###
############################################################

esc_building_crystal_farm_2 = {
    base_buildtime = 360
	icon = esc_building_crystal_farm_2
	category = resource
	can_build = no

	building_sets = {
		farming
	}

	potential = {
		NOT = { has_modifier = resort_colony }
		NOT = { has_modifier = slave_colony }
		NOT = { has_global_flag = ESC_GLOBAL_FLAG_crystalline_weapons_forbidden }
	}
	destroy_trigger = {
		OR = {
			has_modifier = resort_colony
			has_modifier = slave_colony
		}
	}
	allow = { has_upgraded_capital = yes }

    resources = {
        category = planet_buildings
        cost = {
            minerals = 480
            rare_crystals = 50
        }
        upkeep = {
            minerals = 8
        }
    }

	# resgular empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_regular_empire = yes }
		}
		modifier = {
			planet_farmers_food_produces_add = -1
			planet_farmers_rare_crystals_produces_add = 1
			planet_farmers_minerals_upkeep_add = 2
			planet_farmers_consumer_goods_upkeep_add = 1
		}
	}
	# gestalt empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			planet_farmers_food_produces_add = -1
			planet_farmers_rare_crystals_produces_add = 1
			planet_farmers_minerals_upkeep_add = 2
			planet_farmers_energy_upkeep_add = 2
		}
	}

	prerequisites = { "esc_tech_improved_crystal_farm" }

	ai_resource_production = {
        rare_crystals = 8
        trigger = { always = yes }
    }
}

############################################################
###                 Reprocessing Plant                   ###
############################################################

esc_building_reprocessing_plant = {
	base_buildtime = 360
	planet_limit = 1
	icon = esc_building_reprocessing_plant
	category = manufacturing

	building_sets = {
		industrial
		urban
	}

	potential = {
		NOT = { has_modifier = resort_colony }
		NOT = { has_modifier = slave_colony }
		NOT = { has_global_flag = ESC_GLOBAL_FLAG_scrapper_tech_forbidden }
		exists = owner
		owner = { has_country_flag = scrapper_killed }
	}
	destroy_trigger = {
		OR = {
			has_modifier = resort_colony
			has_modifier = slave_colony
		}
	}
	allow = {
		has_upgraded_capital = yes
	}

	resources = {
        category = planet_buildings
        cost = {
			minerals = 400
			rare_crystals = 10
			exotic_gases = 10
        }
        upkeep = {
			energy = 3
        }
	}

	# regular empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_regular_empire = yes }
		}
		modifier = {
			planet_pops_consumer_goods_upkeep_mult = -0.1
			pop_amenities_usage_mult = -0.1
			job_esc_reprocessor_add = @ESC_job_count_1
			job_esc_reprocessor_per_pop = 0.05
		}
	}
	triggered_desc = {
        trigger = {
            exists = owner
            owner = { is_regular_empire = yes }
        }
        text = job_esc_reprocessor_effect_desc
	}

	# gestalt empires
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			pop_amenities_usage_no_happiness_mult = -0.2
			job_esc_reprocessor_drone_add = @ESC_job_count_1
			job_esc_reprocessor_drone_per_pop = 0.05
		}
	}
	triggered_desc = {
        trigger = {
            exists = owner
            owner = {
				is_gestalt = yes
				NOT = { has_valid_civic = civic_machine_servitor }
			}
        }
        text = job_esc_reprocessor_drone_effect_desc
	}
	triggered_desc = {
        trigger = {
            exists = owner
            owner = { has_valid_civic = civic_machine_servitor }
        }
        text = job_esc_reprocessor_drone_rs_effect_desc
	}

	prerequisites = { "esc_tech_reprocessing_plant" }

	ai_resource_production = {
		trigger = { always = yes }
		alloys = 4
	}
}

############################################################
###                Mantle Mining Facility                ###
############################################################

esc_building_magmaminer_1 = {
	base_buildtime = 1080
	planet_limit = 1
	icon = esc_building_magmaminer_1
	category = resource

	building_sets = {
		mining
		urban
	}

	potential = {
		owner = { is_nomadic = no }
		planet = {
			planet_is_habitat_equivalent = no
			planet_is_ring_world_equivalent = no
		}
		NOT = { has_modifier = resort_colony }
		NOT = { has_global_flag = ESC_GLOBAL_FLAG_mantle_mining_facility_forbidden }
	}

	allow = {
		has_major_upgraded_capital = yes
		OR = {
			has_deposit = d_esc_large_borehole_1
			num_free_districts = {
				type = any
				value > 1
			}
		}
	}

	resources = {
        category = planet_buildings
        cost = {
			minerals = 2000
			alloys = 500
			volatile_motes = 50
			rare_crystals = 50
		}
		produces = {
			minerals = 10
		}
        upkeep = {
			energy = 15
			alloys = 10
        }
	}

	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = no }
		}
		modifier = {
			planet_miners_minerals_produces_add = 6
			planet_miners_rare_crystals_produces_add = 0.25
			planet_miners_energy_upkeep_add = 5
			planet_miners_alloys_upkeep_add = 1
		}
	}
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			planet_miners_minerals_produces_add = 6
			planet_miners_rare_crystals_produces_add = 0.25
			planet_miners_energy_upkeep_add = 10
			planet_miners_alloys_upkeep_add = 1
		}
	}

	inline_script = {
		script = jobs/miners_add
		AMOUNT = @ESC_job_count_5
	}
	inline_script = {
		script = jobs/physicists_add
		AMOUNT = @ESC_job_count_1
	}
	inline_script = {
		script = jobs/engineers_add
		AMOUNT = @ESC_job_count_1
	}

	prerequisites = { "esc_tech_magmaminer_1" }

	### give AI extra minerals for free
	ai_resource_production = {
		minerals = 20
        trigger = { always = yes }
	}

	on_queued = {
		if = {
			limit = { NOT = { has_deposit = d_esc_large_borehole_1 } }
			set_carrier_flag = ESC_PLANET_FLAG_queued_first_mantle_miner
			add_deposit = d_esc_large_borehole_1
		}
	}

	on_unqueued = {
		if = {
			limit = { has_carrier_flag = ESC_PLANET_FLAG_queued_first_mantle_miner }
			remove_carrier_flag = ESC_PLANET_FLAG_queued_first_mantle_miner
			remove_deposit = d_esc_large_borehole_1
		}
	}

	on_built = {
		remove_carrier_flag = ESC_PLANET_FLAG_queued_first_mantle_miner
		# after this, it is impossible to remove the blocker without cheats
		hidden_effect = {
			planet = {
				planet_event = { id = esc_events.3000 days = 360 random = 360 }
				planet_event = { id = esc_events.3050 days = 1080 random = 720 }
			}
		}
	}

	upgrades = { esc_building_magmaminer_2 }
}

############################################################
###           Improved Mantle Mining Facility            ###
############################################################

esc_building_magmaminer_2 = {
	base_buildtime = 720
	can_build = no # upgrade
	icon = esc_building_magmaminer_2
	category = resource

	building_sets = {
		mining
		urban
	}

	potential = {
		owner = { is_nomadic = no }
		planet = {
			planet_is_habitat_equivalent = no
			planet_is_ring_world_equivalent = no
		}
		NOT = { has_modifier = resort_colony }
		NOT = { has_global_flag = ESC_GLOBAL_FLAG_mantle_mining_facility_forbidden }
	}

	allow = { has_fully_upgraded_capital = yes }

	resources = {
        category = planet_buildings
        cost = {
			minerals = 2000
			alloys = 500
			volatile_motes = 50
			rare_crystals = 50
		}
		produces = {
			minerals = 20
		}
        upkeep = {
			energy = 30
			alloys = 20
        }
	}

	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = no }
		}
		modifier = {
			planet_miners_minerals_produces_add = 6
			planet_miners_rare_crystals_produces_add = 0.25
			planet_miners_consumer_goods_upkeep_add = 3
			planet_miners_energy_upkeep_add = 5
			planet_miners_alloys_upkeep_add = 1
		}
	}
	triggered_planet_modifier = {
		potential = {
			exists = owner
			owner = { is_gestalt = yes }
		}
		modifier = {
			planet_miners_minerals_produces_add = 6
			planet_miners_rare_crystals_produces_add = 0.25
			planet_miners_energy_upkeep_add = 10
			planet_miners_alloys_upkeep_add = 1
		}
	}

	inline_script = {
		script = jobs/miners_add
		AMOUNT = @ESC_job_count_10
	}
	inline_script = {
		script = jobs/physicists_add
		AMOUNT = @ESC_job_count_2
	}
	inline_script = {
		script = jobs/engineers_add
		AMOUNT = @ESC_job_count_2
	}

	prerequisites = { "esc_tech_magmaminer_2" }

	### give AI extra minerals for free
	ai_resource_production = {
		minerals = 40
        trigger = { always = yes }
	}
}
