﻿namespace = at_decision_events

scripted_effect at_1020_sell_artifact_effect = {
	# Save permanent scopes for at_buy_artifact_interaction_effect
	save_scope_as = actor
	save_scope_as = seller
	$MERCHANT$ = { save_scope_as = buyer }
	$ARTIFACT$ = { save_scope_as = artifact }

	at_buy_artifact_interaction_effect = {
		ARTIFACT_PRICE = scope:artifact.at_artifact_bid_price_value
	}

	# Clear permanent scopes
	clear_saved_scope = actor
	clear_saved_scope = seller
	clear_saved_scope = buyer
	clear_saved_scope = artifact
}

scripted_trigger at_1020_ai_will_sell_artifact_trigger = {
	save_temporary_scope_as = actor
	save_temporary_scope_as = seller
	$MERCHANT$ = { save_temporary_scope_as = buyer }
	$ARTIFACT$ = { save_temporary_scope_as = artifact }
	save_temporary_opinion_value_as = { name = opinion_of_buyer target = scope:buyer }
	at_sell_artifact_ai_will_do_value > 0
}

scripted_effect at_1020_cleanup_effect = {
	# Remove vanilla artifact variables
	scope:first_artifact ?= {
		at_1020_remove_sell_variables_effect = yes
		at_1020_remove_bid_price_multiplier_effect = yes
	}
	scope:second_artifact ?= {
		at_1020_remove_sell_variables_effect = yes
		at_1020_remove_bid_price_multiplier_effect = yes
	}
	scope:third_artifact ?= {
		at_1020_remove_sell_variables_effect = yes
		at_1020_remove_bid_price_multiplier_effect = yes
	}
}

scripted_effect at_1020_add_sell_variables_effect = {
	root = { save_temporary_scope_as = actor }
	root = { save_temporary_scope_as = seller }
	$MERCHANT$ = { save_temporary_scope_as = buyer }
	save_temporary_scope_as = artifact

	remove_variable = at_bid_price_multiplier
	set_variable = {
		name = 1020_artifact_sell_value
		value = {
			value = scope:artifact.at_artifact_bid_price_value
			max = $MERCHANT$.at_short_term_gold_value
		}
		days = 1
	}
	set_variable = { name = at_bid_price_multiplier value = 1.2 }
	set_variable = {
		name = 1020_artifact_sell_high_value
		value = {
			value = scope:artifact.at_artifact_bid_price_value
			max = $MERCHANT$.at_short_term_gold_value
		}
		days = 1
	}
	set_variable = { name = at_bid_price_multiplier value = 0.8 }
	set_variable = {
		name = 1020_artifact_sell_low_value
		value = {
			value = scope:artifact.at_artifact_bid_price_value
			max = $MERCHANT$.at_short_term_gold_value
		}
		days = 1
	}
	remove_variable = at_bid_price_multiplier
}

scripted_effect at_1020_remove_sell_variables_effect = {
	remove_variable = 1020_artifact_sell_value
	remove_variable = 1020_artifact_sell_high_value
	remove_variable = 1020_artifact_sell_low_value
}

scripted_effect at_1020_set_bid_price_multiplier_effect = {
	if = {
		limit = { scope:attempted_artifact_haggle ?= flag:success }
		set_variable = { name = at_bid_price_multiplier value = 1.2 }
	}
	else_if = {
		limit = { scope:attempted_artifact_haggle ?= flag:failure }
		set_variable = { name = at_bid_price_multiplier value = 0.8 }
	}
	else = {
		remove_variable = at_bid_price_multiplier
	}
}

scripted_effect at_1020_remove_bid_price_multiplier_effect = {
	remove_variable = at_bid_price_multiplier
}

