﻿namespace = ep2_accolade_events

############################
## Accolade Events
## 0200-999
## by Jason Cantalini
############################

# ep2_accolade_events.0100 - Hunter gives you and/or your heir the hunter trait
# ep2_accolade_events.0200 - Blademaster gives you and/or your heir the Blademaster trait
# ep2_accolade_events.0300 - Master of Revels gives you and/or your heir the Reveler trait

scripted_trigger ep2_accolade_events_0100_hunting_knight_trigger = {
	accolade ?= {
		is_accolade_active = yes
		has_accolade_parameter = acclaimed_knight_trains_hunting
	}
	is_healthy = yes
	is_imprisoned = no
	OR = {
		AND = {
			is_available = yes
			root = { is_available = yes }
		}
		AND = {
			is_available = yes
			root.primary_heir ?= { is_available = yes }
		}
		location = root.location
		root.primary_heir.location ?= location
	}
}

# Huntsmaster shares the Hunter trait with your line
ep2_accolade_events.0100 = {
	type = character_event
	title = ep2_accolade_events.0100.t
	desc = {
		desc = ep2_accolade_events.0100.desc
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:new_hunter = {
						this = root
					}
					scope:new_hunter_2 = {
						this = root.primary_heir
					}
				}
				desc = ep2_accolade_events.0100.desc.both
			}
			triggered_desc = {
				trigger = {
					scope:new_hunter = {
						this = root.primary_heir
					}
				}
				desc = ep2_accolade_events.0100.desc.heir
			}
			triggered_desc = {
				trigger = {
					scope:new_hunter = {
						this = root
					}
				}
				desc = ep2_accolade_events.0100.desc.liege
			}
		}
	}
	theme = hunt_activity
	left_portrait = {
		character = scope:new_hunter
		animation = hunting_horn
	}
	right_portrait = {
		character = scope:huntsmaster
		animation = war_over_win
	}
	lower_right_portrait = {
		character = scope:new_hunter_2
	}

	trigger = {
		has_dlc_feature = accolades
		any_active_accolade = {
			accolade_parameter = acclaimed_knight_trains_hunting
		}
		OR = {
			NOT = {
				has_trait = lifestyle_hunter
			}
			AND = {
				primary_heir ?= {
					NOT = {
						has_trait = lifestyle_hunter
					}
				}
			}
		}
		any_knight = {
			ep2_accolade_events_0100_hunting_knight_trigger = yes
		}
		trigger_if = {
			limit = {
				NOT = {
					has_trait = lifestyle_hunter
				}
			}
			OR = {
				is_available = yes
				involved_activity ?= { has_activity_type = activity_hunt }
			}
			is_healthy = yes
			is_imprisoned = no
			age >= 13
		}
		trigger_else = {
			primary_heir ?= {
				NOT = {
					has_trait = lifestyle_hunter
				}
			}
			primary_heir = {
				OR = {
					is_available = yes
					involved_activity ?= { has_activity_type = activity_hunt }
				}
				is_healthy = yes
				is_ai = yes
				is_imprisoned = no
				age >= 13
				is_courtier_of = root
			}
		}
	}

	immediate = {
		random_knight = {
			limit = {
				ep2_accolade_events_0100_hunting_knight_trigger = yes
			}
			save_scope_as = huntsmaster
		}
		if = {
			limit = {
				NOT = {
					has_trait = lifestyle_hunter
				}
				OR = {
					is_available = yes
					involved_activity ?= { has_activity_type = activity_hunt }
				}
				is_healthy = yes
				is_imprisoned = no
				age >= 13
			}
			save_scope_as = new_hunter
		}
		else_if = {
			limit = {
				primary_heir ?= {
					NOT = {
						has_trait = lifestyle_hunter
					}
					OR = {
						is_available = yes
						involved_activity ?= { has_activity_type = activity_hunt }
					}
					is_healthy = yes
					is_ai = yes
					is_imprisoned = no
					age >= 13
				}
			}
			primary_heir = {
				save_scope_as = new_hunter
			}
		}
		if = {
			limit = {
				scope:new_hunter = {
					this = root
				}
				primary_heir ?= {
					NOT = {
						has_trait = lifestyle_hunter
					}
					OR = {
						is_available = yes
						involved_activity ?= { has_activity_type = activity_hunt }
					}
					is_healthy = yes
					is_ai = yes
					is_imprisoned = no
					age >= 13
					is_courtier_of = root
				}
			}
			primary_heir = {
				save_scope_as = new_hunter_2
			}
		}
	}

	option = {
		name = ep2_accolade_events.0100.a
		scope:new_hunter = {
			add_trait = lifestyle_hunter
		}
		if = {
			limit = {
				exists = scope:new_hunter_2
			}
			scope:new_hunter_2 = {
				add_trait = lifestyle_hunter
			}
		}
		if = {
			limit = {
				culture = {
					OR = {
						has_cultural_tradition = tradition_bush_hunting
						has_cultural_tradition = tradition_hunters
						has_cultural_tradition = tradition_sacred_hunts
					}
				}
			}
			stress_impact = {
				base = miniscule_stress_impact_loss
				brave = miniscule_stress_impact_loss
				diligent = miniscule_stress_impact_loss
				lifestyle_hunter = miniscule_stress_impact_loss
			}
		}
		else = {
			stress_impact = {
				lifestyle_hunter = miniscule_stress_impact_loss
			}
		}
		ai_chance = {
			base = 100
		}
	}
}

