
### Brief: <key> ( database key )
# Flavor text description of building defaults to
# "<key>_domicile_building_desc".
#
# All buildings automatically inherit the character modifiers of its
# previous buildings of the same track
#
<key> = {

	### Brief: can_construct ( trigger )
	# Is the scoped owner able to construct this building?
	#
	# Supported scopes:
	#		root ( Character )
	#
	can_construct = {
		<triggers>
	}

	### Brief: can_construct_potential ( trigger )
	# Is the scoped owner able to consider constructing this building?
	#
	# Supported scopes:
	#		root ( Character )
	#
	can_construct_potential = {
		<triggers>
	}

	### Brief: on_start/on_cancelled/on_completed ( effect )
	# Effects fired when construction begins, is cancelled or finishes.
	#
	# Available scopes:
	# 	root -- Domicile it is built in
	#	scope:owner -- Owner of the Domicile
	# 
	on_start/on_cancelled/on_complete = { }
	
	# How many days it takes to construct the building
	# Note: Affected by modifiers 'build_speed' and 'domicile_build_speed'
	construction_time = 720

	### Brief: parameters ( parameter list )
	# Arbitrary parameters that can be checked with the trigger 
	# 'has_domicile_parameter'
	# 
	# Note: The above trigger just checks for existence, so it does not
	# matter if the value is set to 'yes' or 'no'.
	#
	# Parameters are not inherited from previous_building and has to be 
	# repeated to not get lost on upgrading.
	#
	parameters = {
		some_parameter = yes
	}

	### Brief: slot_type ( parameter list )
	# This building may only be constructed in selected slot type
	#
	# Internal slots cannot be base buildings and requires a previous 
	# building. They may only be constructed within a main or external
	# building.
	# 
	# If slot type is 'main' and it doesn't have a previous building,
	# it will automatically be constructed on start
	# 
	# Slot types are: 'main', 'external' or 'internal'. 
	# Default type is 'external'
	#
	slot_type = external

	### Brief: internal_slots ( int32 )
	# Set the amount of unlocked internal building slots this building 
	# has.
	#
	# Default is 0
	#
	internal_slots = 0

	### Brief: allowed_domicile_types ( list of database key )
	# List the domicile types which can build this building. 
	# 
	# UNSET WILL NOT SHOW UP!
	#
	allowed_domicile_types = {
		<key>
		<key>
	}

	### Brief: previous_building ( database key )
	# If the 'previous_building'-statement is missing, this building 
	# will be treated as a base building meaning the first tier of a 
	# potentional chain of building upgrades.
	#
	# To define an upgrade, type the key name of the building before 
	# it, marking this building as it's upgrade.
	#
	# A building will get diverging upgrade paths if two upgrades has 
	# the same 'previous_building'-key
	#
	previous_building = <key>

	### Brief: cost ( scripted cost )
	# How much does this building cost?
	#
	# Ex: { gold = 500, prestige = 100 }
	#
	cost = {
		<scripted_cost>
	}

	### Brief: refund ( optional scripted cost )
	# How much do you get by refunding this building?
	# Note: If not entered, will use cost directly as fallback
	#
	# Ex: { gold = 500, prestige = 100 }
	#
	refund = {
		<scripted_cost>
	}

	### Brief: character_modifier ( modifiers )
	# Modifiers applied to the Domicile owner of this building. 
	# Ex: { county_opinion_add = 2, stress_loss_mult = 0.15 }
	# 
	# Note: Please do not use holdings monthly_income, etc..! 
	# Instead use: domicile_monthly_gold_add or 
	# domicile_monthly_gold_mult (same for: _prestige / _piety / 
	# _influence )
	#
	character_modifier = {
		<modifier>
	}

	### Brief: province_modifier ( modifiers )
	# Modifiers applied to the Province this building is in. 
	# Ex: { stationed_camel_cavalry_damage_mult = high_maa_damage_tier_6 }
	province_modifier = {
		<modifier>
	}

	### Brief: ai_value ( script value )
	# How desirable is the building for the AI. Evaluated alongside 
	# regular buildings. 
	#
	# Available scopes:
	# 	root -- Domicile it is built in
	#	scope:owner -- Owner of the Domicile
	# 
	ai_value = {
		value = 100
	}

	### Brief: asset ( asset definition )
	# Which asset does the building use
	#
	asset = {
	
		### Brief: trigger ( trigger )
		# Trigger for scoped domicile when to pick this asset over
		# another, remove it to always pick this asset
		#
		trigger = { ... }

		### Brief: icon ( string path )
		# Building icon used in UI
		#
		icon = "path/to/image.dds"

		### Brief: texture ( string path )
		# Path to texture shown in the domicile window
		#
		texture = "path/to/image.dds"

		### Brief: intersectionmask_texture ( string path )
		# Mask used with texture
		#
		intersectionmask_texture = "path/to/mask.png"

		### Brief: soundeffect ( string soundbank reference )
		# Associated sound effect. Supports soundparameters where they 
		# will be automatically appended based on building's current
		# tier: soundparameter = { "Tier" = 1 }
		#
		soundeffect = "event:/DLC/EP2/SFX/UI/Grand_Activity/Tournaments/ep2_ui_grand_tournament_farrier"
	}
}
