# Used in all buildings that require AI to expend gold
# FROM is the owner of the building
ai_can_build_trigger = {
	hidden_trigger = {
		FROM = {
			trigger_if = {
				limit = { ai = yes }
				NOT = { has_character_modifier = ai_austerity }
			}
		}
	}
}

no_other_trade_guild_types_trigger = {
	# May only have 1 of any type of guild in one province
	custom_tooltip = {
		text = TR_TRADE_GUILD_1_GUILD_ONLY

		NOR = {
			trade_post_has_building = tr_amber_road_trade_guild_1
			trade_post_has_building = tr_atlantic_trade_guild_1
			trade_post_has_building = tr_rus_road_trade_guild_1
			trade_post_has_building = tr_balkan_road_trade_guild_1
			trade_post_has_building = tr_baltic_trade_guild_1
			trade_post_has_building = tr_british_trade_guild_1
			trade_post_has_building = tr_french_trade_guild_1
			trade_post_has_building = tr_mediterranean_trade_guild_1
			trade_post_has_building = tr_salt_road_trade_guild_1
		}
	}
}

# Two additional buildings can be built per increase in Construction technology
# checks if max allowed number has been built yet
# Works for castle, city and temple holdings
can_build_more_buildings = {
	custom_tooltip = {
		text = requires_building_slots

		trigger_if = {
			limit = { TECH_CONSTRUCTION >= 1 }
			FROMFROM = { num_of_buildings < 2 }
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 2 }
			FROMFROM = { num_of_buildings < 4 }
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 3 }
			FROMFROM = { num_of_buildings < 6 }
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 4 }
			FROMFROM = { num_of_buildings < 8 }
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 5 }
			FROMFROM = { num_of_buildings < 10 }
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 6 }
			FROMFROM = { num_of_buildings < 12 }
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 7 }
			FROMFROM = { num_of_buildings < 14 }
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 8 }
			FROMFROM = { num_of_buildings < 16 }
		}
		trigger_else = {
			always = no
		}
	}
}

# Two additional buildings can be built per increase in Construction technology
# checks if max allowed number has been built yet
# specific trigger for Nommads because their holding scopes are different
can_build_more_nomad_buildings = {
	custom_tooltip = {
		text = requires_building_slots

		FROM = {
			trigger_if = {
				limit = { TECH_CONSTRUCTION >= 1 }
				capital_holding = { num_of_buildings < 2 }
			}
			trigger_else_if = {
				limit = { TECH_CONSTRUCTION >= 2 }
				capital_holding = { num_of_buildings < 4 }
			}
			trigger_else_if = {
				limit = { TECH_CONSTRUCTION >= 3 }
				capital_holding = { num_of_buildings < 6 }
			}
			trigger_else_if = {
				limit = { TECH_CONSTRUCTION >= 4 }
				capital_holding = { num_of_buildings < 8 }
			}
			trigger_else_if = {
				limit = { TECH_CONSTRUCTION >= 5 }
				capital_holding = { num_of_buildings < 10 }
			}
			trigger_else_if = {
				limit = { TECH_CONSTRUCTION >= 6 }
				capital_holding = { num_of_buildings < 12 }
			}
			trigger_else_if = {
				limit = { TECH_CONSTRUCTION >= 7 }
				capital_holding = { num_of_buildings < 14 }
			}
			trigger_else_if = {
				limit = { TECH_CONSTRUCTION >= 8 }
				capital_holding = { num_of_buildings < 16 }
			}
			trigger_else = {
				always = no
			}
		}
	}
}

# Two additional buildings can be built per increase in Construction technology,
# checks if max allowed number has been built yet
hospital_can_build_more_buildings = {
	custom_tooltip = {
		text = requires_building_slots

		trigger_if = {
			limit = { TECH_CONSTRUCTION >= 1 }

			calc_true_if = {
				amount < 2

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 2 }

			calc_true_if = {
				amount < 4

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 3 }

			calc_true_if = {
				amount < 6

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 4 }

			calc_true_if = {
				amount < 8

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 5 }

			calc_true_if = {
				amount < 10

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 6 }

			calc_true_if = {
				amount < 12

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 7 }

			calc_true_if = {
				amount < 14

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 8 }

			calc_true_if = {
				amount < 16

				hospital_has_building = ho_abomination_stand
				hospital_has_building = ho_alchemist_hut
				hospital_has_building = ho_archive_room
				hospital_has_building = ho_autopsy_room
				hospital_has_building = ho_chapel
				hospital_has_building = ho_games_room
				hospital_has_building = ho_garden
				hospital_has_building = ho_healer_quarters
				hospital_has_building = ho_isolation_cells
				hospital_has_building = ho_leper_colony
				hospital_has_building = ho_medical_academy
				hospital_has_building = ho_observatory
				hospital_has_building = ho_pilgrim_inn
				hospital_has_building = ho_refugee_docks
				hospital_has_building = ho_sick_house
				hospital_has_building = ho_soup_kitchen
				hospital_has_building = ho_surgery_room
				hospital_has_building = ho_tailor_room
				hospital_has_building = ho_translation_house
				hospital_has_building = ho_well
			}
		}
	}
}