scripted_trigger ep2_accolade_events_0200_blademaster_knight_trigger = {
	accolade ?= {
		is_accolade_active = yes
		has_accolade_parameter = acclaimed_knight_trains_swordfighting
	}
	is_healthy = yes
	is_imprisoned = no
	OR = {
		AND = {
			is_available = yes
			root = { is_available = yes }
		}
		AND = {
			is_available = yes
			root.primary_heir = { is_available = yes }
		}
		location = root.location
		location = root.primary_heir.location
	}
}

# Blademaster shares the Blademaster trait with your line
ep2_accolade_events.0200 = {
	type = character_event
	title = ep2_accolade_events.0200.t
	desc = {
		desc = ep2_accolade_events.0200.desc
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:new_blademaster = {
						this = root
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					exists = scope:new_blademaster_2
					scope:new_blademaster_2 = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				desc = ep2_accolade_events.0200.desc.both_not_martial
			}
			triggered_desc = {
				trigger = {
					scope:new_blademaster = {
						this = root
					}
					exists = scope:new_blademaster_2
					scope:new_blademaster_2 = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				desc = ep2_accolade_events.0200.desc.heir_not_martial
			}
			triggered_desc = {
				trigger = {
					scope:new_blademaster = {
						this = root
					}
					exists = scope:new_blademaster_2
					scope:new_blademaster_2 = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				desc = ep2_accolade_events.0200.desc.heir_not_martial
			}
			triggered_desc = {
				trigger = {
					scope:new_blademaster = {
						this = root
					}
					exists = scope:new_blademaster_2
				}
				desc = ep2_accolade_events.0200.desc.both
			}
			triggered_desc = {
				trigger = {
					scope:new_blademaster = {
						this = root.primary_heir
					}
				}
				desc = ep2_accolade_events.0200.desc.heir
			}
			triggered_desc = {
				trigger = {
					scope:new_blademaster = {
						this = root
					}
				}
				desc = ep2_accolade_events.0200.desc.liege
			}
		}
	}
	theme = martial
	override_background = {
		reference = courtyard
	}
	left_portrait = {
		trigger = {
			exists = scope:new_blademaster
		}
		character = scope:new_blademaster
		animation = marshal
	}
	right_portrait = {
		character = scope:acclaimed_blademaster
		animation = throne_room_one_handed_passive_1
	}
	lower_right_portrait = {
		character = scope:new_blademaster_2
	}

	trigger = {
		has_dlc_feature = accolades
		any_active_accolade = {
			accolade_parameter = acclaimed_knight_trains_swordfighting
		}
		OR = {
			NOT = {
				has_trait = lifestyle_blademaster
			}
			AND = {
				primary_heir ?= {
					NOT = {
						has_trait = lifestyle_blademaster
					}
				}
			}
		}
		any_knight = {
			ep2_accolade_events_0200_blademaster_knight_trigger = yes
		}
		trigger_if = {
			limit = {
				NOT = {
					has_trait = lifestyle_blademaster
				}
			}
			OR = {
				is_available = yes
				involved_activity ?= { has_activity_type = activity_tournament }
			}
			is_healthy = yes
			is_imprisoned = no
			age >= 13
			NOT = { has_character_flag = denied_blademaster_training }
		}
		trigger_else = {
			primary_heir ?= {
				NOT = {
					has_trait = lifestyle_blademaster
				}
			}
			OR = {
				primary_heir = {
					can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
				}
				primary_heir = {
					NOT = {
						can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
					}
					NOR = {
						has_trait = craven
						has_trait = lazy
						has_trait = content
					}
				}
			}
			primary_heir = {
				OR = {
					is_available = yes
					involved_activity ?= { has_activity_type = activity_tournament }
				}
				is_healthy = yes
				is_ai = yes
				is_imprisoned = no
				age >= 13
				is_courtier_of = root
				NOT = { has_character_flag = denied_blademaster_training }
			}
		}
	}

	immediate = {
		#save trainer knight
		random_knight = {
			limit = {
				ep2_accolade_events_0200_blademaster_knight_trigger = yes
			}
			save_scope_as = acclaimed_blademaster
		}
		#save non-blademaster liege
		if = {
			limit = {
				NOT = {
					has_trait = lifestyle_blademaster
				}
				OR = {
					is_available = yes
					involved_activity ?= { has_activity_type = activity_tournament }
				}
				is_healthy = yes
				is_imprisoned = no
				age >= 13
				NOT = { has_character_flag = denied_blademaster_training }
			}
			save_scope_as = new_blademaster
		}
		#save non-blademaster heir
		else = {
			primary_heir = {
				save_scope_as = new_blademaster
			}
		}
		#save non-blademaster heir, if liege exists
		if = {
			limit = {
				scope:new_blademaster = {
					this = root
				}
				primary_heir ?= {
					NOT = {
						has_trait = lifestyle_blademaster
					}
					OR = {
						is_available = yes
						involved_activity ?= { has_activity_type = activity_hunt }
					}
					is_healthy = yes
					is_ai = yes
					is_imprisoned = no
					age >= 13
					is_courtier_of = root
					NOT = { has_character_flag = denied_blademaster_training }
				}
			}
			primary_heir = {
				save_scope_as = new_blademaster_2
			}
		}
		scope:new_blademaster = {
			add_character_flag = wear_armor
		}
		scope:acclaimed_blademaster = {
			add_character_flag = wear_armor
		}
		scope:new_blademaster_2 ?= {
			add_character_flag = wear_armor
		}
	}

	# we're going to be blademasters
	option = {
		name = ep2_accolade_events.0200.a
		scope:new_blademaster = {
			add_trait = lifestyle_blademaster
		}
		if = {
			limit = {
				exists = scope:new_blademaster_2
			}
			scope:new_blademaster_2 = {
				add_trait = lifestyle_blademaster
			}
		}
		if = {
			limit = {
				OR = {
					scope:new_blademaster = {
					NOT = {
						can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
					}
				}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
			}
			add_piety = medium_piety_loss
			add_character_modifier = {
				modifier = defied_martial_custom_modifier
				years = 20
			}
		}
		if = {
			limit = {
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
				}
			}
			reverse_add_opinion = {
				modifier = grateful_opinion
				target = primary_heir
				opinion = 30
			}
		}
		if = {
			limit = {
				culture = {
					OR = {
						has_cultural_tradition = tradition_druzhina
						has_cultural_tradition = tradition_futuwaa
						has_cultural_tradition = tradition_khadga_puja
						has_cultural_tradition = tradition_talent_acquisition
						has_cultural_tradition = tradition_swords_for_hire
						has_cultural_tradition = tradition_warriors_by_merit
						has_cultural_tradition = tradition_only_the_strong
						has_cultural_tradition = tradition_martial_admiration
						has_cultural_tradition = tradition_fp1_trials_by_combat
						has_cultural_tradition = tradition_chanson_de_geste
					}
				}
			}
			stress_impact = {
				base = miniscule_stress_impact_loss
				sadistic = miniscule_stress_impact_loss
				brave = miniscule_stress_impact_loss
				ambitious = miniscule_stress_impact_loss
				wrathful = miniscule_stress_impact_loss
				lifestyle_blademaster = miniscule_stress_impact_loss
			}
		}
		else_if = {
			limit = {
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
			}
			stress_impact = {
				craven = major_stress_impact_gain
				lazy = major_stress_impact_gain
				content = major_stress_impact_gain
				zealous = minor_stress_impact_gain
				humble = minor_stress_impact_gain
				just = minor_stress_impact_gain
				lifestyle_blademaster = miniscule_stress_impact_loss
			}
		}
		else_if = {
			limit = {
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				culture = {
					OR = {
						has_cultural_tradition = tradition_druzhina
						has_cultural_tradition = tradition_futuwaa
						has_cultural_tradition = tradition_khadga_puja
						has_cultural_tradition = tradition_talent_acquisition
						has_cultural_tradition = tradition_swords_for_hire
						has_cultural_tradition = tradition_warriors_by_merit
						has_cultural_tradition = tradition_only_the_strong
						has_cultural_tradition = tradition_martial_admiration
						has_cultural_tradition = tradition_fp1_trials_by_combat
						has_cultural_tradition = tradition_chanson_de_geste
					}
				}
			}
			stress_impact = {
				base = miniscule_stress_impact_loss
				sadistic = miniscule_stress_impact_loss
				brave = miniscule_stress_impact_loss
				ambitious = miniscule_stress_impact_loss
				wrathful = miniscule_stress_impact_loss
				craven = major_stress_impact_gain
				lazy = major_stress_impact_gain
				content = major_stress_impact_gain
				zealous = minor_stress_impact_gain
				humble = minor_stress_impact_gain
				just = minor_stress_impact_gain
				lifestyle_blademaster = miniscule_stress_impact_loss
			}
		}
		else = {
			stress_impact = {
				lifestyle_blademaster = miniscule_stress_impact_loss
			}
		}
		ai_chance = {
			base = 100
			modifier = {
				add = -75
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				OR = {
					has_trait = zealous
					has_trait = humble
					has_trait = just
				}
			}
			modifier = {
				add = 100
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				OR = {
					has_trait = brave
					has_trait = ambitious
					has_trait = arrogant
					has_trait = arbitrary
					has_trait = cynical
				}
			}
			modifier = {
				factor = 0
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				OR = {
					has_trait = craven
					has_trait = lazy
					has_trait = content
				}
			}
		}
	}

	# better not defy gender norms
	option = {
		trigger = {
			OR = {
				scope:new_blademaster = {
					NOT = {
						can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
					}
				}
				scope:new_blademaster_2 ?= {
					NOT = {
						can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
					}
				}
			}
		}
		name = ep2_accolade_events.0200.b
		flavor = ep2_accolade_events.0200.b.tt
		if = {
			limit = {
				scope:new_blademaster = {
					can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
				}
			}
			scope:new_blademaster = {
				add_trait = lifestyle_blademaster
			}
		}
		else = {
			scope:new_blademaster = {
				add_character_flag = denied_blademaster_training
			}
		}
		if = {
			limit = {
				exists = scope:new_blademaster_2
				scope:new_blademaster_2 = {
					can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
				}
			}
			scope:new_blademaster_2 = {
				add_trait = lifestyle_blademaster
			}
		}
		else = {
			scope:new_blademaster_2 ?= {
				add_character_flag = denied_blademaster_training
			}
		}
		if = {
			limit = {
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
				}
			}
			reverse_add_opinion = {
				modifier = angry_opinion
				target = primary_heir
				opinion = -30
			}
		}
		if = {
			limit = {
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this != root.primary_heir
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this != root.primary_heir
					}
				}
			}
			stress_impact = {
				arrogant = medium_stress_impact_gain
				ambitious = medium_stress_impact_gain
				brave = medium_stress_impact_gain
				cynical = medium_stress_impact_gain
				arbitrary = medium_stress_impact_gain
			}
		}
		else_if = {
			limit = {
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
				}
			}
			stress_impact = {
				compassionate = major_stress_impact_gain
				arrogant = medium_stress_impact_gain
				ambitious = medium_stress_impact_gain
				brave = medium_stress_impact_gain
				cynical = medium_stress_impact_gain
				arbitrary = medium_stress_impact_gain
			}
		}
		ai_chance = {
			base = 0
			modifier = {
				add = 100
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
			}
			modifier = {
				add = -75
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				OR = {
					has_trait = arrogant
					has_trait = ambitious
					has_trait = brave
					has_trait = cynical
					has_trait = arbitrary
				}
			}
			modifier = {
				add = 100
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
					}
				}
				OR = {
					has_trait = humble
					has_trait = content
					has_trait = craven
					has_trait = zealous
					has_trait = just
					has_trait = lazy
				}
			}
			modifier = {
				factor = 0
				OR = {
					scope:new_blademaster = {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
					scope:new_blademaster_2 ?= {
						NOT = {
							can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
						}
						this = root.primary_heir
					}
				}
				has_trait = compassionate
			}
		}
	}
	after = {
		scope:acclaimed_blademaster = {
			remove_character_flag = wear_armor
		}
		scope:new_blademaster = {
			remove_character_flag = wear_armor
		}
	}
}