# Visiting Location: No Questions Asked
# Rewrite of ep3_laamp_decision_event.1020
# Needs scopes:
# * visiting_location
# * visiting_partner
# * been_to_peddler_sell_screen - If set, use for loc
# Sets scopes:
# * artifact_peddler - Merchant
# * first_artifact, second_artifact, third_artifact - Artifacts to sell
# * outraged_partner - Visiting partner if outraged
# * recurring_artifact_peddler - Merchant if already visited before
# * attempted_artifact_haggle - Set to flag:success if a haggle was a success, flag:failure if not
# * been_to_peddler - Set to yes (to specify that any of the peddler events has already been triggered)
# * sold_artifact - Set to yes if an artifact has been sold
# * last_location - Set to flag:artifact_peddler
#
at_decision_events.1020 = {
	type = character_event
	title = ep3_laamp_decision_event.1020.t
	window = visit_settlement_window

	desc = {
		# Intro
		first_valid = {
			triggered_desc = {
				trigger = {
					NOT = { exists = scope:been_to_peddler }
					exists = scope:recurring_artifact_peddler
				}
				desc = ep3_laamp_decision_event.1020.desc_intro_reused_peddler
			}
			triggered_desc = {
				trigger = {
					NOT = { exists = scope:been_to_peddler }
					scope:visiting_location = { vls_has_city_like_holding_trigger = yes }
				}
				desc = ep3_laamp_decision_event.1020.desc_intro_posh_stalls
			}
			random_valid = {
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
					}
					desc = ep3_laamp_decision_event.1020.desc_intro_new_01
				}
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
					}
					desc = ep3_laamp_decision_event.1020.desc_intro_new_02
				}
			}
			random_valid = {
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler_sell_screen }
					}
					desc = ep3_laamp_decision_event.1020.desc_intro_returned_01
				}
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler_sell_screen }
					}
					desc = ep3_laamp_decision_event.1020.desc_intro_returned_02
				}
			}
			random_valid = {
				triggered_desc = {
					desc = ep3_laamp_decision_event.1020.desc_intro_intermediate_returned_01
				}
				triggered_desc = {
					desc = ep3_laamp_decision_event.1020.desc_intro_intermediate_returned_02
				}
			}
		}

		# Artifact flavor
		first_valid = {
			# One artifact
			random_valid = {
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
						exists = scope:first_artifact
						NOT = { exists = scope:second_artifact }
						NOT = { exists = scope:third_artifact }
					}
					desc = ep3_laamp_decision_event.1020.desc_one_artifact_new_01
				}
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
						exists = scope:first_artifact
						NOT = { exists = scope:second_artifact }
						NOT = { exists = scope:third_artifact }
					}
					desc = ep3_laamp_decision_event.1020.desc_one_artifact_new_02
				}
			}
			# Two artifacts
			random_valid = {
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
						exists = scope:first_artifact
						exists = scope:second_artifact
						NOT = { exists = scope:third_artifact }
					}
					desc = ep3_laamp_decision_event.1020.desc_two_artifacts_new_01
				}
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
						exists = scope:first_artifact
						exists = scope:second_artifact
						NOT = { exists = scope:third_artifact }
					}
					desc = ep3_laamp_decision_event.1020.desc_two_artifacts_new_02
				}
			}
			# Three artifacts
			random_valid = {
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
						exists = scope:first_artifact
						exists = scope:second_artifact
						exists = scope:third_artifact
					}
					desc = ep3_laamp_decision_event.1020.desc_three_artifacts_new_01
				}
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
						exists = scope:first_artifact
						exists = scope:second_artifact
						exists = scope:third_artifact
					}
					desc = ep3_laamp_decision_event.1020.desc_three_artifacts_new_02
				}
			}
		}

		# Visiting partner flavor
		first_valid = {
			triggered_desc = {
				trigger = {
					exists = scope:been_to_peddler
					exists = scope:outraged_partner
				}
				desc = ep3_laamp_decision_event.1020.desc_outraged_partner_returned
			}
			triggered_desc = {
				trigger = { exists = scope:outraged_partner }
				desc = ep3_laamp_decision_event.1020.desc_outraged_partner_new
			}
		}
	}

	theme = stewardship
	override_background = { reference = ep2_village_festival }

	# Visiting partner
	left_portrait = {
		trigger = { exists = scope:visiting_partner }
		character = scope:visiting_partner
		triggered_animation = {
			trigger = { exists = scope:outraged_partner }
			animation = rage
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_friendly_traits_trigger = yes }
			}
			animation = personality_forgiving
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_commerce_traits_trigger = yes }
			}
			animation = personality_greedy
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_uninterested_traits_trigger = yes }
			}
			animation = personality_cynical
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_irrational_traits_trigger = yes }
			}
			animation = personality_irrational
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_standoffish_traits_trigger = yes }
			}
			animation = personality_coward
		}
		animation = personality_compassionate
	}

	# Root
	center_portrait = {
		character = root
		animation = thinking
	}

	# Artifact peddler
	right_portrait = {
		character = scope:artifact_peddler
		triggered_animation = {
			trigger = {
				scope:artifact_peddler = { vls_has_friendly_traits_trigger = yes }
			}
			animation = personality_compassionate
		}
		triggered_animation = {
			trigger = {
				scope:artifact_peddler = { vls_has_uninterested_traits_trigger = yes }
			}
			animation = personality_callous
		}
		triggered_animation = {
			trigger = {
				scope:artifact_peddler = { vls_has_commerce_traits_trigger = yes }
			}
			animation = admiration
		}
		triggered_animation = {
			trigger = {
				scope:artifact_peddler = { vls_has_standoffish_traits_trigger = yes }
			}
			animation = personality_coward
		}
		triggered_animation = {
			trigger = {
				scope:artifact_peddler = { vls_has_irrational_traits_trigger = yes }
			}
			animation = personality_irrational
		}
		animation = personality_forgiving
	}

	# Artifacts
	artifact = {
		trigger = { exists = scope:first_artifact }
		target = scope:first_artifact
		position = lower_left_portrait
	}
	artifact = {
		trigger = { exists = scope:second_artifact }
		target = scope:second_artifact
		position = lower_center_portrait
	}
	artifact = {
		trigger = { exists = scope:third_artifact }
		target = scope:third_artifact
		position = lower_right_portrait
	}

	immediate = {
		# If visiting partner is better at stewardship, make them outraged
		if = {
			limit = {
				NOT = { exists = scope:outraged_partner }
				scope:visiting_partner ?= {
					stewardship > root.stewardship
					stewardship >= average_skill_rating
				}
			}
			scope:visiting_partner = {
				save_scope_as = outraged_partner
			}
		}

		# Find artifact peddler
		if = {
			limit = {
				NOT = { exists = scope:artifact_peddler }
			}
			at_get_merchant_effect = {
				TYPE = peddler
				LOCATION = scope:visiting_location
				CHARACTER = root
				MERCHANT = artifact_peddler
			}
			if = {
				limit = {
					NOT = { exists = scope:recurring_artifact_peddler }
				}
				hidden_effect = {
					scope:artifact_peddler = {
						at_add_merchant_gold_effect = { LOCATION = scope:visiting_location }
					}
				}
			}
		}

		# Remember the artifact peddler
		vls_remember_merchant_character_effect = {
			TYPE = peddler
			CHARACTER = scope:artifact_peddler
		}

		# Find artifacts to sell
		if = {
			limit = {
				NOR = {
					exists = scope:first_artifact
					exists = scope:second_artifact
					exists = scope:third_artifact
				}
			}

			# Get artifact list
			every_character_artifact = {
				limit = { at_is_unsellable_artifact_trigger = no }
				add_to_temporary_list = artifacts_to_sell
			}

			# Save artifact scopes
			# Prefer unequipped and marked artifacts, over just unequipped, over others
			if = {
				limit = {
					any_in_list = {
						list = artifacts_to_sell
					}
				}
				random_in_list = {
					list = artifacts_to_sell
					limit = {
						has_variable = at_artifact_to_sell
						is_equipped = no
					}
					alternative_limit = {
						is_equipped = no
					}
					alternative_limit = {
					}
					set_variable = {
						name = at_artifact_to_sell
						days = visit_settlement_cooldown_days
					}
					save_scope_as = first_artifact
				}
			}
			if = {
				limit = {
					any_in_list = {
						list = artifacts_to_sell
						this != scope:first_artifact
					}
				}
				random_in_list = {
					list = artifacts_to_sell
					limit = {
						this != scope:first_artifact
						has_variable = at_artifact_to_sell
						is_equipped = no
					}
					alternative_limit = {
						this != scope:first_artifact
						is_equipped = no
					}
					alternative_limit = {
						this != scope:first_artifact
					}
					set_variable = {
						name = at_artifact_to_sell
						days = visit_settlement_cooldown_days
					}
					save_scope_as = second_artifact
				}
			}
			if = {
				limit = {
					any_in_list = {
						list = artifacts_to_sell
						NOR = {
							this = scope:first_artifact
							this = scope:second_artifact
						}
					}
				}
				random_in_list = {
					list = artifacts_to_sell
					limit = {
						NOR = {
							this = scope:first_artifact
							this = scope:second_artifact
						}
						has_variable = at_artifact_to_sell
						is_equipped = no
					}
					alternative_limit = {
						NOR = {
							this = scope:first_artifact
							this = scope:second_artifact
						}
						is_equipped = no
					}
					alternative_limit = {
						NOR = {
							this = scope:first_artifact
							this = scope:second_artifact
						}
					}
					set_variable = {
						name = at_artifact_to_sell
						days = visit_settlement_cooldown_days
					}
					save_scope_as = third_artifact
				}
			}
		}

		# Save vanilla scopes and add vanilla variables for localization
		scope:artifact_peddler = { save_scope_as = laamp_artifact_peddler }
		scope:first_artifact ?= {
			save_scope_as = 1020_first_artifact_to_sell
			at_1020_add_sell_variables_effect = { MERCHANT = scope:artifact_peddler }
		}
		scope:second_artifact ?= {
			save_scope_as = 1020_second_artifact_to_sell
			at_1020_add_sell_variables_effect = { MERCHANT = scope:artifact_peddler }
		}
		scope:third_artifact ?= {
			save_scope_as = 1020_third_artifact_to_sell
			at_1020_add_sell_variables_effect = { MERCHANT = scope:artifact_peddler }
		}

		# Determine artifact outraged partner wants to sell
		if = {
			limit = { exists = scope:outraged_partner }
			random_list = {
				50 = {
					trigger = { exists = scope:first_artifact }
					scope:first_artifact = { save_scope_as = outraged_partner_artifact }
				}
				50 = {
					trigger = { exists = scope:second_artifact }
					scope:second_artifact = { save_scope_as = outraged_partner_artifact }
				}
				50 = {
					trigger = { exists = scope:third_artifact }
					scope:third_artifact = { save_scope_as = outraged_partner_artifact }
				}
			}
			scope:outraged_partner_artifact ?= {
				set_variable = { name = at_bid_price_multiplier value = 1.2 }
			}
		}
	}

	# Proceed to sell screen
	option = {
		name = ep3_laamp_decision_event.1020.a
		custom_tooltip = ep3_laamp_decision_event.1020.a.tt

		trigger = {
			scope:artifact_peddler = {
				short_term_gold >= 1
			}
		}
		show_as_unavailable = {
			always = yes
		}

		# Show default artifact prices
		if = {
			limit = { exists = scope:first_artifact }
			custom_tooltip = ep3_laamp_decision_event.1020.a.first_artifact.tt
		}
		if = {
			limit = { exists = scope:second_artifact }
			custom_tooltip = ep3_laamp_decision_event.1020.a.second_artifact.tt
		}
		if = {
			limit = { exists = scope:third_artifact }
			custom_tooltip = ep3_laamp_decision_event.1020.a.third_artifact.tt
		}

		# Show eagle price
		if = {
			limit = {
				at_can_laamp_sell_eagle_trigger = yes
			}
			custom_tooltip = ep3_laamp_decision_event.1020.eagle.tt
			custom_tooltip = ep3_laamp_decision_event.1020.eagle.price_tt
		}

		# Go to sell screen
		trigger_event = at_decision_events.1021

		ai_chance = {
			base = 0
			modifier = {
				OR = {
					AND = {
						exists = scope:first_artifact
						at_1020_ai_will_sell_artifact_trigger = {
							MERCHANT = scope:artifact_peddler
							ARTIFACT = scope:first_artifact
						}
					}
					AND = {
						exists = scope:second_artifact
						at_1020_ai_will_sell_artifact_trigger = {
							MERCHANT = scope:artifact_peddler
							ARTIFACT = scope:second_artifact
						}
					}
					AND = {
						exists = scope:third_artifact
						at_1020_ai_will_sell_artifact_trigger = {
							MERCHANT = scope:artifact_peddler
							ARTIFACT = scope:third_artifact
						}
					}
					at_can_laamp_sell_eagle_trigger = yes
				}
				add = 100
			}
		}
	}

	# Attempt a haggle
	option = {
		name = ep3_laamp_decision_event.1020.b

		trigger = {
			exists = scope:first_artifact
			scope:artifact_peddler = {
				short_term_gold >= 1
			}
			custom_tooltip = {
				text = ep3_laamp_decision_event.1020.b.cooldown.tt
				NOT = { has_variable = 1020_has_haggled_recently }
			}
		}
		show_as_unavailable = {
			exists = scope:first_artifact
		}

		at_debug_log_effect = { MSG = at_debug_msg_attempting_artifact_haggle }

		duel = {
			skill = stewardship
			target = scope:artifact_peddler
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				desc = ep3_laamp_decision_event.1020.b.success
				send_interface_toast = {
					title = ep3_laamp_decision_event.1020.b.success
					left_icon = root
					right_icon = scope:artifact_peddler

					# Show higher artifact prices
					custom_tooltip = ep3_laamp_decision_event.1020.b.success.first_artifact.tt
					if = {
						limit = { exists = scope:second_artifact }
						custom_tooltip = ep3_laamp_decision_event.1020.b.success.second_artifact.tt
					}
					if = {
						limit = { exists = scope:third_artifact }
						custom_tooltip = ep3_laamp_decision_event.1020.b.success.third_artifact.tt
					}

					save_scope_value_as = { name = attempted_artifact_haggle value = flag:success }
					if = {
						limit = { has_lifestyle = stewardship_lifestyle }
						add_stewardship_lifestyle_xp = medium_lifestyle_xp
					}
					stress_impact = {
						greedy = minor_stress_impact_loss
						ambitious = minor_stress_impact_loss
					}

					# Go to sell screen
					trigger_event = at_decision_events.1021
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -20
				}
				desc = ep3_laamp_decision_event.1020.b.failure
				send_interface_toast = {
					title = ep3_laamp_decision_event.1020.b.failure
					left_icon = root
					right_icon = scope:artifact_peddler

					# Show lower artifact prices
					custom_tooltip = ep3_laamp_decision_event.1020.b.failure.first_artifact.tt
					if = {
						limit = { exists = scope:second_artifact }
						custom_tooltip = ep3_laamp_decision_event.1020.b.failure.second_artifact.tt
					}
					if = {
						limit = { exists = scope:third_artifact }
						custom_tooltip = ep3_laamp_decision_event.1020.b.failure.third_artifact.tt
					}

					save_scope_value_as = { name = attempted_artifact_haggle value = flag:failure }
					stress_impact = {
						base = minor_stress_impact_gain
						greedy = minor_stress_impact_gain
					}

					# Go to sell screen
					trigger_event = at_decision_events.1021
				}
			}
		}

		set_variable = {
			name = 1020_has_haggled_recently
			days = visit_settlement_minimum_cooldown_days
		}

		ai_chance = {
			base = 100
			modifier = {
				factor = {
					value = stewardship
					divide = {
						value = scope:artifact_peddler.stewardship
						min = 1
					}
				}
			}
		}
	}

	# Sell random artifact at a higher price via outraged partner
	option = {
		name = ep3_laamp_decision_event.1020.c

		trigger = {
			exists = scope:outraged_partner
			exists = scope:outraged_partner_artifact
			scope:artifact_peddler = {
				short_term_gold >= 1
			}
		}
		show_as_unavailable = {
			exists = scope:outraged_partner
			exists = scope:outraged_partner_artifact
		}

		at_debug_log_effect = { MSG = at_debug_msg_selling_artifact_via_outraged_partner }

		# Sell random artifact at higher price
		if = {
			limit = { scope:first_artifact ?= scope:outraged_partner_artifact }
			custom_tooltip = ep3_laamp_decision_event.1020.c.first_artifact
		}
		else_if = {
			limit = { scope:second_artifact ?= scope:outraged_partner_artifact }
			custom_tooltip = ep3_laamp_decision_event.1020.c.second_artifact
		}
		else_if = {
			limit = { scope:third_artifact ?= scope:outraged_partner_artifact }
			custom_tooltip = ep3_laamp_decision_event.1020.c.third_artifact
		}
		at_1020_sell_artifact_effect = {
			MERCHANT = scope:artifact_peddler
			ARTIFACT = scope:outraged_partner_artifact
		}

		# Cleanup variables and update scopes
		at_1020_cleanup_effect = yes
		save_scope_value_as = { name = sold_artifact value = yes }
		save_scope_value_as = { name = been_to_peddler value = yes }
		save_scope_value_as = { name = last_location value = flag:artifact_peddler }

		stress_impact = {
			diligent = minor_stress_impact_gain
			lazy = minor_stress_impact_loss
		}

		# Go back to main square
		custom_tooltip = ep3_laamp_decision_event.return.tt
		trigger_event = at_decision_events.1000

		ai_chance = {
			base = 0
			modifier = {
				at_1020_ai_will_sell_artifact_trigger = {
					MERCHANT = scope:artifact_peddler
					ARTIFACT = scope:outraged_partner_artifact
				}
				add = 200
			}
			modifier = {
				has_trait = diligent
				factor = 0.5
			}
			modifier = {
				has_trait = lazy
				factor = 2
			}
		}
	}

	# Do something else
	option = {
		name = ep3_laamp_decision_event.1020.d

		# Cleanup variables and update scopes
		at_1020_cleanup_effect = yes
		save_scope_value_as = { name = been_to_peddler value = yes }
		save_scope_value_as = { name = last_location value = flag:artifact_peddler }

		# Go back to main square
		custom_tooltip = ep3_laamp_decision_event.return.tt
		trigger_event = at_decision_events.1000

		ai_chance = { base = 50 }
	}
}