# Two additional buildings can be built per increase in Construction technology,
# checks if max allowed number has been built yet
trade_post_can_build_more_buildings = {
	custom_tooltip = {
		text = requires_building_slots

		trigger_if = {
			limit = { TECH_CONSTRUCTION >= 1 }

			calc_true_if = {
				amount < 2

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 2 }

			calc_true_if = {
				amount < 4

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 3 }

			calc_true_if = {
				amount < 6

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 4 }

			calc_true_if = {
				amount < 8

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 5 }

			calc_true_if = {
				amount < 10

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 6 }

			calc_true_if = {
				amount < 12

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 7 }

			calc_true_if = {
				amount < 14

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 8 }

			calc_true_if = {
				amount < 16

				trade_post_has_building = tr_bank
				trade_post_has_building = tr_camp
				trade_post_has_building = tr_custom_house
				trade_post_has_building = tr_depot
				trade_post_has_building = tr_farm
				trade_post_has_building = tr_fishery
				trade_post_has_building = tr_guild_enclave
				trade_post_has_building = tr_guild_garrison
				trade_post_has_building = tr_lumber_mill
				trade_post_has_building = tr_mercenary_garrison
				trade_post_has_building = tr_mine
				trade_post_has_building = tr_pasture
				trade_post_has_building = tr_paved_roads
				trade_post_has_building = tr_plantation
				trade_post_has_building = tr_quarry
				trade_post_has_building = tr_realm_garrison
				trade_post_has_building = tr_smuggler_cove
				trade_post_has_building = tr_toll_booth
				trade_post_has_building = tr_trade_office
				trade_post_has_building = tr_trade_port
			}
		}
		trigger_else = {
			always = no
		}
	}
}

# Two additional buildings can be built per increase in Construction technology,
# checks if max allowed number has been built yet
fort_can_build_more_buildings = {
	custom_tooltip = {
		text = requires_building_slots

		trigger_if = {
			limit = { TECH_CONSTRUCTION >= 1 }

			calc_true_if = {
				amount < 2

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 2 }

			calc_true_if = {
				amount < 4

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 3 }

			calc_true_if = {
				amount < 6

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 4 }

			calc_true_if = {
				amount < 8

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 5 }

			calc_true_if = {
				amount < 10

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 6 }

			calc_true_if = {
				amount < 12

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 7 }

			calc_true_if = {
				amount < 14

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 8 }

			calc_true_if = {
				amount < 16

				fort_has_building = fo_arrow_maker
				fort_has_building = fo_brimstones
				fort_has_building = fo_caltrops
				fort_has_building = fo_command_tent
				fort_has_building = fo_common_tents
				fort_has_building = fo_forager_huts
				fort_has_building = fo_hitching_post
				fort_has_building = fo_oil_pits
				fort_has_building = fo_outer_palisade
				fort_has_building = fo_quartermaster
				fort_has_building = fo_ramparts
				fort_has_building = fo_reinforced_walls
				fort_has_building = fo_senior_tents
				fort_has_building = fo_spear_bracing_spots
				fort_has_building = fo_spike_traps
				fort_has_building = fo_stakes
				fort_has_building = fo_supply_tent
				fort_has_building = fo_training_dummies
				fort_has_building = fo_watchtower
				fort_has_building = fo_wooden_barbican
			}
		}
		trigger_else = {
			always = no
		}
	}
}

# Two additional buildings can be built per increase in Construction technology,
# checks if max allowed number has been built yet
family_palace_can_build_more_buildings = {
	custom_tooltip = {
		text = requires_building_slots

		trigger_if = {
			limit = { TECH_CONSTRUCTION >= 1 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 2

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 2 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 4

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 3 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 6

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 4 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 8

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 5 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 10

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 6 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 12

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 7 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 14

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else_if = {
			limit = { TECH_CONSTRUCTION >= 8 }

			FROM = {
				family_palace = {
					calc_true_if = {
						amount < 16

						has_building = fp_administrative_office
						has_building = fp_art_collection
						has_building = fp_chancellor
						has_building = fp_chaplain
						has_building = fp_crossbow_workshop
						has_building = fp_maze
						has_building = fp_mansion
						has_building = fp_map_room
						has_building = fp_marshal
						has_building = fp_meditation_room
						has_building = fp_mercenary_contractors
						has_building = fp_minter
						has_building = fp_poleaxe_workshop
						has_building = fp_riding_grounds
						has_building = fp_royal_escorts
						has_building = fp_royal_guards
						has_building = fp_spymaster
						has_building = fp_steward
						has_building = fp_vault
						has_building = fp_cellar
					}
				}
			}
		}
		trigger_else = {
			always = no
		}
	}
}