scripted_trigger ep2_accolade_events_0300_reveler_knight_trigger = {
	accolade ?= {
		is_accolade_active = yes
		has_accolade_parameter = acclaimed_knight_trains_reveling
	}
	is_healthy = yes
	is_imprisoned = no
	OR = {
		AND = {
			is_available = yes
			root = { is_available = yes }
		}
		AND = {
			is_available = yes
			root.primary_heir = { is_available = yes }
		}
		location = root.location
		location = root.primary_heir.location
	}
}

# master_of_revels shares the reveler trait with your line
ep2_accolade_events.0300 = {
	type = character_event
	title = ep2_accolade_events.0300.t
	desc = {
		desc = ep2_accolade_events.0300.desc
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:new_reveler = {
						this = root
					}
					scope:new_reveler_2 = {
						this = root.primary_heir
					}
				}
				desc = ep2_accolade_events.0300.desc.both
			}
			triggered_desc = {
				trigger = {
					scope:new_reveler = {
						this = root.primary_heir
					}
				}
				desc = ep2_accolade_events.0300.desc.heir
			}
			triggered_desc = {
				trigger = {
					scope:new_reveler = {
						this = root
					}
				}
				desc = ep2_accolade_events.0300.desc.liege
			}
		}
	}
	theme = feast_activity
	left_portrait = {
		character = scope:new_reveler
		animation = laugh
	}
	right_portrait = {
		character = scope:master_of_revels
		animation = toast_goblet
	}
	lower_right_portrait = {
		character = scope:new_reveler_2
	}

	trigger = {
		has_dlc_feature = accolades
		any_active_accolade = {
			accolade_parameter = acclaimed_knight_trains_reveling
		}
		OR = {
			NOR = {
				has_trait = lifestyle_reveler
				has_trait = temperate
				has_trait = shy
			}
			AND = {
				primary_heir ?= {
					NOR = {
						has_trait = lifestyle_reveler
						has_trait = temperate
						has_trait = shy
					}
				}
			}
		}
		any_knight = {
			ep2_accolade_events_0300_reveler_knight_trigger = yes
		}
		trigger_if = {
			limit = {
				NOT = {
					has_trait = lifestyle_reveler
				}
			}
			OR = {
				is_available = yes
				involved_activity ?= { has_activity_type = activity_feast }
				involved_activity ?= { has_activity_type = activity_wedding }
			}
			is_healthy = yes
			is_imprisoned = no
			age >= 13
		}
		trigger_else = {
			primary_heir ?= {
				NOT = {
					has_trait = lifestyle_reveler
				}
			}
			primary_heir = {
				OR = {
					is_available = yes
					involved_activity ?= { has_activity_type = activity_feast }
					involved_activity ?= { has_activity_type = activity_wedding }
				}
				is_healthy = yes
				is_ai = yes
				is_imprisoned = no
				age >= 13
				is_courtier_of = root
			}
		}
	}

	immediate = {
		random_knight = {
			limit = {
				ep2_accolade_events_0300_reveler_knight_trigger = yes
			}
			save_scope_as = master_of_revels
		}
		if = {
			limit = {
				NOR = {
					has_trait = lifestyle_reveler
					has_trait = temperate
					has_trait = shy
				}
				OR = {
					is_available = yes
					involved_activity ?= { has_activity_type = activity_feast }
					involved_activity ?= { has_activity_type = activity_wedding }
				}
				is_healthy = yes
				is_imprisoned = no
				age >= 13
			}
			save_scope_as = new_reveler
		}
		else_if = {
			limit = {
				primary_heir ?= {
					NOR = {
						has_trait = lifestyle_reveler
						has_trait = temperate
						has_trait = shy
					}
					OR = {
						is_available = yes
						involved_activity ?= { has_activity_type = activity_feast }
						involved_activity ?= { has_activity_type = activity_wedding }
					}
					is_healthy = yes
					is_ai = yes
					is_imprisoned = no
					age >= 13
					is_courtier_of = root
				}
			}
			primary_heir = {
				save_scope_as = new_reveler
			}
		}
		if = {
			limit = {
				scope:new_reveler ?= {
					this = root
				}
				primary_heir ?= {
					NOT = {
						has_trait = lifestyle_reveler
						has_trait = temperate
						has_trait = shy
					}
					OR = {
						is_available = yes
						involved_activity ?= { has_activity_type = activity_feast }
						involved_activity ?= { has_activity_type = activity_wedding }
					}
					is_healthy = yes
					is_ai = yes
					is_imprisoned = no
					age >= 13
					is_courtier_of = root
				}
			}
			primary_heir = {
				save_scope_as = new_reveler_2
			}
		}
	}

	option = {
		name = ep2_accolade_events.0300.a
		scope:new_reveler ?= {
			add_trait = lifestyle_reveler
		}
		if = {
			limit = {
				exists = scope:new_reveler_2
			}
			scope:new_reveler_2 = {
				add_trait = lifestyle_reveler
			}
		}
		if = {
			limit = {
				culture = {
					OR = {
						has_cultural_tradition = tradition_festivities
						has_cultural_tradition = tradition_welcoming
					}
				}
				faith = {
					OR = {
						has_doctrine = tenet_ritual_celebrations
						has_doctrine = tenet_hedonistic
					}
				}
			}
			stress_impact = {
				base = miniscule_stress_impact_loss
				gregarious = miniscule_stress_impact_loss
				gluttonous = miniscule_stress_impact_loss
				drunkard = miniscule_stress_impact_loss
				profligate = miniscule_stress_impact_loss
				comfort_eater = miniscule_stress_impact_loss
				lustful = miniscule_stress_impact_loss
				lifestyle_reveler = miniscule_stress_impact_loss
			}
		}
		else = {
			stress_impact = {
				lifestyle_reveler = miniscule_stress_impact_loss
			}
		}
		ai_chance = {
			base = 100
		}
	}
}