# Visiting Location: Parting Time
# Rewrite of ep3_laamp_decision_event.1021
# Needs scopes:
# * visiting_location
# * visiting_partner
# * artifact_peddler - Merchant
# * first_artifact, second_artifact, third_artifact - Artifacts to sell
# * outraged_partner - Visiting partner if outraged
# * attempted_artifact_haggle - If set, use for loc and prices
# Sets scopes:
# * been_to_peddler - Set to yes (to specify that any of the peddler events has already been triggered)
# * been_to_peddler_sell_screen - Set to yes (to specify that the event has already been triggered)
# * sold_artifact - Set to yes if an artifact has been sold
# * last_location - Set to flag:artifact_peddler
#
at_decision_events.1021 = {
	type = character_event
	window = visit_settlement_window

	title = {
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:attempted_artifact_haggle ?= flag:success
				}
				desc = ep3_laamp_decision_event.1021.t_success
			}
			triggered_desc = {
				trigger = {
					scope:attempted_artifact_haggle ?= flag:failure
				}
				desc = ep3_laamp_decision_event.1021.t_failure
			}
			desc = ep3_laamp_decision_event.1021.t
		}
	}

	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					NOT = { exists = scope:been_to_peddler }
					scope:attempted_artifact_haggle ?= flag:success
				}
				desc = ep3_laamp_decision_event.1021.desc_success
			}
			triggered_desc = {
				trigger = {
					NOT = { exists = scope:been_to_peddler }
					scope:attempted_artifact_haggle ?= flag:failure
				}
				desc = ep3_laamp_decision_event.1021.desc_failure
			}
			random_valid = {
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
					}
					desc = ep3_laamp_decision_event.1021.desc_moment_of_purchase_01
				}
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler }
					}
					desc = ep3_laamp_decision_event.1021.desc_moment_of_purchase_02
				}
			}
			random_valid = {
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler_sell_screen }
					}
					desc = ep3_laamp_decision_event.1020.desc_intro_returned_01
				}
				triggered_desc = {
					trigger = {
						NOT = { exists = scope:been_to_peddler_sell_screen }
					}
					desc = ep3_laamp_decision_event.1020.desc_intro_returned_02
				}
			}
			random_valid = {
				triggered_desc = {
					desc = ep3_laamp_decision_event.1020.desc_intro_intermediate_returned_01
				}
				triggered_desc = {
					desc = ep3_laamp_decision_event.1020.desc_intro_intermediate_returned_02
				}
			}
		}
	}

	theme = stewardship
	override_background = { reference = ep2_village_festival }

	# Visiting partner
	left_portrait = {
		trigger = { exists = scope:visiting_partner }
		character = scope:visiting_partner
		triggered_animation = {
			trigger = { exists = scope:outraged_partner }
			animation = rage
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_friendly_traits_trigger = yes }
			}
			animation = personality_forgiving
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_commerce_traits_trigger = yes }
			}
			animation = personality_greedy
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_uninterested_traits_trigger = yes }
			}
			animation = personality_cynical
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_irrational_traits_trigger = yes }
			}
			animation = personality_irrational
		}
		triggered_animation = {
			trigger = {
				scope:visiting_partner = { vls_has_standoffish_traits_trigger = yes }
			}
			animation = personality_coward
		}
		animation = personality_compassionate
	}

	# Root
	center_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				scope:attempted_artifact_haggle ?= flag:failure
			}
			animation = shame
		}
		triggered_animation = {
			trigger = {
				at_can_laamp_sell_eagle_trigger = yes
			}
			animation = hunting_falcon
		}
		animation = thinking
	}

	# Artifact peddler
	right_portrait = {
		character = scope:artifact_peddler
		triggered_animation = {
			trigger = { exists = scope:attempted_artifact_haggle }
			animation = disapproval
		}
		animation = steward
	}

	# Artifacts
	artifact = {
		trigger = { exists = scope:first_artifact }
		target = scope:first_artifact
		position = lower_left_portrait
	}
	artifact = {
		trigger = { exists = scope:second_artifact }
		target = scope:second_artifact
		position = lower_center_portrait
	}
	artifact = {
		trigger = { exists = scope:third_artifact }
		target = scope:third_artifact
		position = lower_right_portrait
	}

	immediate = {
		scope:first_artifact ?= {
			at_1020_set_bid_price_multiplier_effect = yes
		}
		scope:second_artifact ?= {
			at_1020_set_bid_price_multiplier_effect = yes
		}
		scope:third_artifact ?= {
			at_1020_set_bid_price_multiplier_effect = yes
		}
	}

	# Sell first artifact
	option = {
		name = ep3_laamp_decision_event.1021.a

		trigger = {
			exists = scope:first_artifact
		}

		# Actually sell the artifact
		at_1020_sell_artifact_effect = {
			MERCHANT = scope:artifact_peddler
			ARTIFACT = scope:first_artifact
		}

		# Cleanup variables and update scopes
		at_1020_cleanup_effect = yes
		save_scope_value_as = { name = sold_artifact value = yes }
		save_scope_value_as = { name = been_to_peddler value = yes }
		save_scope_value_as = { name = been_to_peddler_sell_screen value = yes }
		save_scope_value_as = { name = last_location value = flag:artifact_peddler }

		# Go back to main square
		custom_tooltip = ep3_laamp_decision_event.return.tt
		trigger_event = at_decision_events.1000

		ai_chance = {
			base = 0
			modifier = {
				at_1020_ai_will_sell_artifact_trigger = {
					MERCHANT = scope:artifact_peddler
					ARTIFACT = scope:first_artifact
				}
				add = 100
			}
		}
	}

	# Sell second artifact
	option = {
		name = ep3_laamp_decision_event.1021.b

		trigger = {
			exists = scope:second_artifact
		}

		# Actually sell the artifact
		at_1020_sell_artifact_effect = {
			MERCHANT = scope:artifact_peddler
			ARTIFACT = scope:second_artifact
		}

		# Cleanup variables and update scopes
		at_1020_cleanup_effect = yes
		save_scope_value_as = { name = sold_artifact value = yes }
		save_scope_value_as = { name = been_to_peddler value = yes }
		save_scope_value_as = { name = been_to_peddler_sell_screen value = yes }
		save_scope_value_as = { name = last_location value = flag:artifact_peddler }

		# Go back to main square
		custom_tooltip = ep3_laamp_decision_event.return.tt
		trigger_event = at_decision_events.1000

		ai_chance = {
			base = 0
			modifier = {
				at_1020_ai_will_sell_artifact_trigger = {
					MERCHANT = scope:artifact_peddler
					ARTIFACT = scope:second_artifact
				}
				add = 100
			}
		}
	}

	# Sell third artifact
	option = {
		name = ep3_laamp_decision_event.1021.c

		trigger = {
			exists = scope:third_artifact
		}

		# Actually sell the artifact
		at_1020_sell_artifact_effect = {
			MERCHANT = scope:artifact_peddler
			ARTIFACT = scope:third_artifact
		}

		# Cleanup variables and update scopes
		at_1020_cleanup_effect = yes
		save_scope_value_as = { name = sold_artifact value = yes }
		save_scope_value_as = { name = been_to_peddler value = yes }
		save_scope_value_as = { name = been_to_peddler_sell_screen value = yes }
		save_scope_value_as = { name = last_location value = flag:artifact_peddler }

		# Go back to main square
		custom_tooltip = ep3_laamp_decision_event.return.tt
		trigger_event = at_decision_events.1000

		ai_chance = {
			base = 0
			modifier = {
				at_1020_ai_will_sell_artifact_trigger = {
					MERCHANT = scope:artifact_peddler
					ARTIFACT = scope:third_artifact
				}
				add = 100
			}
		}
	}

	option = {
		name = ep3_laamp_decision_event.1021.eagle

		trigger = {
			at_can_laamp_sell_eagle_trigger = yes
		}

		# Actually sell the eagle
		at_debug_log_effect = { MSG = at_debug_msg_selling_eagle }
		scope:artifact_peddler = {		
			pay_short_term_gold = {
				gold = root.hunting_eagle_sell_value
				target = root
			}
		}
		transfer_eagle_effect = {
			RECIPIENT = scope:artifact_peddler
			GIVER = root
			METHOD = market
		}

		# Stress impact
		stress_impact = {
			base = minor_stress_impact_gain
			greedy = minor_stress_impact_loss
			generous = minor_stress_impact_gain
			callous = minor_stress_impact_loss
			sadistic = minor_stress_impact_loss
			compassionate = minor_stress_impact_gain
		}

		# Cleanup variables and update scopes
		at_1020_cleanup_effect = yes
		save_scope_value_as = { name = sold_artifact value = yes }
		save_scope_value_as = { name = been_to_peddler value = yes }
		save_scope_value_as = { name = been_to_peddler_sell_screen value = yes }
		save_scope_value_as = { name = last_location value = flag:artifact_peddler }

		# Go back to main square
		custom_tooltip = ep3_laamp_decision_event.return.tt
		trigger_event = at_decision_events.1000

		ai_chance = {
			base = 1
			ai_value_modifier = {
				ai_greed = 0.5
				ai_compassion = -0.5
			}
			modifier = {
				gold < 0
				add = 50
			}
			modifier = {
				has_character_modifier = weak_eagle_modifier
				add = 20
			}
			modifier = {
				has_character_modifier = very_weak_eagle_modifier
				add = 50
			}
			modifier = {
				eagle_is_old_trigger = yes
				add = 50
			}
			modifier = {
				OR = {
					has_character_modifier = strong_eagle_modifier
					has_eagle_personality_trait_trigger = yes
				}
				add = -50
			}
		}
	}

	# Do something else
	option = {
		name = {
			text = {
				first_valid = {
					triggered_desc = {
						trigger = { exists = scope:attempted_artifact_haggle }
						desc = ep3_laamp_decision_event.1020.d
					}
					desc = ep3_laamp_decision_event.1021.d
				}
			}
		}

		# Cleanup variables and update scopes
		at_1020_cleanup_effect = yes
		save_scope_value_as = { name = been_to_peddler value = yes }
		save_scope_value_as = { name = been_to_peddler_sell_screen value = yes }
		save_scope_value_as = { name = last_location value = flag:artifact_peddler }

		# Go back to main square or previous screen
		if = {
			limit = { exists = scope:attempted_artifact_haggle }
			custom_tooltip = ep3_laamp_decision_event.return.tt
			trigger_event = at_decision_events.1000
		}
		else = {
			trigger_event = at_decision_events.1020
		}

		ai_chance = {
			base = 1
		}
	}
}