﻿# Pilgrims and Preachers - camp internal buildings unlocked by the Pilgrims camp purpose.
# Additive: new internal upgrades of vanilla tier-1 external buildings.
# Each is unlocked by a realm law flag declared on ppr_camp_purpose_pilgrims
# and removed by ppr_building_events.0001 when the flag is lost.

# @variables are file-local: redeclared from 00_camp_buildings.txt.
@camp_building_internal_slot_construction_duration_t1 = 180
@camp_building_internal_slot_construction_duration_t2 = 240
@camp_building_internal_slot_construction_duration_t3 = 300

### Baggage Train - Reliquary Wagon
ppr_baggage_train_reliquary = {
	slot_type = internal
	construction_time = @camp_building_internal_slot_construction_duration_t2
	allowed_domicile_types = { camp }
	previous_building = baggage_train_01

	cost = { gold = camp_building_upgrade_cost_t3_value }
	refund = {
		gold = {
			value = camp_building_upgrade_cost_t3_value
			multiply = camp_refund_mult_value
			floor = yes
		}
	}

	can_construct = {
		custom_tooltip = {
			text = ppr_baggage_train_reliquary.tt.unlocked_by_purpose
			has_realm_law_flag = ppr_unlocks_baggage_train_reliquary
		}
	}

	character_modifier = {
		domicile_monthly_piety_add = 1
		same_faith_opinion = 5
	}

	parameters = {
		ppr_camp_unlocks_relic_keeper_officer = yes
		ppr_camp_improved_religious_contract_rewards = yes
	}

	ai_value = {
		value = camp_building_ai_base_t5
		if = {
			limit = {
				owner = { has_lifestyle = learning_lifestyle }
			}
			add = camp_building_ai_lifestyle_bias_value
		}
		multiply = 10
	}

	asset = {
		trigger = {
			owner.culture = {
				OR = {
					has_graphical_chinese_culture_group_trigger = yes
					has_graphical_japanese_culture_group_trigger = yes
				}
			}
		}
		icon = "gfx/interface/icons/domicile_building/domicile_building_crypt.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_baggage_train_asian.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_baggage_train_asian_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_baggage_train"
	}

	asset = {
		icon = "gfx/interface/icons/domicile_building/domicile_building_crypt.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_baggage_train.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_baggage_train_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_baggage_train"
	}
}

### Barber Tent - Pilgrims' Hospice
ppr_barber_tent_hospice = {
	slot_type = internal
	construction_time = @camp_building_internal_slot_construction_duration_t2
	allowed_domicile_types = { camp }
	previous_building = barber_tent_01

	cost = { gold = camp_building_upgrade_cost_t2_value }
	refund = {
		gold = {
			value = camp_building_upgrade_cost_t2_value
			multiply = camp_refund_mult_value
			floor = yes
		}
	}

	can_construct = {
		custom_tooltip = {
			text = ppr_barber_tent_hospice.tt.unlocked_by_purpose
			has_realm_law_flag = ppr_unlocks_barber_tent_hospice
		}
	}

	character_modifier = {
		negate_health_penalty_add = 0.25
		epidemic_resistance = 10
		epidemic_travel_danger = -5 # vanilla barber tents: -5
		stress_loss_mult = 0.1
	}

	ai_value = {
		value = camp_building_ai_base_t5
		if = {
			limit = {
				owner = { has_lifestyle = learning_lifestyle }
			}
			add = camp_building_ai_lifestyle_bias_value
		}
		multiply = 10
	}

	asset = {
		trigger = {
			owner.culture = {
				OR = {
					has_graphical_chinese_culture_group_trigger = yes
					has_graphical_japanese_culture_group_trigger = yes
				}
			}
		}
		icon = "gfx/interface/icons/domicile_building/domicile_building_church_cloister.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_barber_asian.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_barber_asian_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_barber_tent"
	}

	asset = {
		icon = "gfx/interface/icons/domicile_building/domicile_building_church_cloister.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_barber.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_barber_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_barber_tent"
	}
}

### Camp Fire - Evening Vespers
ppr_camp_fire_vespers = {
	slot_type = internal
	construction_time = @camp_building_internal_slot_construction_duration_t2
	allowed_domicile_types = { camp }
	previous_building = camp_fire_01

	cost = { gold = camp_building_upgrade_cost_t2_value }
	refund = {
		gold = {
			value = camp_building_upgrade_cost_t2_value
			multiply = camp_refund_mult_value
			floor = yes
		}
	}

	can_construct = {
		custom_tooltip = {
			text = ppr_camp_fire_vespers.tt.unlocked_by_purpose
			has_realm_law_flag = ppr_unlocks_camp_fire_vespers
		}
	}

	character_modifier = {
		stress_gain_mult = -0.1
		domicile_monthly_piety_add = 0.5
		courtier_opinion = 5
	}

	parameters = {
		camp_unlocks_camp_priest_officer = yes
	}

	ai_value = {
		value = camp_building_ai_base_t5
		if = {
			limit = {
				owner = { has_lifestyle = learning_lifestyle }
			}
			add = camp_building_ai_lifestyle_bias_value
		}
		multiply = 10
		if = {
			limit = {
				owner = { has_trait = cynical }
			}
			multiply = 0.5
		}
	}

	asset = {
		trigger = {
			owner.culture = {
				OR = {
					has_graphical_chinese_culture_group_trigger = yes
					has_graphical_japanese_culture_group_trigger = yes
				}
			}
		}
		icon = "gfx/interface/icons/domicile_building/domicile_building_monastery.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_roaring_campfire_asian.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_roaring_campfire_asian_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_campfire"
	}

	asset = {
		icon = "gfx/interface/icons/domicile_building/domicile_building_monastery.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_roaring_campfire.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_roaring_campfire_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_campfire"
	}
}

### Supply Tent - Alms Chest
ppr_supply_tent_alms_chest = {
	slot_type = internal
	construction_time = @camp_building_internal_slot_construction_duration_t1
	allowed_domicile_types = { camp }
	previous_building = supply_tent_01

	cost = { gold = camp_building_upgrade_cost_t2_value }
	refund = {
		gold = {
			value = camp_building_upgrade_cost_t2_value
			multiply = camp_refund_mult_value
			floor = yes
		}
	}

	can_construct = {
		custom_tooltip = {
			text = ppr_supply_tent_alms_chest.tt.unlocked_by_purpose
			has_realm_law_flag = ppr_unlocks_supply_tent_alms_chest
		}
	}

	character_modifier = {
		domicile_monthly_piety_add = 0.5
		domicile_monthly_gold_add = 0.1
		provisions_use_mult = -0.1
	}

	ai_value = {
		value = camp_building_ai_base_t5
		if = {
			limit = {
				owner = { has_lifestyle = stewardship_lifestyle }
			}
			add = camp_building_ai_lifestyle_bias_value
		}
		multiply = 10
	}

	asset = {
		trigger = {
			owner.culture = {
				OR = {
					has_graphical_chinese_culture_group_trigger = yes
					has_graphical_japanese_culture_group_trigger = yes
				}
			}
		}
		icon = "gfx/interface/icons/domicile_building/domicile_building_church_treasury.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_supply_tent_asian.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_supply_tent_asian_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_supply_tent"
	}

	asset = {
		icon = "gfx/interface/icons/domicile_building/domicile_building_church_treasury.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_supply_tent.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_supply_tent_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_supply_tent"
	}
}

### Camp Perimeter - Palmers' Watch
ppr_camp_perimeter_palmers_watch = {
	slot_type = internal
	construction_time = @camp_building_internal_slot_construction_duration_t1
	allowed_domicile_types = { camp }
	previous_building = camp_perimeter_01

	cost = { gold = camp_building_upgrade_cost_t1_value }
	refund = {
		gold = {
			value = camp_building_upgrade_cost_t1_value
			multiply = camp_refund_mult_value
			floor = yes
		}
	}

	can_construct = {
		custom_tooltip = {
			text = ppr_camp_perimeter_palmers_watch.tt.unlocked_by_purpose
			has_realm_law_flag = ppr_unlocks_camp_perimeter_palmers_watch
		}
	}

	character_modifier = {
		character_travel_safety = 3 # vanilla perimeters: +3
		character_travel_safety_mult = 0.1
		epidemic_travel_danger = -5
	}

	ai_value = {
		value = camp_building_ai_base_t5
		if = {
			limit = {
				owner = { has_lifestyle = learning_lifestyle }
			}
			add = camp_building_ai_lifestyle_bias_value
		}
		multiply = 10
	}

	asset = {
		trigger = {
			owner.culture = {
				OR = {
					has_graphical_chinese_culture_group_trigger = yes
					has_graphical_japanese_culture_group_trigger = yes
				}
			}
		}
		icon = "gfx/interface/icons/domicile_building/domicile_building_church_guard_tower.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_perimeter_asian.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_perimeter_asian_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_perimeter"
	}

	asset = {
		icon = "gfx/interface/icons/domicile_building/domicile_building_church_guard_tower.dds"
		texture = "gfx/interface/window_domiciles/laamp_building_perimeter.dds"
		intersectionmask_texture = "gfx/interface/window_domiciles/laamp_building_perimeter_mask.png"
		soundeffect = "event:/DLC/EP3/SFX/UI/camp_buildings/ep3_ui_domicile_buildings_perimeter"
	}
}
