﻿namespace = harem_events

#################
## First event ##
#################
harem_events.1111 = {
	hidden = yes
	
	# trigger = {
		
	# }
	# on_trigger_fail = {
	# 	on_trigger_fail_visit_harem_fallback_effect = yes
	# }
	
	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
		harem_random_event_effect = yes
	}
}
######################
##Choosing a consort##
######################
scripted_effect visited_consort_scope_effect = {
	$CONSORT$ = {
		save_scope_as = target_consort
		add_character_flag = {
			flag = visited_consort_flag
			days = 20
		}
	}
	random_list = {
		50 = { #Good visit
			simple_attraction_modifier = {
				WHO = $CONSORT$
				TARGET = root
				MAX_PERSONALITY = 15 # -50 at low trait combatibility, +150 at high trait combatibility.
				MAX_PHYSICAL = 15 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
			}
			opinion_modifier = {
				opinion_target = $CONSORT$
				min = -15
				max = 15
				multiplier = 0.15
			}
			opinion_modifier = {
				who = $CONSORT$
				opinion_target = root
				min = -20
				max = 20
				multiplier = 0.20
			}
			
			modifier = {
				has_relation_potential_lover = $CONSORT$
				add = 10
			}
			modifier = {
				has_relation_potential_friend = $CONSORT$
				add = 5
			}
			modifier = {
				has_relation_lover = $CONSORT$
				add = 20
			}
			modifier = {
				has_relation_friend = $CONSORT$
				add = 15
			}
			modifier = {
				has_relation_soulmate = $CONSORT$
				add = 50
			}
			modifier = {
				has_relation_best_friend = $CONSORT$
				add = 40
			}
			modifier = { #Ambitious consorts will try their best to sleep with root
				$CONSORT$ = { 
					has_trait = ambitious
				}
				add = 5
			}
			modifier = { #Ambitious consorts will try their best to sleep with root
				$CONSORT$ = { 
					has_trait = greedy
				}
				add = 5
			}
			modifier = { #Ambitious consorts will try their best to sleep with root
				$CONSORT$ = { 
					has_trait = arrogant
				}
				add = 5
			}
			modifier = { #Ambitious consorts will try their best to sleep with root
				$CONSORT$ = { 
					has_trait = deceitful
				}
				add = 5
			}
			modifier = { #Gregarious consorts are charismatic
				$CONSORT$ = { 
					has_trait = gregarious
				}
				add = 5
			}
			modifier = {
				$CONSORT$ = { 
					has_trait = trusting
				}
				add = 5
			}
			
			modifier = { #Diplomacy
				add = 10
				$CONSORT$ = {	
					diplomacy >= medium_skill_rating
				}
			}
			modifier = { #Diplomacy
				add = 5
				$CONSORT$ = {	
					diplomacy >= decent_skill_rating
				}
			}
			modifier = { #Diplomacy
				add = 10
				$CONSORT$ = {	
					diplomacy >= high_skill_rating
				}
			}
			
			modifier = { #Scheming and diplomatic consorts will try their best to sleep with root
				$CONSORT$ = { 
					OR = { 
						has_character_modifier = scheming_consort_modifier
						has_character_modifier = diplomatic_consort_modifier
					}
				}
				add = 5
			}
			modifier = { #The PS will try their best to be on good terms
				exists = primary_spouse
				primary_spouse = $CONSORT$
				add = 20
			}
			modifier = { #The GC will try their best to be on good terms
				$CONSORT$ = { 
					has_high_consort_position_trigger = yes
				}
				add = 15
			}
			modifier = { #The GC will try their best to be on good terms
				$CONSORT$ = { 
					is_married = yes
					NOR = {
						this = root.primary_spouse
						has_high_consort_position_trigger = yes
					}
				}
				add = 10
			}

			modifier = { #Favor
				add = 10
				$CONSORT$ = {	
					has_character_modifier = favored_consort_modifier
				}
			}
			modifier = { #Favor
				add = 15
				$CONSORT$ = {	
					has_character_modifier = favor_boost_modifier
				}
			}
			modifier = { #Favor
				add = 20
				$CONSORT$ = {	
					has_character_modifier = beloved_consort_modifier
				}
			}

			modifier = {
				NOT = { $CONSORT$ = { is_attracted_to_gender_of = root } }
				factor = 0.7
			}
			modifier = {
				NOT = { is_attracted_to_gender_of = $CONSORT$ }
				factor = 0
			}
			trigger_event = {
				id = harem_events.0002
				days = { 5 12 }
			}	
		}
		25 = { #Bad visit
			simple_attraction_modifier = {
				WHO = $CONSORT$
				TARGET = root
				MAX_PERSONALITY = 15 # -50 at low trait combatibility, +150 at high trait combatibility.
				MAX_PHYSICAL = 15 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
			}
			opinion_modifier = {
				opinion_target = $CONSORT$
				min = -15
				max = 15
				multiplier = -0.15
			}
			opinion_modifier = {
				who = $CONSORT$
				opinion_target = root
				min = -20
				max = 20
				multiplier = -0.2
			}
			
			modifier = { #Demoted consorts hate root
				$CONSORT$ = { 
					is_demoted_consort_trigger = yes
				}
				add = 30
			}
			modifier = {
				has_relation_potential_rival = $CONSORT$
				add = 10
			}
			modifier = {
				has_relation_rival = $CONSORT$
				add = 20
			}
			modifier = {
				has_relation_nemesis = $CONSORT$
				add = 50
			}
			
			modifier = { #Shy consorts are not charismatic
				$CONSORT$ = { 
					has_trait = shy
				}
				add = 10
			}
			modifier = {
				$CONSORT$ = { 
					has_trait = paranoid
				}
				add = 5
			}
			modifier = { #Chaste consorts will try their best to avoid sex
				$CONSORT$ = { 
					has_trait = chaste
				}
				add = 15
			}
			modifier = {
				$CONSORT$ = { 
					has_trait = irritable
				}
				add = 10
			}
			
			modifier = { #Diplomacy
				add = 5
				$CONSORT$ = {	
					intrigue <= mediocre_skill_rating
				}
			}
			modifier = { #Diplomacy
				add = 10
				$CONSORT$ = {	
					intrigue <= low_skill_rating
				}
			}

			modifier = { #Favor
				add = 10
				$CONSORT$ = {	
					has_character_modifier = unfavored_consort_modifier
				}
			}
			modifier = { #Favor
				add = 20
				$CONSORT$ = {	
					has_character_modifier = forgotten_consort_modifier
				}
			}

			modifier = { #Forced consorts
				$CONSORT$ = {	
					hp_accepts_harems = no
				}
				add = 50
			}
			modifier = { #Forced consorts
				$CONSORT$ = {	
					has_opinion_modifier = {
						target = root
						modifier = forced_me_concubine_marriage_opinion
					}
				}
				add = 50
			}

			trigger_event = {
				id = harem_events.0003
				days = { 5 12 }
			}
			
		}
	}
}

harem_events.0001 = {
	type = character_event
	title = harem_events.0001.t
	desc = {
		first_valid = {
			triggered_desc = { #Already visited a consort
				trigger = {
					has_character_flag = second_event_flag
				}
				desc = harem_events.0001.desc
			}
			triggered_desc = {
				desc = harem_events.0001.generic.desc
			}
		}
		desc = harem_events.0001.end.desc
	}
	theme = family
	override_background = {
		reference = garden
	}
	
	left_portrait  = {
		character = root
		animation = personality_rational
	}
	right_portrait = {
		character = scope:consort_1
		animation = flirtation_left
	}
	lower_left_portrait = {
		character = scope:consort_2
	}
	lower_center_portrait = {
		trigger = { exists = scope:consort_4 }
		character = scope:consort_4
	}
	lower_right_portrait = {
		character = scope:consort_3
	}
	
	trigger = {
		harem_events_choose_consort_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
		#Events sequence
		if = {
			limit = {
				has_character_flag = first_event_flag
			}
			remove_character_flag = first_event_flag
			add_character_flag = {
				flag = second_event_flag
				days = 20
			}
		}
		else = {
			add_character_flag = {
				flag = first_event_flag
				days = 20
			}
		}
		#Clearing the previous scopes
		if = {
			limit = {
				exists = scope:consort_1
			}
			clear_saved_scope = consort_1
		}
		if = {
			limit = {
				exists = scope:consort_2
			}
			clear_saved_scope = consort_2
		}
		if = {
			limit = {
				exists = scope:consort_3
			}
			clear_saved_scope = consort_3
		}
		if = {
			limit = {
				exists = scope:consort_4
			}
			clear_saved_scope = consort_4
		}
		if = {
			limit = {
				exists = scope:target_consort
			}
			clear_saved_scope = target_consort
		}
		#Building the lists
		every_consort = {
			limit = {
				valid_harem_consort_trigger = yes
			}
			add_to_list = valid_consorts_list
		}
		#Saving the scopes
		hidden_effect = {
			while = {
				count = 3
				random_in_list = {
					list = valid_consorts_list
					limit = {
						valid_harem_consort_trigger = yes
					}
					weight = {
						base = 30
						modifier = { #The PS
							exists = root.primary_spouse
							this = root.primary_spouse
							add = 25
						}
						modifier = { #The GC
							has_high_consort_position_trigger = yes
							add = 15
						}
						modifier = { #Spouses
							is_married = yes
							add = 10
						}
						modifier = { #Demoted consorts
							is_demoted_consort_trigger = no
							add = 15
						}
						modifier = { #Good opinion
							reverse_opinion = {
								target = root
								value > 9
							}
							add = 10
						}
						
						modifier = { #Beautiful consorts have priority
							has_character_flag = flag_new_consort
							add = 10
						}
						
						modifier = { #Beautiful consorts have priority
							has_trait = beauty_good_1
							add = 10
						}
						modifier = { #Beautiful consorts have priority
							has_trait = beauty_good_2
							add = 15
						}
						modifier = { #Beautiful consorts have priority
							has_trait = beauty_good_3
							add = 20
						}
		
						modifier = {
							has_character_modifier = favored_consort_modifier
							add = 10
						}
						modifier = {
							has_character_modifier = favor_boost_modifier
							add = 15
						}
						modifier = {
							has_character_modifier = beloved_consort_modifier
							add = 20
						}
		
						modifier = {
							has_character_modifier = unfavored_consort_modifier
							add = -10
						}
						modifier = {
							has_character_modifier = forgotten_consort_modifier
							add = -20
						}
		
						modifier = {
							OR = {
								has_relation_lover = root
								has_relation_friend = root
							}
							add = 15
						}
						modifier = {
							OR = {
								has_relation_soulmate = root
								has_relation_best_friend = root
							}
							add = 20
						}
						modifier = {
							any_close_family_member = {
								NOT = { is_child_of = root }
								OR = {
									is_powerful_vassal_of = root
									is_liege_or_above_of = root
									is_councillor_of = root
									highest_held_title_tier >= tier_kingdom
								}
							}
							add = 20
						}
						modifier = {
							any_close_family_member = {
								NOT = { is_child_of = root }
								highest_held_title_tier = tier_duchy
							}
							add = 10
						}
						modifier = {
							any_child = {
								is_child_of = root
								count >= 1
							}
							add = 10
						}
						modifier = {
							any_child = {
								is_child_of = root
								count >= 3
							}
							add = 5
						}
						modifier = {
							any_child = {
								is_player_heir_of = root
							}
							add = 20
						}
						modifier = { #Give a chance to other consorts
							NOT = {
								has_trait = pregnant
							}
							add = 20
						}
						modifier = { #Good traits
							num_of_good_genetic_traits = 1
							add = 5
						}
						modifier = { #Good traits
							num_of_good_genetic_traits = 2
							add = 10
						}
						modifier = { #Good traits
							num_of_good_genetic_traits = 3
							add = 20
						}
						modifier = { #Good traits
							has_trait = pure_blooded
							add = 20
						}
						modifier = { #Good traits
							has_trait = fecund
							add = 10
						}
						
						modifier = { #Fertile consorts
							age <= 30
							add = 10
						}
						modifier = { #Fertile consorts
							fertility >= medium_fertility
							add = 10
						}
						modifier = { #Sexual preferences
							is_attracted_to_gender_of = root
							add = 25
						}
					}
					if = {
						limit = {
							NOT = {
								exists = scope:consort_1
							}
						}
						save_scope_as = consort_1
					}
					else_if = {
						limit = {
							NOT = {
								exists = scope:consort_2
							}
						}
						save_scope_as = consort_2
					}
					else = {
						save_scope_as = consort_3
					}
					remove_from_list = valid_consorts_list
				}
			}
		}
		if = {
			limit = {
				any_in_list = {
					list = valid_consorts_list
					count >= 1
				}
			}
			random_in_list = {
				list = valid_consorts_list
				limit = {
					NOR = {
						scope:consort_1 ?= this
						scope:consort_2 ?= this
						scope:consort_3 ?= this
					}
					valid_harem_consort_trigger = yes
				}
				weight = {
					base = 30
					modifier = { #The PS
						exists = root.primary_spouse
						this = root.primary_spouse
						add = 25
					}
					modifier = { #The GC
						has_high_consort_position_trigger = yes
						add = 15
					}
					modifier = { #Spouses
						is_married = yes
						add = 10
					}
					modifier = { #Demoted consorts
						is_demoted_consort_trigger = no
						add = 15
					}
					modifier = { #Good opinion
						reverse_opinion = {
							target = root
							value > 9
						}
						add = 10
					}
					
					modifier = { #Beautiful consorts have priority
						has_character_flag = flag_new_consort
						add = 10
					}
					
					modifier = { #Beautiful consorts have priority
						has_trait = beauty_good_1
						add = 10
					}
					modifier = { #Beautiful consorts have priority
						has_trait = beauty_good_2
						add = 15
					}
					modifier = { #Beautiful consorts have priority
						has_trait = beauty_good_3
						add = 20
					}
	
					modifier = {
						has_character_modifier = favored_consort_modifier
						add = 10
					}
					modifier = {
						has_character_modifier = favor_boost_modifier
						add = 15
					}
					modifier = {
						has_character_modifier = beloved_consort_modifier
						add = 20
					}
	
					modifier = {
						has_character_modifier = unfavored_consort_modifier
						add = -10
					}
					modifier = {
						has_character_modifier = forgotten_consort_modifier
						add = -20
					}
	
					modifier = {
						OR = {
							has_relation_lover = root
							has_relation_friend = root
						}
						add = 15
					}
					modifier = {
						OR = {
							has_relation_soulmate = root
							has_relation_best_friend = root
						}
						add = 20
					}
					modifier = {
						any_close_family_member = {
							NOT = { is_child_of = root }
							OR = {
								is_powerful_vassal_of = root
								is_liege_or_above_of = root
								is_councillor_of = root
								highest_held_title_tier >= tier_kingdom
							}
						}
						add = 20
					}
					modifier = {
						any_close_family_member = {
							NOT = { is_child_of = root }
							highest_held_title_tier = tier_duchy
						}
						add = 10
					}
					modifier = {
						any_child = {
							is_child_of = root
							count >= 1
						}
						add = 10
					}
					modifier = {
						any_child = {
							is_child_of = root
							count >= 3
						}
						add = 5
					}
					modifier = {
						any_child = {
							is_player_heir_of = root
						}
						add = 20
					}
					modifier = { #Give a chance to other consorts
						NOT = {
							has_trait = pregnant
						}
						add = 20
					}
					modifier = { #Good traits
						num_of_good_genetic_traits = 1
						add = 5
					}
					modifier = { #Good traits
						num_of_good_genetic_traits = 2
						add = 10
					}
					modifier = { #Good traits
						num_of_good_genetic_traits = 3
						add = 20
					}
					modifier = { #Good traits
						has_trait = pure_blooded
						add = 20
					}
					modifier = { #Good traits
						has_trait = fecund
						add = 10
					}
					
					modifier = { #Fertile consorts
						age <= 30
						add = 10
					}
					modifier = { #Fertile consorts
						fertility >= medium_fertility
						add = 10
					}
					modifier = { #Sexual preferences
						is_attracted_to_gender_of = root
						add = 25
					}
				}
				save_scope_as = consort_4
			}
		}
		every_in_list = {
			list = valid_consorts_list
			remove_from_list = valid_consorts_list
		}
	}
	
	option = { # Visit consort_1
		name = harem_events.0001.a
		
		hidden_effect = {
			visited_consort_scope_effect = { CONSORT = scope:consort_1 }
		}
		stress_impact = {
			shy = minor_stress_impact_gain
		}
		ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			opinion_modifier = {
				opinion_target = scope:consort_1
				multiplier = 0.20
			}
			simple_attraction_modifier = {
				WHO = root
				TARGET = scope:consort_1
				MAX_PERSONALITY = 30 
				MAX_PHYSICAL = 30 
			}

			modifier = { #Favor
            	add = 10
            	scope:consort_1 = {
            		has_character_modifier = favored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = 15
            	scope:consort_1 = {
            		has_character_modifier = favor_boost_modifier
            	}
            }
			modifier = { #Favor
            	add = 20
            	scope:consort_1 = {
            		has_character_modifier = beloved_consort_modifier
            	}
            }

			modifier = { #Favor
            	add = -10
            	scope:consort_1 = {
            		has_character_modifier = unfavored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = -20
            	scope:consort_1 = {
            		has_character_modifier = forgotten_consort_modifier
            	}
            }

			modifier = {
            	add = 10
            	scope:consort_1 = {
            		this = root.primary_spouse
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_1 = {
            		is_high_consort_trigger = {
						LIEGE = root
					}
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_1 = {
            		is_married = yes
            	}
            }
			modifier = {
            	add = 10
            	scope:consort_1 = {
            		fertility >= medium_fertility
            	}
            }
			modifier = {
            	add = -15
            	scope:consort_1 = {
            		age >= 30
            	}
            }
			modifier = {
            	add = 15
            	OR = {
            		has_relation_lover = scope:consort_1
					has_relation_soulmate = scope:consort_1
            	}
            }
			modifier = {
            	add = 10
            	OR = {
            		has_relation_best_friend = scope:consort_1
					has_relation_friend = scope:consort_1
            	}
            }

			modifier = {	
				add = 25
				is_attracted_to_gender_of = scope:consort_1
			}
			modifier = {	
				add = -25
				NOT = {
					is_attracted_to_gender_of = scope:consort_1
				}
			}
			modifier = {
				add = 15
				any_child = {
					count <= 1
				}
			}
        }
	}
	
	option = { # Visit consort_2
		name = harem_events.0001.b
		
		hidden_effect = {	
			visited_consort_scope_effect = { CONSORT = scope:consort_2 }
		}
		stress_impact = {
			shy = minor_stress_impact_gain
		}
		ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			opinion_modifier = {
				opinion_target = scope:consort_2
				multiplier = 0.20
			}
			simple_attraction_modifier = {
				WHO = root
				TARGET = scope:consort_2
				MAX_PERSONALITY = 30 
				MAX_PHYSICAL = 30 
			}

			modifier = { #Favor
            	add = 10
            	scope:consort_2 = {
            		has_character_modifier = favored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = 15
            	scope:consort_2 = {
            		has_character_modifier = favor_boost_modifier
            	}
            }
			modifier = { #Favor
            	add = 20
            	scope:consort_2 = {
            		has_character_modifier = beloved_consort_modifier
            	}
            }

			modifier = { #Favor
            	add = -10
            	scope:consort_2 = {
            		has_character_modifier = unfavored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = -20
            	scope:consort_2 = {
            		has_character_modifier = forgotten_consort_modifier
            	}
            }

			modifier = {
            	add = 10
            	scope:consort_2 = {
            		this = root.primary_spouse
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_2 = {
            		is_high_consort_trigger = {
						LIEGE = root
					}
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_2 = {
            		is_married = yes
            	}
            }
			modifier = {
            	add = 10
            	scope:consort_2 = {
            		fertility >= medium_fertility
            	}
            }
			modifier = {
            	add = -15
            	scope:consort_2 = {
            		age >= 30
            	}
            }
			modifier = {
            	add = 15
            	OR = {
            		has_relation_lover = scope:consort_2
					has_relation_soulmate = scope:consort_2
            	}
            }
			modifier = {
            	add = 10
            	OR = {
            		has_relation_best_friend = scope:consort_2
					has_relation_friend = scope:consort_2
            	}
            }

			modifier = {	
				add = 25
				is_attracted_to_gender_of = scope:consort_2
			}
			modifier = {	
				add = -25
				NOT = {
					is_attracted_to_gender_of = scope:consort_2
				}
			}
			modifier = {
				add = 15
				any_child = {
					count <= 1
				}
			}
        }
	}
	
	option = { # Visit consort_3
		name = harem_events.0001.c
		
		hidden_effect = {
			visited_consort_scope_effect = { CONSORT = scope:consort_3 }
		}
		stress_impact = {
			shy = minor_stress_impact_gain
		}
		ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			opinion_modifier = {
				opinion_target = scope:consort_3
				multiplier = 0.20
			}
			simple_attraction_modifier = {
				WHO = root
				TARGET = scope:consort_3
				MAX_PERSONALITY = 30 
				MAX_PHYSICAL = 30 
			}

			modifier = { #Favor
            	add = 10
            	scope:consort_3 = {
            		has_character_modifier = favored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = 15
            	scope:consort_3 = {
            		has_character_modifier = favor_boost_modifier
            	}
            }
			modifier = { #Favor
            	add = 20
            	scope:consort_3 = {
            		has_character_modifier = beloved_consort_modifier
            	}
            }

			modifier = { #Favor
            	add = -10
            	scope:consort_3 = {
            		has_character_modifier = unfavored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = -20
            	scope:consort_3 = {
            		has_character_modifier = forgotten_consort_modifier
            	}
            }

			modifier = {
            	add = 10
            	scope:consort_3 = {
            		this = root.primary_spouse
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_3 = {
            		is_high_consort_trigger = {
						LIEGE = root
					}
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_3 = {
            		is_married = yes
            	}
            }
			modifier = {
            	add = 10
            	scope:consort_3 = {
            		fertility >= medium_fertility
            	}
            }
			modifier = {
            	add = -15
            	scope:consort_3 = {
            		age >= 30
            	}
            }
			modifier = {
            	add = 15
            	OR = {
            		has_relation_lover = scope:consort_3
					has_relation_soulmate = scope:consort_3
            	}
            }
			modifier = {
            	add = 10
            	OR = {
            		has_relation_best_friend = scope:consort_3
					has_relation_friend = scope:consort_3
            	}
            }

			modifier = {	
				add = 25
				is_attracted_to_gender_of = scope:consort_3
			}
			modifier = {	
				add = -25
				NOT = {
					is_attracted_to_gender_of = scope:consort_3
				}
			}
			modifier = {
				add = 15
				any_child = {
					count <= 1
				}
			}
        }
	}

	option = { # Visit consort_4
		trigger = { exists = scope:consort_4 }
		name = harem_events.0001.d
		
		hidden_effect = {
			visited_consort_scope_effect = { CONSORT = scope:consort_4 }
		}
		stress_impact = {
			shy = minor_stress_impact_gain
		}
		ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			opinion_modifier = {
				opinion_target = scope:consort_4
				multiplier = 0.20
			}
			simple_attraction_modifier = {
				WHO = root
				TARGET = scope:consort_4
				MAX_PERSONALITY = 30 
				MAX_PHYSICAL = 30 
			}

			modifier = { #Favor
            	add = 10
            	scope:consort_4 = {
            		has_character_modifier = favored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = 15
            	scope:consort_4 = {
            		has_character_modifier = favor_boost_modifier
            	}
            }
			modifier = { #Favor
            	add = 20
            	scope:consort_4 = {
            		has_character_modifier = beloved_consort_modifier
            	}
            }

			modifier = { #Favor
            	add = -10
            	scope:consort_4 = {
            		has_character_modifier = unfavored_consort_modifier
            	}
            }
			modifier = { #Favor
            	add = -20
            	scope:consort_4 = {
            		has_character_modifier = forgotten_consort_modifier
            	}
            }

			modifier = {
            	add = 10
            	scope:consort_4 = {
            		this = root.primary_spouse
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_4 = {
            		is_high_consort_trigger = {
						LIEGE = root
					}
            	}
            }
			modifier = {
            	add = 5
            	scope:consort_4 = {
            		is_married = yes
            	}
            }
			modifier = {
            	add = 10
            	scope:consort_4 = {
            		fertility >= medium_fertility
            	}
            }
			modifier = {
            	add = -15
            	scope:consort_4 = {
            		age >= 30
            	}
            }
			modifier = {
            	add = 15
            	OR = {
            		has_relation_lover = scope:consort_4
					has_relation_soulmate = scope:consort_4
            	}
            }
			modifier = {
            	add = 10
            	OR = {
            		has_relation_best_friend = scope:consort_4
					has_relation_friend = scope:consort_4
            	}
            }

			modifier = {	
				add = 25
				is_attracted_to_gender_of = scope:consort_4
			}
			modifier = {	
				add = -25
				NOT = {
					is_attracted_to_gender_of = scope:consort_4
				}
			}
			modifier = {
				add = 15
				any_child = {
					count <= 1
				}
			}
        }
	}
	
	option = { # Just take a walk
		name = harem_events.0001.e		
		##OTHER EVENTS##
		add_character_flag = {
			flag = harem_event_0001_flag
			days = 20
		}
		harem_random_event_effect = yes
		
		ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			modifier = {
				add = -15
				has_trait = lustful
			}
			modifier = {
				add = 50
				has_trait = shy
			}
			modifier = {
				add = 20
				has_trait = irritable
			}
			modifier = {
				add = 20
				has_trait = reclusive
			}
        }
	}
}

########################
##Success - good visit##
########################

harem_events.0002 = {
	type = character_event
	title = harem_events.0001.t
	desc = harem_events.0002.desc
	theme = family
	
	right_portrait = { 	
		character = root
		animation = flirtation
	}
	left_portrait = { 	
		character = scope:target_consort
		animation = happiness
	}
	
	trigger = {
		is_landed_or_landless_administrative = yes
	}
	
	immediate = {
		scope:target_consort = {
			add_opinion = {
				target = root
				modifier = romance_opinion
				opinion = 5
			}
		}
		add_opinion = {
			target = scope:target_consort
			modifier = romance_opinion
			opinion = 5
		}
		stress_impact = {
			base = minor_stress_impact_loss
			gregarious = minor_stress_impact_loss
		}
	}
	
	option = { #Spend the night with target_consort
        name = harem_events.0002.a
		trigger = {
			NOR = {
				has_trait = celibate
				has_trait = devoted
				scope:target_consort = {
					has_trait = pregnant
				}
			}
		}
		
		had_sex_with_effect = {
			CHARACTER = scope:target_consort
			PREGNANCY_CHANCE = pregnancy_chance
		}
		if = {
			limit = {
				NOR = {
					has_relation_potential_lover = scope:target_consort
					has_relation_lover = scope:target_consort
					has_relation_soulmate = scope:target_consort
				}
			}
			set_relation_potential_lover = scope:target_consort
		}
		scope:target_consort = {
			calyver_favor_minor_gain_effect = yes
			add_opinion = {
				target = root
				modifier = romance_opinion
				opinion = 5
			}
		}
		add_opinion = {
			target = scope:target_consort
			modifier = romance_opinion
			opinion = 5
		}
		
        ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			modifier = {
				add = 25
				has_trait = lustful
			}
			modifier = {
				add = -20
				has_trait = irritable
			}
			modifier = {
				add = -20
				has_trait = reclusive
			}
			modifier = {
				add = -25
				has_trait = shy
			}
			modifier = {
				add = -25
				has_trait = craven
			}
			modifier = {
				add = 10
				scope:target_consort = {
					has_character_modifier = favored_consort_modifier
				}
			}
			modifier = {
				add = 15
				scope:target_consort = {
					has_character_modifier = favor_boost_modifier
				}
			}
			modifier = {
				add = 20
				scope:target_consort = {
					has_character_modifier = beloved_consort_modifier
				}
			}
        }
    }
	
	option = { #Look for another consort
        name = harem_events.0002.b

		scope:target_consort = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -10
			}
		}
		
		harem_random_event_effect = yes
		
        ai_chance = {
            base = 85
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			opinion_modifier = {
				opinion_target = scope:target_consort
				min = -50
				max = 50
				multiplier = -0.5
			}
			modifier = {
				add = -15
				has_trait = lustful
			}
			modifier = {
				add = 20
				has_trait = shy
			}
			modifier = {
				add = 20
				has_trait = reclusive
			}
			modifier = {
				add = 20
				has_trait = craven
			}
			modifier = {
				add = 20
				has_trait = chaste
			}
			modifier = {
				add = 5
				scope:target_consort = {
					has_character_modifier = unfavored_consort_modifier
				}
			}
			modifier = {
				add = 15
				scope:target_consort = {
					has_character_modifier = forgotten_consort_modifier
				}
			}
        }
    }
	
	option = { #Enough!
        name = harem_events.0002.c
		custom_tooltip = harem_events.0002.c.tt
		
		scope:target_consort = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -10
			}
		}
		
        ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = -0.2
				ai_energy = -0.35
   			}
			opinion_modifier = {
				opinion_target = scope:target_consort
				min = -50
				max = 50
				multiplier = -0.5
			}
			modifier = {
				add = -15
				has_trait = lustful
			}
			modifier = {
				add = 20
				has_trait = lazy
			}
			modifier = {
				add = 20
				has_trait = shy
			}
			modifier = {
				add = 20
				has_trait = reclusive
			}
			modifier = {
				add = 20
				has_trait = craven
			}
			modifier = {
				add = 20
				has_trait = chaste
			}
			modifier = {
				add = 5
				scope:target_consort = {
					has_character_modifier = unfavored_consort_modifier
				}
			}
			modifier = {
				add = 15
				scope:target_consort = {
					has_character_modifier = forgotten_consort_modifier
				}
			}
        }
    }
}

###########
##Failure##
###########
harem_events.0003 = {
	type = character_event
	title = harem_events.0001.t
	desc = harem_events.0003.desc
	theme = family
	
	right_portrait = { 	
		character = root
		animation = worry
	}
	left_portrait = { 	
		character = scope:target_consort
		animation = disapproval
	}
	
	trigger = {
		is_landed_or_landless_administrative = yes
	}
	
	immediate = {
		scope:target_consort = {
			add_opinion = {
				target = root
				modifier = frustrated_opinion
				opinion = -10
			}
		}
		add_opinion = {
			target = scope:target_consort
			modifier = frustrated_opinion
			opinion = -10
		}
		stress_impact = {
			gregarious = minor_stress_impact_gain
			lustful = minor_stress_impact_gain
		}
	}
	
	option = { #Look for another consort
        name = harem_events.0002.b

		
		harem_random_event_effect = yes
		
        ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = 0.20
				ai_energy = 0.35
   			}
			modifier = {
				add = 15
				has_trait = lustful
			}
			modifier = {
				add = 20
				has_trait = shy
			}
			modifier = {
				add = 20
				has_trait = reclusive
			}
			modifier = {
				add = 20
				has_trait = craven
			}
        }
    }
	
	option = { #Enough!
        name = harem_events.0002.c
		custom_tooltip = harem_events.0002.c.tt
		
        ai_chance = {
            base = 100
            ai_value_modifier = {
				ai_greed = -0.2
				ai_energy = -0.35
   			}
			modifier = {
				add = -15
				has_trait = lustful
			}
			modifier = {
				add = 20
				has_trait = lazy
			}
			modifier = {
				add = 20
				has_trait = shy
			}
			modifier = {
				add = 20
				has_trait = reclusive
			}
			modifier = {
				add = 20
				has_trait = craven
			}
        }
    }
}

##########################
##Meeting Concubine Ying##
##########################
harem_events.0004 = {
	type = character_event
	title = harem_events.0004.t
	desc = {
		desc = harem_events.0004.start.desc
		first_valid = {
			triggered_desc = { #Ying is catching butterflies
				trigger = {
					exists = local_var:butterflies_variable
				}
				desc = harem_events.0004.butterflies.desc
			}
			triggered_desc = { #They're playing an instrument
				trigger = {
					exists = local_var:playing_instrument_variable
				}
				desc = harem_events.0004.instrument.desc
			}
			triggered_desc = { #They're singing
				trigger = {
					exists = local_var:singing_variable
				}
				desc = harem_events.0004.singing.desc
			}
			triggered_desc = { #They're reading poetry
				trigger = {
					exists = local_var:poetry_variable
				}
				desc = harem_events.0004.poetry.desc
			}
			triggered_desc = { #They're doing embroidery
				trigger = {
					exists = local_var:embroidery_variable
				}
				desc = harem_events.0004.embroidery.desc
			}
			triggered_desc = { #They're seeing the plants
				trigger = {
					exists = local_var:gardening_variable
				}
				desc = harem_events.0004.gardening.desc
			}
			triggered_desc = { #They're eating
				trigger = {
					exists = local_var:eating_variable
				}
				desc = harem_events.0004.eating.desc
			}
			triggered_desc = { #They're painting
				trigger = {
					exists = local_var:painting_variable
				}
				desc = harem_events.0004.painting.desc
			}
			triggered_desc = { #They're training
				trigger = {
					exists = local_var:training_variable
				}
				desc = harem_events.0004.training.desc
			}
			triggered_desc = { #Generic - they're just taking a walk
				desc = harem_events.0004.generic.desc
			}
		}
		desc = harem_events.0004.end.desc
	}
	theme = family
	override_background = {
		reference = garden
	}
	
	left_portrait = { 	
		character = root
		animation = happiness
	}
	right_portrait = { 	
		character = scope:first_consort
		animation = flirtation
	}
	
	trigger = {
		is_valid_for_concubine_ying_harem_event_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
		every_consort = {
			limit = {
				consort_events_ying_pin_trigger = yes
			}
			add_to_list = consort_list
		}
		
		
		random_in_list = {
			list = consort_list
			limit = {
				consort_events_ying_pin_trigger = yes
			}
			weight = {
				base = 10
				
				modifier = { #Ying was a new consort
					has_character_flag = flag_new_consort
					add = 25
				}
				
				modifier = { #Beautiful consorts have priority
					has_trait = beauty_good_1
					add = 10
				}
				modifier = { #Beautiful consorts have priority
					has_trait = beauty_good_2
					add = 15
				}
				modifier = { #Beautiful consorts have priority
					has_trait = beauty_good_3
					add = 20
				}

				modifier = { #Favor
					has_character_modifier = favored_consort_modifier
					add = 5
				}
				modifier = { #Favor
					has_character_modifier = favor_boost_modifier
					add = 10
				}
				modifier = { #Favor
					has_character_modifier = beloved_consort_modifier
					add = 15
				}

				modifier = {
					OR = {
						has_relation_potential_friend = root
						has_relation_potential_lover = root
					}
					add = 5
				}
				modifier = {
					OR = {
						has_relation_lover = root
						has_relation_friend = root
					}
					add = 10
				}
				modifier = {
					OR = {
						has_relation_soulmate = root
						has_relation_best_friend = root
					}
					add = 15
				}
			}
			save_scope_as = first_consort
		}
		
		#What's Ying doing?
		random_list = {
			50 = { #Playing with butterflies
				modifier = {
					scope:first_consort = {
						has_trait = gregarious
					}
					add = 20
				}
				modifier = {
					location = {
						OR = {
							has_province_modifier = winter_harsh_modifier
							has_province_modifier = winter_normal_modifier
							has_province_modifier = winter_mild_modifier
							
							terrain = desert
							terrain = desert_mountains
							terrain = drylands
							terrain = oasis
							terrain = mountains
							terrain = sea
							terrain = coastal_sea
						}
					}
					factor = 0
				}
				set_local_variable = {
					name = butterflies_variable
					value = yes
				}
			}
			
			50 = { #Playing an instrument - like Zhen Huan
				modifier = {
					add = {
						value = scope:first_consort.diplomacy
						multiply = 0.7
						max = 50
					}
				}
				modifier = {
					scope:first_consort = {
						has_trait = gregarious
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = shy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = craven
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_court_position = court_musician_court_position
					}
					add = 25
				}
				set_local_variable = {
					name = playing_instrument_variable
					value = yes
				}
			}
			
			50 = { #Singing - like Yanwan
				modifier = {
					add = {
						value = scope:first_consort.diplomacy
						multiply = 0.7
						max = 50
					}
				}
				modifier = {
					scope:first_consort = {
						has_trait = lifestyle_poet
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = shy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = craven
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_court_position = court_musician_court_position
					}
					add = 25
				}
				set_local_variable = {
					name = singing_variable
					value = yes
				}
			}
			
			50 = { #Reading poetry
				modifier = {
					add = {
						value = scope:first_consort.learning
						multiply = 0.7
						max = 50
					}
				}
				modifier = {
					scope:first_consort = {
						has_trait = lifestyle_poet
					}
					add = 30
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = education_learning_1
					}
					add = 5
				}
				modifier = {
					scope:first_consort = {
						has_trait = education_learning_2
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = education_learning_3
					}
					add = 15
				}
				modifier = {
					scope:first_consort = {
						OR = {
							has_trait = education_learning_4
							has_trait = education_learning_5
						}
					}
					add = 20
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = shy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = craven
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_court_position = court_poet_court_position
					}
					add = 25
				}
				set_local_variable = {
					name = poetry_variable
					value = yes
				}
			}
			
			50 = { #Embroidery
				modifier = {
					add = {
						value = scope:first_consort.learning
						multiply = 0.7
						max = 50
					}
				}
				modifier = {
					scope:first_consort = {
						is_lowborn = yes
					}
					add = 15
				}
				modifier = {
					scope:first_consort = {
						is_concubine = yes
					}
					add = 15
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = patient
					}
					add = 10
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = lazy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = impatient
					}
					add = -20
				}
				modifier = {
					scope:first_consort = {
						has_trait = arrogant
					}
					add = -20
				}
				set_local_variable = {
					name = embroidery_variable
					value = yes
				}
			}
			
			50 = { #They're picking flowers
				modifier = {
					scope:first_consort = {
						has_trait = lifestyle_gardener
					}
					add = 30
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = lifestyle_herbalist
					}
					add = 15
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = shy
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = patient
					}
					add = 10
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = lazy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = impatient
					}
					add = -20
				}
				modifier = {
					scope:first_consort = {
						has_trait = arrogant
					}
					add = -20
				}
				modifier = {
					scope:first_consort = {
						has_trait = craven
					}
					add = -15
				}
				modifier = {
					location = {
						OR = {
							has_province_modifier = winter_harsh_modifier
							has_province_modifier = winter_normal_modifier
							has_province_modifier = winter_mild_modifier
							
							terrain = desert
							terrain = desert_mountains
							terrain = drylands
							terrain = oasis
							terrain = mountains
							terrain = sea
							terrain = coastal_sea
						}
					}
					factor = 0
				}
				set_local_variable = {
					name = gardening_variable
					value = yes
				}
			}
			
			50 = { #Eating
				modifier = {
					scope:first_consort = {
						has_trait = gluttonous
					}
					add = 30
				}
				modifier = {
					scope:first_consort = {
						has_trait = comfort_eater
					}
					add = 40
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = temperate
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = inappetetic
					}
					add = -30
				}
				modifier = {
					scope:first_consort = {
						is_married = yes
					}
					add = 15
				}
				set_local_variable = {
					name = eating_variable
					value = yes
				}
			}
			
			50 = { #Painting
				modifier = {
					add = {
						value = scope:first_consort.learning
						multiply = 0.7
						max = 50
					}
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = education_learning_1
					}
					add = 5
				}
				modifier = {
					scope:first_consort = {
						has_trait = education_learning_2
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = education_learning_3
					}
					add = 15
				}
				modifier = {
					scope:first_consort = {
						OR = {
							has_trait = education_learning_4
							has_trait = education_learning_5
						}
					}
					add = 20
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = patient
					}
					add = 10
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = lazy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = impatient
					}
					add = -20
				}
				modifier = {
					scope:first_consort = {
						has_trait = shy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = craven
					}
					add = -15
				}
				set_local_variable = {
					name = painting_variable
					value = yes
				}
			}
			
			75 = { #Training for knight-consorts
				trigger = {
					scope:first_consort = {
						can_be_knight_trigger = { ARMY_OWNER = root }
					}
				}
				modifier = {
					add = {
						value = scope:first_consort.martial
						multiply = 0.7
						max = 20
					}
				}
				modifier = {
					add = {
						value = scope:first_consort.prowess
						multiply = 0.7
						max = 20
					}
				}
				
				modifier = {
					scope:first_consort = {
						is_knight = yes
					}
					add = 30
				}
				modifier = {
					scope:first_consort = {
						is_acclaimed = yes
						is_knight = yes
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = education_martial_1
					}
					add = 5
				}
				modifier = {
					scope:first_consort = {
						has_trait = education_martial_2
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = education_martial_3
					}
					add = 15
				}
				modifier = {
					scope:first_consort = {
						OR = {
							has_trait = education_martial_4
							has_trait = education_martial_5
						}
					}
					add = 20
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = lazy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = shy
					}
					add = -15
				}
				modifier = {
					scope:first_consort = {
						has_trait = craven
					}
					add = -30
				}
				set_local_variable = {
					name = training_variable
					value = yes
				}
			}
			
			50 = { #Fallback
				modifier = {
					scope:first_consort = {
						has_trait = physique_good
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = athletic
					}
					add = 10
				}
				
				modifier = {
					scope:first_consort = {
						has_trait = strong
					}
					add = 10
				}
				modifier = {
					scope:first_consort = {
						has_trait = patient
					}
					add = 10
				}
			}
		}
	}
	
	option = { #Spend time with Ying Pin
        name = harem_politics.0020.a
		
		#Possible outcomes
		random_list = {
			50 = { #Progress towards lovers
				simple_attraction_modifier = {
					WHO = scope:first_consort
					TARGET = root
					MAX_PERSONALITY = 50 # -50 at low trait combatibility, +150 at high trait combatibility.
					MAX_PHYSICAL = 50 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
				}
				opinion_modifier = {
					opinion_target = scope:first_consort
					min = -50
					max = 50
					multiplier = 0.5
				}
				opinion_modifier = {
					who = scope:first_consort
					opinion_target = root
					min = -50
					max = 50
					multiplier = 0.5
				}

				modifier = { #Favor
					scope:first_consort = {
						has_character_modifier = favored_consort_modifier
					}
					add = 10
				}
				modifier = { #Favor
					scope:first_consort = {
						has_character_modifier = favor_boost_modifier
					}
					add = 15
				}
				modifier = { #Favor
					scope:first_consort = {
						has_character_modifier = beloved_consort_modifier
					}
					add = 20
				}

				modifier = {
					NOT = { scope:first_consort = { is_attracted_to_gender_of = root } }
					factor = 0.7
				}
				modifier = {
					NOT = { is_attracted_to_gender_of = scope:first_consort }
					factor = 0
				}
				if = {
					limit = {
						NOR = {
							has_relation_lover = scope:first_consort
							has_relation_soulmate = scope:first_consort
							has_relation_potential_lover = scope:first_consort
						}
					}
					set_relation_potential_lover = scope:first_consort
				}
				scope:first_consort = {
					calyver_favor_minor_gain_effect = yes
					add_opinion = {
						target = root
						modifier = romance_opinion
						opinion = 5
					}
				}
				add_opinion = {
					target = scope:first_consort
					modifier = romance_opinion
					opinion = 5
				}
			}
			50 = { #Sleep with them
				trigger = {
					NOR = {
						has_trait = celibate
						has_trait = devoted
						scope:target_consort = {
							has_trait = pregnant
						}
					}
				}
				simple_attraction_modifier = {
					WHO = scope:first_consort
					TARGET = root
					MAX_PERSONALITY = 50 # -50 at low trait combatibility, +150 at high trait combatibility.
					MAX_PHYSICAL = 50 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
				}
				opinion_modifier = {
					opinion_target = scope:first_consort
					min = -50
					max = 50
					multiplier = 0.5
				}
				opinion_modifier = {
					who = scope:first_consort
					opinion_target = root
					min = -50
					max = 50
					multiplier = 0.5
				}
				modifier = {
					OR = {
						has_relation_lover = scope:first_consort
						has_relation_soulmate = scope:first_consort
						has_relation_potential_lover = scope:first_consort
					}
					add = 15
				}

				modifier = { #Favor
					scope:first_consort = {
						has_character_modifier = favored_consort_modifier
					}
					add = 10
				}
				modifier = { #Favor
					scope:first_consort = {
						has_character_modifier = favor_boost_modifier
					}
					add = 15
				}
				modifier = { #Favor
					scope:first_consort = {
						has_character_modifier = beloved_consort_modifier
					}
					add = 20
				}

				modifier = {
					NOT = { scope:first_consort = { is_attracted_to_gender_of = root } }
					factor = 0.7
				}
				modifier = {
					NOT = { is_attracted_to_gender_of = scope:first_consort }
					factor = 0
				}
				had_sex_with_effect = {
					CHARACTER = scope:first_consort
					PREGNANCY_CHANCE = pregnancy_chance
				}
				scope:first_consort = {
					calyver_favor_moderate_gain_effect = yes
					add_opinion = {
						target = root
						modifier = romance_opinion
						opinion = 5
					}
				}
				add_opinion = {
					target = scope:first_consort
					modifier = romance_opinion
					opinion = 5
				}
			}
			50 = { #Nothing
				
			}
		}
		#Stress
		if = {
			limit = {
				NOR = {
					has_trait = shy
					has_trait = craven
				}
			}
			add_stress = minor_stress_impact_loss
		}
		
		stress_impact = {
			shy = minor_stress_impact_gain
			craven = minor_stress_impact_gain
		}
		
        ai_chance = {
            base = 100
            ai_value_modifier = {
   				ai_rationality = 0.10
				ai_greed = 0.1
   			}
			
			opinion_modifier = { #Opinion
				opinion_target = scope:first_consort
				min = -50
				max = 50
				multiplier = 1
			}
			
			modifier = { #Stress management
				has_trait = shy
				add = -25
			}
			modifier = { #Stress management
				has_trait = craven
				add = -25
			}
			modifier = { #Stress management
				has_trait = chaste
				add = -15
			}	
			modifier = { #Traits
				has_trait = lustful
				add = 25
			}
			modifier = {
				NOT = { is_attracted_to_gender_of = scope:first_consort }
				add = -50
			}
			modifier = {
				exists = primary_spouse
				scope:first_consort = { 
					this = root.primary_spouse
				}
				add = 10
			}
			modifier = {
				scope:first_consort = { 
					has_high_consort_position_trigger = yes
				}
				add = 5
			}
			modifier = {
				any_spouse = { 
					this = scope:first_consort
				}
				add = 5
			}
			modifier = {
				scope:first_consort = { 
					has_character_modifier = favored_consort_modifier
				}
				add = 10
			}
			modifier = {
				scope:first_consort = { 
					has_character_modifier = favor_boost_modifier
				}
				add = 15
			}
			modifier = {
				scope:first_consort = { 
					has_character_modifier = beloved_consort_modifier
				}
				add = 20
			}
        }
    }
	
	option = { #Continue with the walk
        name = harem_politics.0020.d
		scope:first_consort = {
			random_list = {
				50 = { #Disappointed
					simple_attraction_modifier = {
						WHO = scope:first_consort
						TARGET = root
						MAX_PERSONALITY = 50 # -50 at low trait combatibility, +150 at high trait combatibility.
						MAX_PHYSICAL = 50 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
					}
					opinion_modifier = {
						opinion_target = root
						min = -50
						max = 50
						multiplier = 0.5
					}
					modifier = {
						is_attracted_to_gender_of = root
						add = 10
					}

					modifier = {
						OR = {
							has_relation_lover = root
							has_relation_soulmate = root
							has_relation_potential_lover = root
						}
						add = 15
					}

					modifier = { #Favor
						has_character_modifier = favored_consort_modifier
						add = 10
					}
					modifier = { #Favor
						has_character_modifier = favor_boost_modifier
						add = 15
					}
					modifier = { #Favor
						has_character_modifier = beloved_consort_modifier
						add = 20
					}

					add_opinion = {
						target = root
						modifier = rejected_me_opinion
					}
				}
				50 = { #Nothing
					modifier = {
						NOT = { is_attracted_to_gender_of = root }
						add = 30
					}
				}
			}
		}	
		
		
		stress_impact = {
			base = miniscule_stress_impact_loss
			shy = minor_stress_impact_loss
			craven = minor_stress_impact_loss 
		}
		
        ai_chance = {
            base = 100
            ai_value_modifier = {
   				ai_honor = -0.10
				ai_greed = -0.1
				ai_boldness = -0.1
   			}
			
			opinion_modifier = { #Opinion
				opinion_target = scope:first_consort
				min = -50
				max = 50
				multiplier = -1
			}
			
			modifier = { #Stress management
				has_trait = shy
				add = 25
			}
			modifier = { #Stress management
				has_trait = craven
				add = 25
			}
			modifier = { 
				has_trait = chaste
				add = 15
			}
			modifier = { 
				has_trait = gregarious
				add = -25
			}	
			modifier = { 
				has_trait = lustful
				add = -15
			}	
			modifier = {
				NOT = { is_attracted_to_gender_of = scope:first_consort }
				add = 20
			}
        }
    }
	
	after = {
		scope:first_consort = {
			add_character_flag = {
				flag = had_harem_event_flag
				years = 4
			}
		}
	}
}

##################
##Fallback event##
##################

harem_events.0010 = {
	type = character_event
	title = harem_events.0001.t	
	desc = harem_events.0010.desc
	
	theme = family
	override_background = {
		reference = garden
	}
	
	right_portrait = { 	
		character = root
		animation = personality_content
	}
	
	trigger = {
		is_landed_or_landless_administrative = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
	}
	
	option = {
        name = harem_events.0010.a
		
		add_stress = minor_stress_impact_loss
		
        ai_chance = {
            base = 10
        }
    }
}

##########################################
##Consort Hua scolds Lingron for singing##
##########################################
harem_events.1011 = {
	hidden = yes
	
	trigger = {
		harem_events_hua_fei_lingron_trigger = { LIEGE = root }
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
		random_consort = {
			limit = {
				consort_events_hua_fei_trigger = yes
			}
			weight = {
				base = 10
				modifier = {
					has_character_modifier = favor_boost_modifier
					add = 10
				}
				modifier = {
					has_character_modifier = favored_consort_modifier
					add = 10
				}
				modifier = {
					has_character_modifier = beloved_consort_modifier
					add = 20
				}
				modifier = {
					root.primary_spouse ?= this
					add = -10
				}
				modifier = {
					add = {
						value = ai_honor
						multiply = -1
					}
				}
			}
			save_scope_as = hua_fei
		}
		if = {
			limit = {
				exists = scope:hua_fei
			}
			random_concubine = {
				limit = {
					consort_events_lingron_trigger = {
						HUA_FEI = scope:hua_fei
						LIEGE = root
					}
				}
				weight = {
					base = 10
					modifier = {
						is_regular_concubine_of = {
							LIEGE = root
						}
						add = 10
					}
					modifier = {
						is_lowborn = yes
						add = 15
					}
					modifier = {
						add = diplomacy
					}
					modifier = {
						has_trait = shy
						add = 15
					}
					modifier = {
						has_trait = craven
						add = 15
					}
					modifier = {
						harem_politics_unfavored_consort_trigger = yes
						add = 15
					}
					modifier = {
						harem_politics_forgotten_consort_trigger = yes
						add = 15
					}
					modifier = {
						NOR = {
							any_close_family_member = {
								OR = {
									is_powerful_vassal_of = root
									is_councillor_of = root
								}
							}
							house ?= {
								house_head.top_liege ?= root.top_liege
								is_dominant_family = yes
								any_house_member = {
									this = prev
								}
							}
						}
						add = 15
					}
					modifier = {
						has_relation_potential_rival = scope:hua_fei
						add = 10
					}
					modifier = {
						has_relation_rival = scope:hua_fei
						add = 20
					}
				}
				save_scope_as = an_daying
			}
			if = {
				limit = {
					exists = scope:an_daying
					scope:hua_fei != scope:an_daying
				}
				scope:an_daying = {
					if = {
						limit = {
							diplomacy < decent_skill_rating
						}
						add_diplomacy_skill = 2
					}
				}
				trigger_event = harem_events.0011
			}
			else = {
				on_trigger_fail_visit_harem_fallback_effect = yes
			}
		}
		else = {
			on_trigger_fail_visit_harem_fallback_effect = yes
		}
	}
}
harem_events.0011 = {
	type = character_event
	title = harem_events.0001.t
	desc = harem_events.0011.desc
	
	theme = family
	override_background = {
		reference = garden
	}
	
	right_portrait = { 	
		character = scope:hua_fei
		animation = disapproval
	}
	left_portrait = { 	
		character = scope:an_daying
		animation = shame
	}
	
	trigger = {
		harem_events_hua_fei_lingron_trigger = { LIEGE = root }
		exists = scope:hua_fei
		exists = scope:an_daying
		scope:hua_fei != scope:an_daying
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {

	}
	
	# You summon Lingron to sing in your chambers
	option = {
        name = harem_events.0011.a
		scope:an_daying = {
			calyver_favor_moderate_gain_effect = yes
			add_opinion = {
				target = root
				modifier = romance_opinion
				opinion = 15
			}
			hidden_effect = {
				add_character_flag = {
					flag = visited_consort_flag
					days = 20
				}
			}
		}
		had_sex_with_effect = {
			CHARACTER = scope:an_daying
			PREGNANCY_CHANCE = pregnancy_chance
		}
		progress_towards_lover_effect = {
			CHARACTER = scope:an_daying
			OPINION = 0
			REASON = lover_liege_harem_reason
		}
		scope:hua_fei = {
			calyver_favor_minor_loss_effect = yes
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -5
			}
			add_opinion = {
				target = scope:an_daying
				modifier = upset_opinion
				opinion = -15
			}
			progress_towards_rival_effect = {
				CHARACTER = scope:an_daying
				REASON = consort_rival_reason
				OPINION = 0
			}
		}
		stress_impact = {
			shy = minor_stress_impact_gain
			craven = minor_stress_impact_gain
			chaste = minor_stress_impact_gain
		}
		
        ai_chance = {
            base = 15
			ai_value_modifier = {
				ai_honor = 0.1
				ai_sociability = 0.2
			}
			modifier = {
				has_trait = shy
				add = -25
			}
			modifier = {
				has_trait = craven
				add = -25
			}
			modifier = {
				has_trait = chaste
				add = -25
			}
			modifier = {
				has_trait = lustful
				add = 15
			}
			modifier = {
				has_trait = just
				add = 15
			}
			compatibility_modifier = {
				who = root
				compatibility_target = scope:an_daying
				multiplier = 1
				max = 30
				min = -30
			}
			opinion_modifier = {
				opinion_target = scope:an_daying
				multiplier = 1
				min = -25
				max = 25
			}
			modifier = {
				NOT = { root = { is_attracted_to_gender_of = scope:an_daying } }
				factor = 0
			}
        }
    }

	# Hua Fei is right
	option = {
        name = harem_events.0011.b
		scope:hua_fei = {
			calyver_favor_moderate_gain_effect = yes
			add_opinion = {
				target = root
				modifier = thankful_opinion
				opinion = 15
			}
		}
		scope:an_daying = {
			calyver_favor_minor_loss_effect = yes
			add_character_modifier = {
				modifier = sleep_deprived_modifier
				years = 2
			}
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
			add_opinion = {
				target = scope:hua_fei
				modifier = upset_opinion
				opinion = -15
			}
			progress_towards_rival_effect = {
				CHARACTER = scope:hua_fei
				REASON = consort_rival_reason
				OPINION = 0
			}
		}
		stress_impact = {
			shy = minor_stress_impact_gain
			craven = minor_stress_impact_gain
			just = minor_stress_impact_gain
		}
        ai_chance = {
            base = 10
			ai_value_modifier = {
				ai_honor = -0.1
				ai_sociability = 0.2
			}
			modifier = {
				has_trait = shy
				add = -25
			}
			modifier = {
				has_trait = craven
				add = -25
			}
			modifier = {
				has_trait = lustful
				add = -15
			}
			modifier = {
				has_trait = just
				add = -25
			}
			compatibility_modifier = {
				who = root
				compatibility_target = scope:hua_fei
				multiplier = 1
				max = 30
				min = -30
			}
			opinion_modifier = {
				opinion_target = scope:hua_fei
				multiplier = 1
				min = -25
				max = 25
			}
			compatibility_modifier = {
				who = root
				compatibility_target = scope:an_daying
				multiplier = -1
				max = 30
				min = -30
			}
			opinion_modifier = {
				opinion_target = scope:an_daying
				multiplier = -1
				min = -25
				max = 25
			}
        }
    }

	# I'll leave them to their dramas
	option = {
        name = harem_events.0011.c
		hidden_effect = {
			scope:an_daying = {
				progress_towards_rival_effect = {
					CHARACTER = scope:hua_fei
					REASON = consort_rival_reason
					OPINION = 0
				}
				add_character_modifier = {
					modifier = sleep_deprived_modifier
					years = 2
				}
				add_opinion = {
					target = scope:hua_fei
					modifier = cruelty_opinion
					opinion = -15
				}
				save_scope_as = secondary_recipient
			}
			scope:hua_fei = {
				save_scope_as = authority
			}
			send_interface_toast = {
				type = event_generic_bad
				title = punished_consort_t
				right_icon = scope:an_daying
				left_icon = scope:hua_fei
				custom_tooltip = punished_consort_desc
			}
		}

		stress_impact = {
			just = minor_stress_impact_gain
		}
        ai_chance = {
            base = 10
			ai_value_modifier = {
				ai_honor = -0.1
			}

			modifier = {
				has_trait = shy
				add = 15
			}
			modifier = {
				has_trait = craven
				add = 15
			}

			modifier = {
				has_trait = lustful
				add = -15
			}
			modifier = {
				has_trait = just
				add = -25
			}
			compatibility_modifier = {
				who = root
				compatibility_target = scope:an_daying
				multiplier = -1
				max = 30
				min = -30
			}
			opinion_modifier = {
				opinion_target = scope:an_daying
				multiplier = -1
				min = -25
				max = 25
			}
        }
    }

	after = {
		hidden_effect = {
			add_character_flag = {
				flag = had_hua_fei_lingron_event_flag
				years = 4
			}
		}
	}
}

#######################################################
## Your matriarch is mad at you for not visiting her ##
#######################################################
harem_events.0012 = {
	type = character_event
	title = harem_events.0012.t
	desc = harem_events.0012.desc
	
	theme = family
	override_background = {
		reference = garden
	}
	
	left_portrait = { 	
		character = scope:matriarch
		animation = disapproval
	}
	right_portrait = { 	
		character = root
		animation = eyeroll
	}
	
	trigger = {
		is_valid_for_visit_matriarch_decision_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}

	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
		# Muslim: mother first, then grandmother
		if = {
			limit = {
				religion = religion:islam_religion
				any_parent = {
					is_eligible_harem_member_trigger = { LIEGE = root }
				}
			}
			random_parent = {
				limit = {
					is_eligible_harem_member_trigger = { LIEGE = root }
				}
				save_scope_as = matriarch
			}
		}
		else_if = {
			limit = {
				any_ancestor = {
					is_eligible_harem_member_trigger = {
						LIEGE = root
					}
					is_grandparent_of = root
				}
			}
			random_ancestor = {
				limit = {
					is_eligible_harem_member_trigger = {
						LIEGE = root
					}
					is_grandparent_of = root
				}
				save_scope_as = matriarch
			}
		}
		else = {
			random_parent = {
				limit = {
					is_eligible_harem_member_trigger = { LIEGE = root }
				}
				save_scope_as = matriarch
			}
		}
		scope:matriarch = {
			save_scope_as = attendant
		}
	}
	
	# Okay then, I shall visit you
	option = {
        name = harem_events.0012.a
		trigger = {
			can_execute_decision = visit_matriarch_decision
		}
		execute_decision = visit_matriarch_decision
		custom_tooltip = harem_events.0012.a.desc
		stress_impact = {
			arrogant = minor_stress_impact_gain
		}
		
        ai_chance = {
            base = 45
			ai_value_modifier = {
				ai_honor = 0.2
				ai_sociability = 0.2
				ai_compassion = 0.5
				ai_zeal = 0.3
			}
			opinion_modifier = {
				opinion_target = scope:matriarch
				multiplier = 1
				min = -25
				max = 25
			}
			modifier = {
				faith = {
					has_doctrine_parameter = parents_get_hooks_on_children
				}
				add = 25
			}
			modifier = {
				has_trait = arrogant
				add = -25
			}
			modifier = {
				has_trait = callous
				add = -15
			}
			modifier = {
				has_trait = lustful
				add = -15
			}
			modifier = {
				has_trait = paranoid
				add = -15
			}
			modifier = {
				has_trait = chaste
				add = 15
			}
			modifier = {
				has_trait = trusting
				add = 15
			}
			modifier = {
				has_trait = forgiving
				add = 15
			}
			modifier = {
				has_trait = compassionate
				add = 15
			}
			modifier = {
				has_trait = humble
				add = 15
			}
			modifier = {
				has_trait = zealous
				add = 15
			}
			modifier = {
				has_trait = just
				add = 15
			}
			modifier = {
				has_trait = diligent
				add = 15
			}
        }
    }

	# But I was just planning to visit you
	option = {
        name = harem_events.0012.b
		duel = {
			skill = diplomacy
			target = scope:matriarch
			# She believes you
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				modifier = {
					scope:matriarch.intrigue < root.intrigue
					add = {
						value = root.intrigue
						subtract = scope:matriarch.intrigue
					}
				}
				desc = harem_events.0012.b.success
				scope:matriarch = {
					add_opinion = {
						target = root
						modifier = pleased_opinion
						opinion = 15
					}
				}
			}
			# She doesn't believe you
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				modifier = {
					scope:matriarch.intrigue > root.intrigue
					add = {
						value = scope:matriarch.intrigue
						subtract = root.intrigue
					}
				}
				desc = harem_events.0012.b.failure
				scope:matriarch = {
					add_opinion = {
						target = root
						modifier = frustrated_opinion
						opinion = -10
					}
				}
				add_piety = minor_piety_loss
			}
		}
		harem_random_event_effect = yes
        ai_chance = {
            base = 45
			ai_value_modifier = {
				ai_honor = -0.1
				ai_zeal = -0.15
				ai_compassion = -0.15
			}
			opinion_modifier = {
				opinion_target = scope:matriarch
				multiplier = -1
				min = -25
				max = 25
			}
			modifier = {
				has_trait = callous
				add = 15
			}
			modifier = {
				has_trait = lustful
				add = 15
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
			modifier = {
				has_trait = chaste
				add = -15
			}
			modifier = {
				has_trait = trusting
				add = -15
			}
			modifier = {
				has_trait = forgiving
				add = -15
			}
			modifier = {
				has_trait = compassionate
				add = -15
			}
			modifier = {
				has_trait = zealous
				add = -15
			}
        }
    }

	# I'll visit you when I see fit
	option = {
        name = harem_events.0012.c
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -10
			}
		}
		add_piety = medium_piety_loss
		if = {
			limit = {
				faith = {
					has_doctrine_parameter = parents_get_hooks_on_children
				}
			}
			stress_impact = {
				zealous = minor_stress_impact_gain
			}
		}
		stress_impact = {
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			humble = minor_stress_impact_gain
		}
		harem_random_event_effect = yes
        ai_chance = {
            base = 30
			ai_value_modifier = {
				ai_honor = -0.5
				ai_zeal = -0.2
				ai_compassion = -0.5
			}
			opinion_modifier = {
				opinion_target = scope:matriarch
				multiplier = -1
				min = -25
				max = 25
			}
			modifier = {
				has_trait = arrogant
				add = 15
			}
			modifier = {
				has_trait = callous
				add = 15
			}
			modifier = {
				has_trait = lustful
				add = 15
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
			modifier = {
				has_trait = chaste
				add = -15
			}
			modifier = {
				has_trait = trusting
				add = -15
			}
			modifier = {
				has_trait = forgiving
				add = -25
			}
			modifier = {
				has_trait = compassionate
				add = -25
			}
			modifier = {
				has_trait = humble
				add = -25
			}
			modifier = {
				has_trait = zealous
				add = -15
			}
			modifier = {
				faith = {
					has_doctrine_parameter = parents_get_hooks_on_children
				}
				has_trait = zealous
				add = -10
			}
        }
    }

	after = {
		hidden_effect = {
			add_character_flag = {
				flag = had_matriarch_requested_visit_event_flag
				years = 2
			}
		}
	}
}

###########################################
## An apothecary is teaching sex lessons ##
###########################################
harem_events.1013 = {
	hidden = yes
	
	trigger = {
		harem_events_apothecary_sex_lessons_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
		random_consort = {
			limit = {
				valid_prudent_consort_trigger = yes
			}
			weight = {
				base = 10
				modifier = {
					has_trait = chaste
					add = 20
				}
				modifier = {
					has_trait = arrogant
					add = 10
				}
				modifier = {
					has_trait = shy
					add = 10
				}
				modifier = {
					is_high_ranking_consort_trigger = {
						LIEGE = root
					}
					add = 10
				}
			}
			save_scope_as = prudent_consort
		}
		if = {
			limit = {
				exists = scope:prudent_consort
			}
			random_consort = {
				limit = {
					valid_lustful_consort_trigger = yes
				}
				weight = {
					base = 10
					modifier = {
						has_trait = deviant
						add = 15
					}
				}
				save_scope_as = lustful_consort
			}
			if = {
				limit = {
					exists = scope:lustful_consort
					scope:prudent_consort != scope:lustful_consort
				}
				trigger_event = harem_events.0013
			}
			else = {
				on_trigger_fail_visit_harem_fallback_effect = yes
			}
		}
		else = {
			on_trigger_fail_visit_harem_fallback_effect = yes
		}
	}
}
harem_events.0013 = {
	type = character_event
	title = harem_events.0001.t
	desc = harem_events.0013.desc
	
	theme = family
	override_background = {
		reference = garden
	}
	
	left_portrait = { 	
		character = scope:prudent_consort
		animation = disgust
	}
	right_portrait = { 	
		character = scope:lustful_consort
		animation = happiness
	}
	
	trigger = {
		harem_events_apothecary_sex_lessons_trigger = yes
		exists = scope:prudent_consort
		exists = scope:lustful_consort
		scope:prudent_consort != scope:lustful_consort
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {

	}
	
	# Great idea, let the lessons start!
	option = {
        name = harem_events.0013.a

		scope:prudent_consort = {
			add_opinion = {
				target = root
				modifier = disapproval_opinion
				opinion = -10
			}
		}
		scope:lustful_consort = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
		}
		every_consort = {
			limit = {
				valid_harem_consort_trigger = yes
			}
			custom = custom.every_consort
			add_character_modifier = {
				modifier = herbalist_sex_lessons_modifier
				years = 3
			}
			hidden_effect = {
				if = { # Some consorts are happy
					limit = {
						this != scope:lustful_consort
						OR = {
							has_trait = lustful
							has_trait = deviant
						}
						trigger_if = {
							limit = {
								has_opinion_modifier = {
									modifier = forced_me_concubine_marriage_opinion
									target = root
								}
							}
							OR = {
								has_trait = greedy
								has_trait = ambitious
								has_trait = arrogant
							}
						}
						NAND = {
							has_trait = zealous
							OR = {
								faith = { trait_is_sin = lustful }
								faith = { trait_is_sin = deviant }
								trait_is_shunned_or_criminal_in_faith_trigger = {
									FAITH = this.faith
									TRAIT = trait:deviant
									GENDER_CHARACTER = this
								}
							}
							NOT = { has_trait = arbitrary }
						}
					}
					add_opinion = {
						target = root
						modifier = pleased_opinion
						opinion = 10
					}
				}
				else_if = { # Others disapprove
					limit = {
						this != scope:prudent_consort
						OR = {
							has_trait = shy
							has_trait = craven
							AND = {
								has_trait = zealous
								OR = {
									faith = { trait_is_sin = lustful }
									faith = { trait_is_sin = deviant }
									trait_is_shunned_or_criminal_in_faith_trigger = {
										FAITH = this.faith
										TRAIT = trait:deviant
										GENDER_CHARACTER = this
									}
								}
								NOT = { has_trait = arbitrary }
							}
							AND = {
								has_opinion_modifier = {
									modifier = forced_me_concubine_marriage_opinion
									target = root
								}
								NOR = {
									has_trait = greedy
									has_trait = ambitious
									has_trait = arrogant
								}
							}
						}
					}
					add_opinion = {
						target = root
						modifier = disappointed_opinion
						opinion = -10
					}
				}
			}
		}
		if = {
			limit = {
				OR = {
					faith = { trait_is_sin = lustful }
					faith = { trait_is_sin = deviant }
					trait_is_shunned_or_criminal_in_faith_trigger = {
						FAITH = root.faith
						TRAIT = trait:deviant
						GENDER_CHARACTER = root
					}
				}
			}
			add_piety = minor_piety_loss
			if = {
				limit = {
					has_trait = zealous
				}
				stress_impact = {
					zealous = minor_stress_impact_gain
				}
			}
		}
		stress_impact = {
			shy = minor_stress_impact_gain
			chaste = minor_stress_impact_gain
		}
        ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = -0.1
				ai_boldness = 0.1
			}
			modifier = {
				has_trait = shy
				add = -25
			}
			modifier = {
				has_trait = chaste
				add = -25
			}
			modifier = {
				has_trait = zealous
				OR = {
					faith = { trait_is_sin = lustful }
					faith = { trait_is_sin = deviant }
					trait_is_shunned_or_criminal_in_faith_trigger = {
						FAITH = root.faith
						TRAIT = trait:deviant
						GENDER_CHARACTER = root
					}
				}
				add = -25
			}
			modifier = {
				has_trait = lustful
				add = 15
			}
			modifier = {
				has_trait = deviant
				add = 15
			}
			modifier = {
				has_sexuality = asexual
				add = -15
			}
			modifier = {
				any_child = {
					character_gender_can_inherit_from_trigger = {
						CHARACTER = root
					}
					count < 3
				}
				add = 15
			}
        }
    }

	# Ban the lessons
	option = {
        name = harem_events.0013.b

		scope:lustful_consort = {
			add_opinion = {
				target = root
				modifier = disapproval_opinion
				opinion = -10
			}
		}
		scope:prudent_consort = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
		}
		hidden_effect = {
			every_consort = { # Lustful consorts are unhappy
				limit = {
					valid_harem_consort_trigger = yes
					this != scope:lustful_consort
					OR = {
						has_trait = lustful
						has_trait = deviant
					}
					trigger_if = {
						limit = {
							has_opinion_modifier = {
								modifier = forced_me_concubine_marriage_opinion
								target = root
							}
						}
						OR = {
							has_trait = greedy
							has_trait = ambitious
							has_trait = arrogant
						}
					}
					NAND = {
						has_trait = zealous
						OR = {
							faith = { trait_is_sin = lustful }
							faith = { trait_is_sin = deviant }
							trait_is_shunned_or_criminal_in_faith_trigger = {
								FAITH = this.faith
								TRAIT = trait:deviant
								GENDER_CHARACTER = this
							}
						}
						NOT = { has_trait = arbitrary }
					}
				}
				add_opinion = {
					target = root
					modifier = disappointed_opinion
					opinion = -10
				}
			}
		}
		
		stress_impact = {
			lustful = minor_stress_impact_gain
			deviant = minor_stress_impact_gain
		}
        ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_boldness = -0.2
			}
			modifier = {
				has_trait = shy
				add = 15
			}
			modifier = {
				has_trait = chaste
				add = 15
			}
			modifier = {
				has_trait = zealous
				OR = {
					faith = { trait_is_sin = lustful }
					faith = { trait_is_sin = deviant }
					trait_is_shunned_or_criminal_in_faith_trigger = {
						FAITH = root.faith
						TRAIT = trait:deviant
						GENDER_CHARACTER = root
					}
				}
				add = 15
			}
			modifier = {
				has_trait = lustful
				add = -25
			}
			modifier = {
				has_trait = deviant
				add = -25
			}
        }
    }

	# If some will do it, then be it
	option = {
        name = harem_events.0013.c
		custom_tooltip = harem_events.0013.c.tooltip

		hidden_effect = {
			every_consort = {
				limit = {
					valid_harem_consort_trigger = yes
					OR = {
						has_trait = lustful
						has_trait = deviant
					}
					trigger_if = {
						limit = {
							has_opinion_modifier = {
								modifier = forced_me_concubine_marriage_opinion
								target = root
							}
						}
						OR = {
							has_trait = greedy
							has_trait = ambitious
							has_trait = arrogant
						}
					}
					NAND = {
						has_trait = zealous
						OR = {
							faith = { trait_is_sin = lustful }
							faith = { trait_is_sin = deviant }
							trait_is_shunned_or_criminal_in_faith_trigger = {
								FAITH = this.faith
								TRAIT = trait:deviant
								GENDER_CHARACTER = this
							}
						}
						NOT = { has_trait = arbitrary }
					}
				}
				add_character_modifier = {
					modifier = herbalist_sex_lessons_modifier
					years = 3
				}
			}
		}

        ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_energy = -0.2
			}
			modifier = {
				has_sexuality = asexual
				add = 15
			}
        }
    }

	after = {
		hidden_effect = {
			add_character_flag = {
				flag = had_apothecary_sex_lessons_event_flag
				years = 4
			}
		}
	}
}
###################################
## Two consorts gossip about you ##
###################################
harem_events.1014 = {
	hidden = yes
	
	trigger = {
		harem_events_gossiping_about_liege_consorts_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {
		if = {
			limit = {
				NOT = {
					exists = scope:harem_liege
				}
			}
			save_scope_as = harem_liege
		}
		random_consort = {
			limit = {
				harem_events_is_valid_new_consort_trigger = yes
			}
			weight = {
				base = 10
				modifier = {
					has_trait = shy
					add = 10
				}
				modifier = {
					has_trait = brave
					add = 10
				}
				modifier = {
					has_trait = lustful
					add = 10
				}
				modifier = {
					has_trait = ambitious
					add = 10
				}
				modifier = {
					has_trait = greedy
					add = 10
				}
				modifier = {
					has_trait = arrogant
					add = 5
				}
			}
			save_scope_as = new_consort
		}
		if = {
			limit = {
				exists = scope:new_consort
			}
			random_consort = {
				limit = {
					harem_events_is_valid_older_consort_trigger = { CONSORT = scope:new_consort }
				}
				weight = {
					base = 10
					modifier = {
						add = this.age
					}
					modifier = {
						age > scope:new_consort.age
						add = 15
					}
					modifier = {
						any_child = {
							even_if_dead = yes
							is_child_of = root
							count > 0
						}
						add = 10
					}
					modifier = {
						any_child = {
							even_if_dead = yes
							is_child_of = root
							count > 1
						}
						add = 10
					}
					modifier = {
						NOT = {
							has_character_flag = flag_new_consort
						}
						add = 15
					}
				}
				save_scope_as = older_consort
			}
			if = {
				limit = {
					exists = scope:older_consort
					scope:new_consort != scope:older_consort
				}
				trigger_event = harem_events.0014
			}
			else = {
				on_trigger_fail_visit_harem_fallback_effect = yes
			}
		}
		else = {
			on_trigger_fail_visit_harem_fallback_effect = yes
		}
	}
}
harem_events.0014 = {
	type = character_event
	title = harem_events.0001.t
	desc = {
		desc = harem_events.0014.start.desc
		desc = harem_events.0014.end.desc
	}
	
	theme = family
	override_background = {
		reference = garden
	}
	
	left_portrait = { 	
		character = scope:older_consort
		animation = fanning
	}
	right_portrait = { 	
		character = scope:new_consort
		animation = happiness
	}
	
	trigger = {
		harem_events_gossiping_about_liege_consorts_trigger = yes
		exists = scope:older_consort
		exists = scope:new_consort
		scope:older_consort != scope:new_consort
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}
	
	immediate = {

	}

	# Step inside
	option = {
        name = harem_events.0014.a

		random_list = {
			25 = { # The consort will be impressed by you
				simple_attraction_modifier = {
					WHO = scope:new_consort
					TARGET = root
					MAX_PERSONALITY = 50 # -50 at low trait combatibility, +150 at high trait combatibility.
					MAX_PHYSICAL = 50 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
				}
				modifier = {
					diplomacy >= medium_skill_rating
					add = root.diplomacy
				}
				modifier = {
					scope:new_consort = {
						has_trait = shy
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						has_trait = craven
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						has_trait = chaste
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						has_opinion_modifier = {
							modifier = forced_me_concubine_marriage_opinion
							target = root
						}
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						has_character_flag = abducted_non_believer
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						has_trait = trusting
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						has_trait = ambitious
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						has_trait = greedy
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						NOT = {
							is_attracted_to_gender_of = root
						}
					}
					add = -15
				}
				modifier = {
					has_trait = gregarious
					add = 15
				}
				custom_tooltip = harem_events.0014.a.success

				hidden_effect = {
					send_interface_toast = {
						type = event_generic_good
						title = harem_events.0014.a.success.tt
						right_icon = scope:new_consort
						add_prestige = minor_prestige_gain
						scope:new_consort = {
							calyver_favor_moderate_gain_effect = yes
							add_opinion = {
								target = root
								modifier = admiration_opinion
								opinion = 15
							}
						}
						add_opinion = {
							target = scope:new_consort
							modifier = pleased_opinion
							opinion = 15
						}
					}
				}
			}
			25 = { # The consort will be scared of you
				modifier = {
					diplomacy < medium_skill_rating
					add = {
						value = medium_skill_rating
						subtract = root.diplomacy
						multiply = 1.5
					}
				}
				modifier = {
					scope:new_consort = {
						has_trait = shy
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						has_trait = craven
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						has_trait = chaste
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						has_opinion_modifier = {
							modifier = forced_me_concubine_marriage_opinion
							target = root
						}
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						has_character_flag = abducted_non_believer
					}
					add = 15
				}
				modifier = {
					scope:new_consort = {
						has_trait = trusting
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						has_trait = ambitious
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						has_trait = greedy
					}
					add = -15
				}
				modifier = {
					scope:new_consort = {
						NOT = {
							is_attracted_to_gender_of = root
						}
					}
					add = 15
				}
				custom_tooltip = harem_events.0014.a.failure
				hidden_effect = {
					send_interface_toast = {
						type = event_generic_bad
						title = harem_events.0014.a.failure.tt
						right_icon = scope:new_consort
						add_prestige = minor_prestige_loss
						scope:new_consort = {
							add_opinion = {
								target = root
								modifier = scared_opinion
								opinion = -10
							}
						}
					}
				}
			}
		}
		stress_impact = {
			shy = minor_stress_impact_gain
			craven = minor_stress_impact_gain
		}
        ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = 0.1
				ai_boldness = 0.2
			}
			modifier = {
				has_trait = shy
				add = -25
			}
			modifier = {
				has_trait = craven
				add = -25
			}
			modifier = {
				has_trait = honest
				add = 15
			}
			modifier = {
				has_trait = deceitful
				add = -15
			}
			modifier = {
				has_trait = gregarious
				add = 15
			}
			modifier = {
				has_trait = arrogant
				add = 15
			}
			modifier = {
				diplomacy < medium_skill_rating
				add = -15
			}
        }
    }

	# You eavesdrop
	option = {
        name = harem_events.0014.b
		custom_tooltip = harem_events.0014.b.tooltip
		hidden_effect = {
			random_list = {
				25 = { # She says good things about you
					simple_attraction_modifier = {
						WHO = scope:older_consort
						TARGET = root
						MAX_PERSONALITY = 50 # -50 at low trait combatibility, +150 at high trait combatibility.
						MAX_PHYSICAL = 50 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
					}
					opinion_modifier = { # Opinion of you
						who = scope:older_consort
						opinion_target = root
						multiplier = 0.75
					}

					modifier = {
						scope:older_consort = {
							NOT = {
								is_attracted_to_gender_of = root
							}
						}
						add = -15
					}

					modifier = {
						scope:older_consort = {
							any_child = {
								even_if_dead = yes
								is_child_of = root
								count > 0
							}
						}
						add = 15
					}
					modifier = {
						scope:older_consort = {
							harem_politics_favored_consort_trigger = yes
						}
						add = 5
					}
					modifier = {
						scope:older_consort = {
							harem_politics_beloved_consort_trigger = yes
						}
						add = 5
					}
					modifier = {
						scope:older_consort = {
							has_character_modifier = favor_boost_modifier
						}
						add = 5
					}

					send_interface_toast = {
						type = event_generic_good
						title = harem_events.0014.b.success.tt
						right_icon = scope:older_consort
						add_prestige = minor_prestige_gain
						scope:new_consort = {
							add_opinion = {
								target = root
								modifier = admiration_opinion
								opinion = 10
							}
						}
						scope:older_consort = {
							calyver_favor_minor_gain_effect = yes
						}
						add_opinion = {
							target = scope:older_consort
							modifier = pleased_opinion
							opinion = 10
						}
					}
				}
				25 = { # She says bad things about you
					opinion_modifier = { # Opinion of you
						who = scope:older_consort
						opinion_target = root
						multiplier = -0.75
					}

					modifier = {
						scope:older_consort = {
							NOT = {
								is_attracted_to_gender_of = root
							}
						}
						add = 5
					}

					modifier = {
						scope:older_consort = {
							harem_politics_unfavored_consort_trigger = yes
						}
						add = 5
					}
					modifier = {
						scope:older_consort = {
							harem_politics_forgotten_consort_trigger = yes
						}
						add = 5
					}
					send_interface_toast = {
						type = event_generic_bad
						title = harem_events.0014.b.failure.tt
						right_icon = scope:older_consort
						add_prestige = minor_prestige_loss
						scope:new_consort = {
							add_opinion = {
								target = root
								modifier = scared_opinion
								opinion = -10
							}
						}
						scope:older_consort = {
							calyver_favor_minor_loss_effect = yes
						}
						add_opinion = {
							target = scope:older_consort
							modifier = disappointed_opinion
							opinion = -15
						}
					}
				}
			}
		}
		stress_impact = {
			honest = minor_stress_impact_gain
		}
        ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = -0.1
				ai_boldness = -0.2
			}
			modifier = {
				has_trait = shy
				add = 15
			}
			modifier = {
				has_trait = craven
				add = 15
			}
			modifier = {
				has_trait = honest
				add = -25
			}
			modifier = {
				has_trait = deceitful
				add = 15
			}
			modifier = {
				has_trait = gregarious
				add = -15
			}
			modifier = {
				has_trait = arrogant
				add = -15
			}
			modifier = {
				diplomacy >= medium_skill_rating
				add = -10
			}
        }
    }

	# You ignore them
	option = {
        name = harem_events.0014.c

		hidden_effect = {
			random_list = {
				25 = { # She says good things about you
					simple_attraction_modifier = {
						WHO = scope:older_consort
						TARGET = root
						MAX_PERSONALITY = 50 # -50 at low trait combatibility, +150 at high trait combatibility.
						MAX_PHYSICAL = 50 # Will be -25 by default (due to Rakish) but can vary from between -150 and +150 due to other Attraction modifiers.
					}
					opinion_modifier = { # Opinion of you
						who = scope:older_consort
						opinion_target = root
						multiplier = 0.75
					}

					modifier = {
						scope:older_consort = {
							NOT = {
								is_attracted_to_gender_of = root
							}
						}
						add = -15
					}

					modifier = {
						scope:older_consort = {
							any_child = {
								even_if_dead = yes
								is_child_of = root
								count > 0
							}
						}
						add = 15
					}
					modifier = {
						scope:older_consort = {
							harem_politics_favored_consort_trigger = yes
						}
						add = 5
					}
					modifier = {
						scope:older_consort = {
							harem_politics_beloved_consort_trigger = yes
						}
						add = 5
					}
					modifier = {
						scope:older_consort = {
							has_character_modifier = favor_boost_modifier
						}
						add = 5
					}

					scope:new_consort = {
						add_opinion = {
							target = root
							modifier = admiration_opinion
							opinion = 10
						}
					}
				}
				25 = { # She says bad things about you
					opinion_modifier = { # Opinion of you
						who = scope:older_consort
						opinion_target = root
						multiplier = -0.75
					}

					modifier = {
						scope:older_consort = {
							NOT = {
								is_attracted_to_gender_of = root
							}
						}
						add = 5
					}

					modifier = {
						scope:older_consort = {
							harem_politics_unfavored_consort_trigger = yes
						}
						add = 5
					}
					modifier = {
						scope:older_consort = {
							harem_politics_forgotten_consort_trigger = yes
						}
						add = 5
					}

					scope:new_consort = {
						add_opinion = {
							target = root
							modifier = scared_opinion
							opinion = -10
						}
					}
				}
			}
		}
		stress_impact = {
			deceitful = minor_stress_impact_gain
		}
        ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = 0.15
				ai_boldness = -0.2
			}
			modifier = {
				has_trait = shy
				add = 15
			}
			modifier = {
				has_trait = craven
				add = 15
			}
			modifier = {
				has_trait = honest
				add = 15
			}
			modifier = {
				has_trait = deceitful
				add = -25
			}
			modifier = {
				has_trait = arrogant
				add = -15
			}
			modifier = {
				has_trait = gregarious
				add = -15
			}
        }
    }

	after = {
		hidden_effect = {
			add_character_flag = {
				flag = had_gossiping_consorts_about_liege_event_flag
				years = 2
			}
		}
	}
}

##########################
## Whispers in the Hall ##
##########################
harem_events.1015 = {
	hidden = yes

	trigger = {
		harem_events_gossiping_consorts_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}

	immediate = {
		if = {
			limit = { NOT = { exists = scope:harem_liege } }
			save_scope_as = harem_liege
		}

		random_consort = {
			limit = { harem_events_is_valid_new_consort_trigger = yes }
			weight = {
				base = 1
				modifier = {
					exists = scope:harem_liege.primary_spouse
					this != scope:harem_liege.primary_spouse
					add = 15
				}
				modifier = {
					NOT = { has_trait = shy }
					add = 15
				}
				modifier = {
					is_concubine_of = root
					add = 15
				}
				modifier = {
					age <= 22
					add = 15
				}
			}
			save_scope_as = new_consort
		}

		if = {
			limit = { exists = scope:new_consort }
			random_consort = {
				limit = {
					harem_events_is_valid_older_consort_15_trigger = { CONSORT = scope:new_consort }
				}
				weight = {
					base = 1
					modifier = {
						exists = scope:harem_liege.primary_spouse
						this != scope:harem_liege.primary_spouse
						add = 15
					}
					modifier = {
						NOT = { has_trait = shy }
						add = 15
					}
					modifier = {
						is_concubine_of = root
						add = 15
					}
					modifier = {
						add = this.age
					}
					modifier = {
						age > scope:new_consort.age
						add = 15
					}
					modifier = {
						NOT = { has_character_flag = flag_new_consort }
						add = 15
					}
				}
				save_scope_as = older_consort
			}
			if = {
				limit = {
					exists = scope:older_consort
					scope:new_consort != scope:older_consort
				}
				random_list = {
					20 = { # 1) Personal rivalry (older consort has a rival in harem)
						trigger = {
							scope:older_consort = {
								any_relation = {
									type = rival
									is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
								}
							}
						}
						scope:older_consort = {
							random_relation = {
								type = rival
								limit = {
									is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
								}
								save_scope_as = slander_target
								scope:slander_target = {
									save_scope_as = lower_center_character
								}
							}
						}
						set_local_variable = {
							name = chosen_topic
							value = flag:gossiping_about_rival
						}
					}
				
					18 = { # 2) Rivalry warning (two other consorts are rivals)
						trigger = {
							any_consort = {
								is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
								this != scope:new_consort
								this != scope:older_consort
								any_relation = {
									type = rival
									this != scope:new_consort
									this != scope:older_consort
									is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
								}
							}
						}
						random_consort = {
							limit = {
								is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
								this != scope:new_consort
								this != scope:older_consort
								any_relation = {
									type = rival
									this != scope:new_consort
									this != scope:older_consort
									is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
								}
							}
							save_scope_as = first_rival
						}
						random_consort = {
							limit = {
								this != scope:new_consort
								this != scope:older_consort
								this != scope:first_rival
								is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
								has_relation_rival = scope:first_rival
							}
							save_scope_as = second_rival
						}
						if = {
							limit = {
								scope:second_rival ?= {
									this != scope:first_rival
								}
							}
							set_local_variable = {
								name = chosen_topic
								value = flag:gossiping_about_rival_consorts
							}
						}
					}
				
					8 = { # 3) Outsider warning (eligible harem member, not consort)
						trigger = {
							any_courtier = {
								is_eligible_harem_member_trigger = {
									LIEGE = root
								}
								NOR = {
									is_consort_of = root
								}
							}
						}
						random_courtier = {
							limit = {
								is_eligible_harem_member_trigger = {
									LIEGE = root
								}
								NOR = {
									is_consort_of = root
								}
							}
							weight = {
								base = 1
								modifier = {
									is_parent_of = root
									root.religion = religion:islam_religion
									add = 20
								}
								modifier = {
									is_grandparent_of = root
									add = 20
								}
								modifier = {
									is_parent_of = root
									add = 10
								}
							}
							save_scope_as = liege_relative
							scope:liege_relative = {
								save_scope_as = lower_center_character
							}
						}
						set_local_variable = {
							name = chosen_topic
							value = flag:gossiping_about_liege_relative
						}
					}
				
					12 = { # 4) Chief eunuch / admin story topic
						trigger = {
							employs_court_position = chief_eunuch_court_position
						}
						court_position:chief_eunuch_court_position = {
							save_scope_as = eunuch
							save_scope_as = lower_center_character
						}
						set_local_variable = {
							name = chosen_topic
							value = flag:gossiping_about_chief_eunuch
						}
					}
				
					12 = { # 5) Secret gossip (unknown to ruler)
						trigger = {
							any_courtier = {
								this != scope:new_consort
								this != scope:older_consort
								any_secret = {
									NOT = { is_known_by = root }
									is_blackmailable_secret_trigger = {
										PARTICIPANT = prev
										BLACKMAILER = root
									}
								}
							}
						}
						random_courtier = {
							limit = {
								this != scope:new_consort
								this != scope:older_consort
								any_secret = {
									NOT = { is_known_by = root }
									is_blackmailable_secret_trigger = {
										PARTICIPANT = prev
										BLACKMAILER = root
									}
								}
							}
							weight = {
								base = 10
								modifier = {
									this != scope:older_consort
									add = 10
								}
							}
							save_scope_as = secret_holder
						}
						scope:secret_holder = {
							save_scope_as = lower_center_character
							random_secret = {
								limit = {
									NOT = { is_known_by = root }
									is_blackmailable_secret_trigger = {
										PARTICIPANT = prev
										BLACKMAILER = root
									}
								}
								save_scope_as = secret
								if = {
									limit = {
										exists = scope:secret
									}
									scope:secret = {
										if = {
											limit = {
												NOT = {
													is_known_by = scope:older_consort
												}
											}
											reveal_to = scope:older_consort
										}
										if = {
											limit = {
												NOT = {
													is_known_by = scope:new_consort
												}
											}
											reveal_to = scope:new_consort
										}
									}
									set_local_variable = {
										name = chosen_topic
										value = flag:gossiping_about_court_secret
									}
								}
							}
						}
					}
				
					30 = { # 6) High-ranking/favored evil consort warning
						trigger = {
							any_consort = {
								this != scope:older_consort
								this != scope:new_consort
								NOT = { has_character_flag = flag_new_consort }
								OR = {
									is_high_ranking_consort_trigger = {
										LIEGE = root
									}
									harem_politics_favored_consort_trigger = yes
								}
								harem_politics_evil_consort_trigger = yes
								is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
							}
						}
						random_consort = {
							limit = {
								this != scope:older_consort
								this != scope:new_consort
								NOT = { has_character_flag = flag_new_consort }
								OR = {
									is_high_ranking_consort_trigger = {
										LIEGE = root
									}
									harem_politics_favored_consort_trigger = yes
								}
								harem_politics_evil_consort_trigger = yes
								is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
							}
							save_scope_as = evil_consort
							scope:evil_consort = {
								save_scope_as = lower_center_character
							}
						}
						set_local_variable = {
							name = chosen_topic
							value = flag:gossiping_about_evil_consort
						}
					}
				}
				if = {
					limit = {
						exists = local_var:chosen_topic
					}
					trigger_event = harem_events.0015
				}
				else = { on_trigger_fail_visit_harem_fallback_effect = yes }
			}
			else = { on_trigger_fail_visit_harem_fallback_effect = yes }
		}
		else = { on_trigger_fail_visit_harem_fallback_effect = yes }
	}
}

harem_events.0015 = {
	type = character_event
	title = harem_events.0001.t
	desc = {
		desc = harem_events.0014.start.desc
		desc = harem_events.0015.desc
	}

	theme = intrigue
	override_background = { reference = garden }

	left_portrait = {
		character = scope:older_consort
		animation = personality_honorable
	}
	right_portrait = {
		character = scope:new_consort
		animation = personality_coward
	}

	trigger = {
		harem_events_gossiping_consorts_trigger = yes
		exists = scope:older_consort
		exists = scope:new_consort
		scope:older_consort != scope:new_consort
		exists = local_var:chosen_topic
	}
	on_trigger_fail = {
		on_trigger_fail_visit_harem_fallback_effect = yes
	}

	immediate = {
		hidden_effect = {
			calyver_improve_relationship_effect = {
				CHARACTER = scope:new_consort
				TARGET = scope:older_consort
				REASON = consort_friendship_reason
			}
		}
	}

	# Stay and listen -> Event 2
	option = {
		name = harem_events.0015.a
		custom_tooltip = harem_events.0014.b.tooltip
		trigger_event = harem_events.0016
		stress_impact = {
			honest = minor_stress_impact_gain
			trusting = minor_stress_impact_gain
		}
		ai_chance = {
			base = 45
			ai_value_modifier = {
				ai_honor = -0.15
			}
			modifier = { has_trait = paranoid add = 15 }
			modifier = { has_trait = deceitful add = 15 }
			modifier = { has_trait = honest add = -25 }
			modifier = { has_trait = trusting add = -25 }
		}
	}

	# Leave
	option = {
		name = harem_events.0014.c
		hidden_effect = {
			add_character_flag = {
				flag = had_gossiping_consorts_event_flag
				years = 2
			}
		}
		stress_impact = {
			paranoid = minor_stress_impact_gain
			deceitful = minor_stress_impact_gain
		}
		ai_chance = {
			base = 55
			ai_value_modifier = {
				ai_honor = 0.15
			}
			modifier = { has_trait = paranoid add = -25 }
			modifier = { has_trait = deceitful add = -25 }
			modifier = { has_trait = honest add = 15 }
			modifier = { has_trait = trusting add = 15 }
		}
	}

	after = {
		hidden_effect = {
			scope:new_consort = {
				if = {
					limit = {
						OR = {
							exists = scope:slander_target
							AND = {
								scope:liege_relative ?= {
									has_any_bad_relationship_with_root_trigger = no
									harem_politics_evil_consort_trigger = yes
								}
								scope:older_consort = {
									NOR = {
										has_trait = forgiving
										has_trait = compassionate
										has_any_best_good_relationship_with_character_trigger = { CHARACTER = scope:liege_relative }
									}
								}
							}
							exists = scope:evil_consort
							exists = scope:eunuch
						}
					}
					calyver_worsen_relationship_effect = {
						CHARACTER = scope:new_consort
						TARGET = scope:lower_center_character
						REASON = consort_rival_reason
					}
				}
			}
		}
	}
}

harem_events.0016 = {
	type = character_event
	title = harem_events.0001.t
	desc = {
		desc = harem_events.0016.start.desc
		first_valid = {
			triggered_desc = {
				trigger = { # Gossiping about a rival
					exists = scope:slander_target
				}
				desc = harem_events.0016.rival.desc
			}
			triggered_desc = {
				trigger = { # Gossiping about two rival consorts
					local_var:chosen_topic ?= flag:gossiping_about_rival_consorts
				}
				desc = harem_events.0016.rival_consorts.desc
			}
			triggered_desc = { # Gossiping about a liege relative who is the liege's rival
				trigger = {
					scope:liege_relative ?= {
						has_any_bad_relationship_with_root_trigger = yes
					}
				}
				desc = harem_events.0016.rival_liege_relative.desc
			}
			triggered_desc = { # Gossiping about a liege evil relative
				trigger = {
					scope:liege_relative ?= {
						harem_politics_evil_consort_trigger = yes
					}
					scope:older_consort = {
						NOR = {
							has_trait = forgiving
							has_trait = compassionate
							has_any_best_good_relationship_with_character_trigger = { CHARACTER = scope:liege_relative }
						}
					}
				}
				desc = harem_events.0016.evil_liege_relative.desc
			}
			triggered_desc = { # Gossiping about a liege relative
				trigger = {
					exists = scope:liege_relative
				}
				desc = harem_events.0016.liege_relative.desc
			}
			triggered_desc = { # Gossiping about the chief eunuch
				trigger = {
					exists = scope:eunuch
				}
				desc = harem_events.0016.eunuch.desc
			}
			triggered_desc = { # Gossiping about a secret
				trigger = {
					exists = scope:secret
				}
				desc = harem_events.0016.secret.desc
			}
			triggered_desc = { # Gossiping about a high-ranking/favored evil consort
				trigger = {
					scope:evil_consort ?= {
						is_high_ranking_consort_trigger = {
							LIEGE = root
						}
					}
				}
				desc = harem_events.0016.evil_authority.desc
			}
			triggered_desc = { # Gossiping about a high-ranking/favored evil consort
				trigger = {
					scope:evil_consort ?= {
						harem_politics_favored_consort_trigger = yes
					}
				}
				desc = harem_events.0016.evil_consort.desc
			}
			desc = harem_events.0016.generic.desc
		}
	}

	theme = intrigue
	override_background = { reference = garden }

	right_portrait = { character = scope:older_consort animation = throne_room_conversation_1 }
	left_portrait = { character = root animation = eavesdrop }
	lower_left_portrait = {
		trigger = { exists = scope:first_rival }
		character = scope:first_rival
	}
	lower_center_portrait = {
		trigger = { exists = scope:lower_center_character }
		character = scope:lower_center_character
	}
	lower_right_portrait = {
		trigger = { exists = scope:second_rival }
		character = scope:second_rival
	}

	trigger = {
		harem_events_gossiping_consorts_trigger = yes
		exists = scope:older_consort
		exists = scope:new_consort
		scope:older_consort != scope:new_consort
		exists = local_var:chosen_topic
	}

	immediate = {
		if = {
			limit = {
				exists = scope:secret
			}
			scope:secret = {
				if = {
					limit = {
						NOT = {
							is_known_by = root
						}
					}
					reveal_to = root
				}
			}
		}
	}

	# Scold them (only when older is slandering rival)
	option = {
		name = harem_events.0016.a
		trigger = {
			OR = {
				exists = scope:slander_target
				AND = {
					scope:liege_relative ?= {
						has_any_bad_relationship_with_root_trigger = no
						harem_politics_evil_consort_trigger = yes
					}
					scope:older_consort = {
						NOR = {
							has_trait = forgiving
							has_trait = compassionate
							has_any_best_good_relationship_with_character_trigger = { CHARACTER = scope:liege_relative }
						}
					}
				}
				exists = scope:evil_consort
				exists = scope:eunuch
			}
		}

		scope:older_consort = {
			calyver_favor_minor_loss_effect = yes
			add_opinion = {
				target = root
				modifier = scolded_me_opinion
				opinion = -10
			}
			add_character_flag = {
				flag = flag_scolded_consort
				years = 2
			}
		}
		scope:lower_center_character = {
			if = {
				limit = {
					is_consort_of = root
				}
				calyver_favor_minor_gain_effect = yes
			}
		}

		stress_impact = {
			shy = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			forgiving = minor_stress_impact_gain
		}
		
		ai_chance = {
			base = 35
			ai_value_modifier = {
				ai_honor = -0.15
				ai_sociability = 0.15
				ai_compassion = -0.15
			}
		
			# Stress-aligned trait behavior
			modifier = { has_trait = shy add = -25 }
			modifier = { has_trait = compassionate add = -25 }
			modifier = { has_trait = forgiving add = -25 }
			modifier = { has_trait = callous add = -15 }
		
			# Opinions
			opinion_modifier = {
				opinion_target = scope:lower_center_character
				multiplier = 0.3
			}
			opinion_modifier = {
				opinion_target = scope:older_consort
				multiplier = -0.2
			}
		
			# Extra: if lower_center_character is PS or relative
			modifier = {
				OR = {
					root.primary_spouse ?= scope:lower_center_character
					is_close_or_extended_family_of = scope:lower_center_character
				}
				add = 10
			}
		}
	}

	# Force apology (only when older is slandering rival)
	option = {
		name = harem_events.0016.b
		trigger = {
			OR = {
				exists = scope:slander_target
				AND = {
					scope:liege_relative ?= {
						has_any_bad_relationship_with_root_trigger = no
						harem_politics_evil_consort_trigger = yes
					}
					scope:older_consort = {
						NOR = {
							has_trait = forgiving
							has_trait = compassionate
							has_any_best_good_relationship_with_character_trigger = { CHARACTER = scope:liege_relative }
						}
					}
				}
				exists = scope:evil_consort
				exists = scope:eunuch
			}
		}

		scope:older_consort = {
			calyver_favor_moderate_loss_effect = yes
			add_opinion = {
				target = root
				modifier = humiliated_opinion
				opinion = -10
			}
		}
		scope:lower_center_character = {
			if = {
				limit = {
					is_consort_of = root
				}
				calyver_favor_moderate_gain_effect = yes
			}
			add_opinion = {
				target = root
				modifier = respect_opinion
				opinion = 10
			}
			add_opinion = {
				target = scope:older_consort
				modifier = irritated_opinion
				opinion = -5
			}
			hidden_effect = {
				calyver_worsen_relationship_effect = {
					CHARACTER = scope:lower_center_character
					TARGET = scope:older_consort
					REASON = consort_rival_reason
				}
			}
		}

		stress_impact = {
			shy = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			forgiving = minor_stress_impact_gain
		}
		
		ai_chance = {
			base = 25
			ai_value_modifier = {
				ai_honor = -0.15
				ai_sociability = 0.15
				ai_compassion = -0.15
			}
		
			modifier = { has_trait = shy add = -25 }
			modifier = { has_trait = compassionate add = -25 }
			modifier = { has_trait = forgiving add = -25 }
			modifier = { has_trait = callous add = 15 }
		
			# Opinions
			opinion_modifier = {
				opinion_target = scope:lower_center_character
				multiplier = 0.3
			}
			opinion_modifier = {
				opinion_target = scope:older_consort
				multiplier = -0.2
			}
		
			# Extra: if lower_center_character is PS or relative
			modifier = {
				OR = {
					root.primary_spouse ?= scope:lower_center_character
					is_close_or_extended_family_of = scope:lower_center_character
				}
				add = 20
			}
		}
	}

	# "Interesting..." / leave
	option = {
		name = {
			text = {
				first_valid = {
					triggered_desc = {
						trigger = { exists = scope:secret }
						desc = harem_events.0016.c.secret
					}
					desc = harem_events.0014.c
				}
			}
		}

		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_honor = 0.15
				ai_sociability = -0.15
				ai_compassion = 0.15
			}
		
			# Opposite of stress-bearing options
			modifier = { has_trait = shy add = 15 }
			modifier = { has_trait = compassionate add = 15 }
			modifier = { has_trait = forgiving add = 15 }
			modifier = { has_trait = callous add = -15 }
		
			# opinion_modifier = {
			# 	opinion_target = scope:lower_center_character
			# 	min = -25
			# 	max = 25
			# 	multiplier = -0.3
			# }
			opinion_modifier = {
				opinion_target = scope:older_consort
				multiplier = 0.2
			}
		
			modifier = {
				exists = scope:lower_center_character
				OR = {
					root.primary_spouse ?= scope:lower_center_character
					is_close_or_extended_family_of = scope:lower_center_character
				}
				add = -15
			}
			modifier = {
				root.primary_spouse ?= scope:older_consort
				add = 25
			}
		}
	}

	after = {
		hidden_effect = {
			add_character_flag = {
				flag = had_gossiping_consorts_event_flag
				years = 2
			}
		}
	}
}
########################
## Worship Ancestors ##
#######################
scripted_trigger is_primary_sibling_trigger = {
	NOT = {
		has_trait = child_of_concubine
	}
	is_bastard_child_trigger = no
	is_courtier_of = root
	house ?= root.house
	sex_same_as = root
	is_available_adult = yes
}
harem_events.1000 = {
	hidden = yes
	orphan = yes
	
	trigger = {
		is_available_adult = yes
		is_landed_or_landless_administrative = yes
	}
	
	immediate = {
		# Do we have a primary sibling under the Dishu System?
		if = { # Do we have an eligible primary sibling
			limit = {
				culture = {
					has_cultural_parameter = dishu_system
				}
				can_have_imperial_consorts_trigger = no
				has_trait = child_of_concubine
				any_sibling = {
					is_primary_sibling_trigger = yes
				}
			}
			# Then they will reclaim their place
			trigger_event = harem_events.1001
		}
		else = {
			save_scope_as = lineage_heir
			trigger_event = harem_events.1002
		}
	}
}
harem_events.1001 = {
	type = character_event
	title = harem_events.1001.t
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:sibling = {
						OR = {
							has_trait = zealous
							has_trait = arrogant
							has_trait = ambitious
							has_trait = brave
						}
						NOR = {
							has_relation_friend = root
							has_relation_lover = root
							has_relation_best_friend = root
							has_relation_soulmate = root
							has_trait = shy
							has_trait = craven
						}
					}
				}
				desc = harem_events.1001.bold.desc
			}
			triggered_desc = {
				desc = harem_events.1001.generic.desc
			}
		}
	}
	theme = family
	override_background = {
		reference = temple
	}
	
	left_portrait = { 	
		character = root
		animation = thinking
	}
	right_portrait = {
		character = scope:sibling
		triggered_animation = {
			trigger = {
				scope:sibling = {
					ai_boldness > 24
				}
			}
			animation = personality_bold
		}
		triggered_animation = {
			trigger = {
				scope:sibling = {
					ai_boldness < -24
				}
			}
			animation = personality_coward
		}
		triggered_animation = {
			trigger = { always = yes }
			animation = personality_honorable
		}
	}
	
	trigger = {
	}
	
	immediate = {
		ordered_sibling = {
			limit = {
				is_primary_sibling_trigger = yes
			}
			order_by = age
			save_scope_as = sibling
		}
	}
	
	option = { # Concede to your primary sibling
        name = harem_politics.1001.a
		scope:sibling = {
			save_scope_as = lineage_heir
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 15
			}
		}
		
		stress_impact = {
			arrogant = minor_stress_impact_gain
		}
        ai_chance = {
            base = 50
            ai_value_modifier = {
   				ai_zeal = 0.5
				ai_boldness = -0.25
   			}
			
			opinion_modifier = { #Opinion
				opinion_target = scope:sibling
				multiplier = 0.25
			}
			
			modifier = { #Stress management
				has_trait = arrogant
				add = -25
			}
			modifier = { #Stress management
				has_trait = humble
				add = 15
			}
			modifier = { #Stress management
				has_trait = zealous
				add = 15
			}
        }
    }
	
	option = { # You will lead the ceremony
        name = harem_politics.1001.b
		custom_tooltip = harem_politics.1001.b.tt
		save_scope_as = lineage_heir
		scope:sibling = {
			if = {
				limit = {
					OR = {
						has_trait = zealous
						has_trait = arrogant
					}
					NOR = {
						has_relation_friend = root
						has_relation_lover = root

						has_relation_best_friend = root
						has_relation_soulmate = root
					}
				}
				add_opinion = {
					modifier = upset_opinion
					target = root
					opinion = -15
				}
			}
		}
		stress_impact = {
			humble = minor_stress_impact_gain
			zealous = minor_stress_impact_gain
		}
        ai_chance = {
            base = 50
            ai_value_modifier = {
   				ai_zeal = -0.5
				ai_boldness = 0.25
   			}
			
			opinion_modifier = { #Opinion
				opinion_target = scope:sibling
				multiplier = -0.25
			}
			
			modifier = { #Stress management
				has_trait = arrogant
				add = 15
			}
			modifier = { #Stress management
				has_trait = humble
				add = -25
			}
			modifier = { #Stress management
				has_trait = zealous
				add = -25
			}
        }
    }
	after = {
		scope:lineage_heir = {
			trigger_event = { 
				id = harem_events.1002
				days = { 7 10 }
			}
		}
	}
}
scripted_effect worship_ancestors_result_effect = {
	hidden_effect = {
		random_list = {
			2 = { # Success
				modifier = {
					OR = {
						NOT = {
							exists = scope:sibling
						}
						scope:lineage_heir = {
							NOT = { has_trait = child_of_concubine }
						}
					}
					add = 1
				}
				modifier = {
					exists = scope:big_offering_decision
					add = 1
				}
				modifier = {
					has_trait = di_child
					add = 1
				}
				modifier = {
					learning >= high_skill_rating
					add = 1
				}
				# Effect
				send_interface_toast = {
					type = event_generic_good
					title = harem_politics.1002.success
					right_icon = scope:lineage_heir
					if = { # Fertility for the primary spouse
						limit = {
							exists = local_var:ps_fertility_request_variable
							exists = primary_spouse
						}
						primary_spouse = {
							add_character_modifier = {
								modifier = very_successful_fertility_treatment
								years = 3
							}
							if = {
								limit = {
									NOR = {
										has_relation_rival = scope:lineage_heir
										has_relation_nemesis = scope:lineage_heir
										has_relation_grudge = scope:lineage_heir
										has_opinion_modifier = {
											modifier = forced_me_concubine_marriage_opinion
											target = scope:lineage_heir
										}
									}
								}
								add_opinion = {
									modifier = grateful_opinion
									opinion = 15
									target = scope:lineage_heir
								}
							}
						}
					}
					else_if = { # Fertility for the other consorts
						limit = {
							exists = local_var:fertility_request_variable
						}
						add_character_modifier = {
							modifier = very_successful_fertility_treatment
							years = 3
						}
					}
					else_if = { # Health
						limit = {
							exists = local_var:health_request_variable
						}
						add_character_modifier = {
							modifier = health_ancestors_big_blessing_modifier
							years = 3
						}
					}
					else_if = { # Merit
						limit = {
							exists = local_var:merit_help_variable
						}
						add_character_modifier = {
							modifier = merit_ancestors_big_blessing_modifier
							years = 3
						}
					}
					else_if = { # Legitimacy
						limit = {
							exists = local_var:legitimacy_help_variable
						}
						add_character_modifier = {
							modifier = legitimacy_ancestors_big_blessing_modifier
							years = 3
						}
					}
					else_if = { # War help
						limit = {
							exists = local_var:war_help_variable
						}
						add_character_modifier = {
							modifier = war_ancestors_big_blessing_modifier
							years = 3
						}
					}
					else = {
						add_piety = medium_piety_gain
					}
					hidden_effect = {
						every_courtier = {
							limit = {
								house ?= scope:lineage_heir.house
							}
							add_piety = medium_piety_gain
						}
					}
				}
				scope:ruler_scope = {
					if = {
						limit = {
							this != scope:lineage_heir
							is_ai = no
						}
						send_interface_toast = {
							type = event_generic_good
							title = harem_politics.1002.success
							right_icon = scope:lineage_heir
							show_as_tooltip = {
								add_piety = medium_piety_gain
							}
						}
					}
				}
			}
			2 = { # Moderate success
				modifier = {
					OR = {
						NOT = {
							exists = scope:sibling
						}
						scope:lineage_heir = {
							NOT = { has_trait = child_of_concubine }
						}
					}
					add = 1
				}
				modifier = {
					exists = scope:big_offering_decision
					add = 1
				}
				# Effect
				send_interface_toast = {
					type = event_generic_good
					title = harem_politics.1002.medium_success
					right_icon = scope:lineage_heir
					if = { # Fertility for the primary spouse
						limit = {
							exists = local_var:ps_fertility_request_variable
							exists = primary_spouse
						}
						primary_spouse = {
							add_character_modifier = {
								modifier = successful_fertility_treatment
								years = 3
							}
							if = {
								limit = {
									NOR = {
										has_relation_rival = scope:lineage_heir
										has_relation_nemesis = scope:lineage_heir
										has_relation_grudge = scope:lineage_heir
										has_opinion_modifier = {
											modifier = forced_me_concubine_marriage_opinion
											target = scope:lineage_heir
										}
									}
								}
								add_opinion = {
									modifier = grateful_opinion
									opinion = 10
									target = scope:lineage_heir
								}
							}
						}
					}
					else_if = { # Fertility for the other consorts
						limit = {
							exists = local_var:fertility_request_variable
						}
						add_character_modifier = {
							modifier = successful_fertility_treatment
							years = 3
						}
					}
					else_if = { # Health
						limit = {
							exists = local_var:health_request_variable
						}
						add_character_modifier = {
							modifier = health_ancestors_moderate_blessing_modifier
							years = 3
						}
					}
					else_if = { # Merit
						limit = {
							exists = local_var:merit_help_variable
						}
						add_character_modifier = {
							modifier = merit_ancestors_moderate_blessing_modifier
							years = 3
						}
					}
					else_if = { # Legitimacy
						limit = {
							exists = local_var:legitimacy_help_variable
						}
						add_character_modifier = {
							modifier = legitimacy_ancestors_moderate_blessing_modifier
							years = 3
						}
					}
					else_if = { # War help
						limit = {
							exists = local_var:war_help_variable
						}
						add_character_modifier = {
							modifier = war_ancestors_moderate_blessing_modifier
							years = 3
						}
					}
					else = {
						add_piety = minor_piety_gain
					}
					hidden_effect = {
						every_courtier = {
							limit = {
								house ?= scope:lineage_heir.house
							}
							add_piety = minor_piety_gain
						}
					}
				}
				scope:ruler_scope = {
					if = {
						limit = {
							this != scope:lineage_heir
							is_ai = no
						}
						send_interface_toast = {
							type = event_generic_good
							title = harem_politics.1002.medium_success
							right_icon = scope:lineage_heir
							show_as_tooltip = {
								add_piety = minor_piety_gain
							}
						}
					}
				}
			}
			2 = { # They ignored you
				modifier = {
					scope:sibling ?= {
						this != scope:lineage_heir
					}
					add = 1
				}
				# Effect
				send_interface_toast = {
					type = event_generic_neutral
					title = harem_politics.1002.ignored
					right_icon = scope:lineage_heir
					add_piety = miniscule_piety_gain
				}
				scope:ruler_scope = {
					if = {
						limit = {
							this != scope:lineage_heir
							is_ai = no
						}
						send_interface_toast = {
							type = event_generic_neutral
							title = harem_politics.1002.ignored
							right_icon = scope:lineage_heir
						}
					}
				}
			}
			1 = { # Failure
				modifier = {
					scope:sibling ?= {
						this != scope:lineage_heir
					}
					add = 7
				}
				# Effect
				send_interface_toast = {
					type = event_generic_bad
					title = harem_politics.1002.failure
					right_icon = scope:lineage_heir
					add_piety = minor_piety_loss
				}
				scope:ruler_scope = {
					if = {
						limit = {
							this != scope:lineage_heir
							is_ai = no
						}
						send_interface_toast = {
							type = event_generic_bad
							title = harem_politics.1002.failure
							right_icon = scope:lineage_heir
						}
					}
				}
			}
		}
	}
}

harem_events.1002 = {
	type = character_event
	title = harem_events.1002.t
	desc = harem_events.1002.desc
	theme = family
	override_background = {
		reference = temple
	}
	
	left_portrait = { 	
		character = scope:lineage_heir
		animation = prayer
	}
	right_portrait = {
		trigger = {
			exists = scope:ancestor
		}
		character = scope:ancestor
		animation = dead
	}
	
	trigger = {
		this = scope:lineage_heir
	}
	
	immediate = {
		if = {
			limit = {
				any_ancestor = {
					even_if_dead = yes
					is_alive = no
					is_bastard_child_trigger = no
				}
			}
			ordered_ancestor = {
				even_if_dead = yes
				limit = {
					is_alive = no
					is_bastard_child_trigger = no
				}
				order_by = {
					add = age
					if = {
						limit = {
							scope:lineage_heir = {
								any_held_title = { 
									is_noble_family_title = yes
									previous_holder ?= this
								}
							}
						}
						add = 100
					}
					if = {
						limit = {
							scope:lineage_heir.primary_title.previous_holder ?= this
						}
						add = 50
					}
					if = {
						limit = {
							house ?= scope:lineage_heir.house
						}
						add = 70
					}
					if = {
						limit = {
							sex_same_as = scope:lineage_heir
						}
						add = 50
					}
					if = {
						limit = {
							is_parent_of = root
						}
						add = 15
					}
					if = {
						limit = {
							is_grandparent_of = root
						}
						add = 25
					}	
					if = {
						limit = {
							is_great_grandparent_of = root
						}
						add = 35
					}
				}
				save_scope_as = ancestor
			}
		}
	}
	
	option = { # Ask for fertility for your primary_spouse
		trigger = {
			culture = { has_cultural_parameter = dishu_system }
			primary_spouse ?= {
				is_visibly_fertile = yes
				NOR = {
					any_child = {
						is_bastard_child_trigger = no
						has_trait = di_child
						is_child_of = scope:lineage_heir
						sex_same_as = scope:lineage_heir
					}
					has_character_modifier = very_successful_fertility_treatment
					has_character_modifier = successful_fertility_treatment
				}
			}
			NOR = { 
				has_trait = celibate
				has_trait = eunuch
			}
		}
        name = harem_politics.1002.a
		set_local_variable = {
			name = ps_fertility_request_variable
			value = yes
		}
		
        ai_chance = {
            base = 50
        }
    }

	option = { # Ask for fertility in general
		trigger = {
			hp_accepts_harems = yes
			any_consort = {
				is_visibly_fertile = yes
				count > 0
			}
			NOR = {
				any_child = {
					is_bastard_child_trigger = no
					NOT = {
						has_trait = child_of_concubine
					}
					sex_same_as = scope:lineage_heir
				}
				has_trait = celibate
				has_trait = eunuch
				has_character_modifier = very_successful_fertility_treatment
				has_character_modifier = successful_fertility_treatment
			}
		}
        name = harem_politics.1002.b
		set_local_variable = {
			name = fertility_request_variable
			value = yes
		}
		
        ai_chance = {
            base = 75
        }
    }
	
	option = { # Ask for good health
		trigger = {
			health <= poor_health
			NOR = {
				has_character_modifier = health_ancestors_big_blessing_modifier
				has_character_modifier = health_ancestors_moderate_blessing_modifier
			}
		}
        name = harem_politics.1002.c
		set_local_variable = {
			name = health_request_variable
			value = yes
		}
		
        ai_chance = {
            base = 100
        }
    }

	option = { # Merit
		trigger = {
			has_tgp_dlc_trigger = yes
			government_allows = merit
			NOR = {
				top_liege = root 
				has_character_modifier = merit_ancestors_big_blessing_modifier
				has_character_modifier = merit_ancestors_moderate_blessing_modifier
			}
		}
        name = harem_politics.1002.d
		set_local_variable = {
			name = merit_help_variable
			value = yes
		}
		
        ai_chance = {
            base = 50
        }
    }
	option = { # Legitimacy
		trigger = {
			is_valid_for_legitimacy_change = yes
			NOR = {
				has_character_modifier = legitimacy_ancestors_big_blessing_modifier
				has_character_modifier = legitimacy_ancestors_moderate_blessing_modifier
			}
		}
        name = harem_politics.1002.e
		set_local_variable = {
			name = legitimacy_help_variable
			value = yes
		}
		
        ai_chance = {
            base = 50
        }
    }
	option = { # Help in war
		trigger = {
			is_at_war = yes
			NOR = {
				has_character_modifier = war_ancestors_big_blessing_modifier
				has_character_modifier = war_ancestors_moderate_blessing_modifier
			}
		}
        name = harem_politics.1002.f
		set_local_variable = {
			name = war_help_variable
			value = yes
		}
		
        ai_chance = {
            base = 150
        }
    }
	option = { # No need for help
        name = harem_politics.1002.g
		add_piety = miniscule_piety_gain
        ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_zeal = 0.2
				ai_greed = -0.2
			}
        }
    }
	after = {
		worship_ancestors_result_effect = yes
	}
}

###############################
## Silkworm Goddess Ceremony ##
###############################
harem_events.2000 = {
	type = character_event
	title = {
		first_valid = {
			triggered_desc = {
				trigger = {
					exists = local_var:bad_ceremony
				}
				desc = harem_events.2000.bad.t
			}
			desc = harem_events.2000.successful.t
		}
	}
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					exists = local_var:successful_ceremony
				}
				desc = harem_events.2000.successful.desc
			}
			triggered_desc = {
				trigger = {
					exists = local_var:bad_ceremony
				}
				desc = harem_events.2000.bad.desc
			}
			desc = harem_events.2000.generic.desc
		}
	}
	theme = realm
	override_background = {
		reference = garden
	}
	
	right_portrait = {
		character = scope:ritual_leader
		triggered_animation = {
			trigger = {
				exists = local_var:bad_ceremony
			}
  			animation = worry
  		}
		animation = personality_honorable
	}
	left_portrait = {
		trigger = {
			exists = scope:invited_character_1
		}
		character = scope:invited_character_1
		triggered_animation = {
			trigger = {
				exists = local_var:bad_ceremony
			}
  			animation = boredom
  		}
		animation = admiration
	}
	lower_left_portrait = {
		trigger = {
			exists = scope:invited_character_2
		}
		character = scope:invited_character_2
	}
	lower_right_portrait = {
		trigger = {
			exists = scope:invited_character_3
		}
		character = scope:invited_character_3
	}
	
	trigger = {
		scope:ruler_scope = {
			is_available_healthy_adult = yes
			can_have_four_consorts_trigger = yes
			OR = {
				primary_spouse ?= scope:ritual_leader
				mother ?= scope:ritual_leader
			}
			this = root
		}
		scope:ritual_leader = {
			is_courtier_of = scope:ruler_scope
			is_available_healthy_adult = yes
		}
	}
	
	immediate = {
		hidden_effect = {
			scope:ruler_scope = {
				every_vassal = {
					limit = {
						is_at_war = no
						is_available_ai_adult = yes
						OR = {
							is_powerful_vassal = yes
							is_councillor_of = scope:ruler_scope
						}
					}
					if = {
						limit = {
							this != scope:ritual_leader
							is_female = yes
						}
						add_to_list = invited_list
					}
					else_if = {
						limit = {
							primary_spouse ?= {
								this != scope:ritual_leader
								is_female = yes
								is_at_war = no
								is_available_ai_adult = yes
								is_courtier_of = prev
								NOT = { is_in_list = invited_list }
							}
						}
						primary_spouse = {
							add_to_list = invited_list
						}
					}
				}
				every_close_or_extended_family_member = {
					limit = {
						this != scope:ritual_leader
						is_female = yes
						is_available_ai_adult = yes
						is_courtier_of = scope:ruler_scope
					}
					add_to_list = invited_list
				}
				every_consort = {
					limit = {
						this != scope:ritual_leader
						is_female = yes
						is_available_ai_adult = yes
						is_courtier_of = scope:ruler_scope
						NOT = { is_in_list = invited_list }
					}
					add_to_list = invited_list
				}
			}
			if = {
				limit = {
					any_in_list = {
						list = invited_list
						this != scope:ritual_leader
						count > 0
					}
				}
				if = {
					limit = {
						any_in_list = {
							list = invited_list
							count = 1
						}
					}
					random_in_list = {
						list = invited_list
						save_scope_as = invited_character_1
					}
				}
				else = {
					while = {
						limit = {
							any_in_list = {
								list = invited_list
								this != scope:ritual_leader
								count >= 1
							}
							NOT = {
								exists = scope:invited_character_3
							}
						}
						random_in_list = {
							list = invited_list
							limit = {
								this != scope:ritual_leader
							}
							weight = {
								modifier = { add = age }
								modifier = {
									OR = {
										is_powerful_vassal_of = scope:ruler_scope
										is_councillor_of = scope:ruler_scope
									}
									add = 20
								}
								modifier = {
									any_spouse = {
										OR = {
											is_powerful_vassal_of = scope:ruler_scope
											is_councillor_of = scope:ruler_scope
										}
									}
									add = 30
								}
								modifier = {
									scope:ruler_scope.mother ?= this
									add = 20
								}
								modifier = {
									is_close_or_extended_family_of = scope:ruler_scope
									add = 80
								}
								modifier = {
									is_consort_of = scope:ruler_scope
									add = 80
								}
							}
							if = {
								limit = {
									NOT = {
										exists = scope:invited_character_1
									}
								}
								save_scope_as = invited_character_1
							}
							else_if = {
								limit = {
									NOT = {
										exists = scope:invited_character_2
									}
								}
								save_scope_as = invited_character_2
							}
							else = {
								save_scope_as = invited_character_3
							}
							remove_from_list = invited_list
						}
					}
				}
			}
		}
		# Result
		random_list = {
			15 = { # Successful ceremony
				modifier = { # Learning
					scope:ritual_leader.learning >= high_skill_rating
					add = {
						value = scope:ritual_leader.learning
						divide = 4
					}
				}
				modifier = { # Proper tradition
					scope:ritual_leader.culture = { has_cultural_parameter = can_appoint_four_consorts }
					add = 3
				}
				modifier = { # Confucian education
					scope:ritual_leader = {
						has_trait = confucian_education 
						has_trait_xp = {
							trait = confucian_education
							value >= 20
						}
					}
					add = 3
				}
				modifier = { # Virtuous traits
					scope:ritual_leader = {
						faith = scope:ruler_scope.faith
						num_virtuous_traits >= 1
					}
					add = 2
				}
				modifier = { # Virtuous traits
					scope:ritual_leader = {
						faith = scope:ruler_scope.faith
						num_virtuous_traits >= 2
					}
					add = 2
				}
				modifier = { # Virtuous traits
					scope:ritual_leader = {
						faith = scope:ruler_scope.faith
						num_virtuous_traits >= 3
					}
					add = 2
				}
				modifier = { # The Empress Dowager will always succeed
					scope:ruler_scope.mother ?= scope:ritual_leader
					add = 1
				}
				set_local_variable = {
					name = successful_ceremony
					value = yes
				}		
			}
			20 = { # Normal ceremony
				modifier = { # Learning
					scope:ritual_leader.learning >= decent_skill_rating
					add = {
						value = scope:ritual_leader.learning
						divide = 5
					}
				}
				modifier = { # Proper tradition
					scope:ritual_leader.culture = { has_cultural_parameter = can_appoint_four_consorts }
					add = 5
				}
				modifier = { # Confucian education
					scope:ritual_leader = {
						has_trait = confucian_education 
					}
					add = 3
				}
				modifier = { # The Empress Dowager will always succeed
					scope:ruler_scope.mother ?= scope:ritual_leader
					add = 1
				}
				set_local_variable = {
					name = normal_ceremony
					value = yes
				}
			}
			15 = { # Bad ceremony
				modifier = { # Learning
					scope:ritual_leader.learning < medium_skill_rating
					add = {
						value = medium_skill_rating
						subtract = scope:ritual_leader.learning
					}
				}
				modifier = { # Proper tradition
					NOT = { scope:ritual_leader.culture = { has_cultural_parameter = can_appoint_four_consorts } }
					add = 5
				}
				modifier = { # Sinful traits
					scope:ritual_leader = {
						faith = scope:ruler_scope.faith
						num_sinful_traits >= 1
					}
					add = 2
				}
				modifier = { # Sinful traits
					scope:ritual_leader = {
						faith = scope:ruler_scope.faith
						num_sinful_traits >= 2
					}
					add = 2
				}
				modifier = { # Sinful traits
					scope:ritual_leader = {
						faith = scope:ruler_scope.faith
						num_sinful_traits >= 3
					}
					add = 2
				}
				modifier = { # A rival
					scope:ritual_leader = {
						any_relation = {
							type = rival
							is_in_list = invited_list
							intrigue >= scope:ritual_leader.intrigue
						}
					}
					add = 1
				}
				modifier = { # A rival
					scope:ritual_leader = {
						any_relation = {
							type = rival
							is_in_list = invited_list
							intrigue > scope:ritual_leader.intrigue
						}
					}
					add = 1
				}
				set_local_variable = {
					name = bad_ceremony
					value = yes
				}
			}
		}
	}
	
	option = {
        name = {
			text = {
				first_valid = {
					triggered_desc = {
						trigger = {
							exists = local_var:bad_ceremony
						}
						desc = harem_events.2000.bad_ceremony.a
					}
					triggered_desc = {
						desc = harem_events.2000.generic.b
					}
				}
			}
		}
		if = {
			limit = {
				exists = local_var:successful_ceremony
			}
			scope:ruler_scope = {
				if = {
					limit = { is_valid_for_legitimacy_change = yes }
					add_legitimacy = minor_legitimacy_gain
				}
				add_opinion = {
					modifier = pleased_opinion
					target = scope:ritual_leader
					opinion = 10
				}
				add_character_modifier = {
					modifier = big_silk_worship_modifier
					years = 1
				}
				every_councillor = {
					custom = every_councillor
					add_opinion = {
						target = scope:ruler_scope
						modifier = respect_opinion
						opinion = 5
					}
				}
				every_powerful_vassal = {
					custom = every_powerful_vassal_tt
					limit = {
						NOT = { is_councillor_of = scope:ruler_scope }
					}
					add_opinion = {
						target = scope:ruler_scope
						modifier = respect_opinion
						opinion = 5
					}
				}
				every_courtier = {
					custom = EVERY_COURTIER_EFFECT
					limit = {
						NOR = {
							is_close_or_extended_family_of = scope:ritual_leader
							this = scope:ritual_leader
							has_relation_rival = scope:ritual_leader
							has_relation_nemesis = scope:ritual_leader
						}
					}
					add_opinion = {
						target = scope:ritual_leader
						modifier = respect_opinion
						opinion = 10
					}
				}
			}
			scope:ritual_leader = {
				calyver_favor_moderate_gain_effect = yes
				add_piety = medium_piety_gain
			}
		}
		else_if = {
			limit = {
				exists = local_var:normal_ceremony
			}
			scope:ruler_scope = {
				if = {
					limit = { is_valid_for_legitimacy_change = yes }
					add_legitimacy = miniscule_legitimacy_gain
				}
				add_opinion = {
					modifier = pleased_opinion
					target = scope:ritual_leader
					opinion = 5
				}
			}
			scope:ritual_leader = {
				calyver_favor_minor_gain_effect = yes
			}
		}
		else = {
			scope:ruler_scope = {
				add_opinion = {
					modifier = disappointed_opinion
					target = scope:ritual_leader
					opinion = -10
				}
				every_councillor = {
					custom = every_councillor
					add_opinion = {
						target = scope:ruler_scope
						modifier = respect_opinion
						opinion = -5
					}
				}
				every_powerful_vassal = {
					custom = every_powerful_vassal_tt
					limit = {
						NOT = { is_councillor_of = scope:ruler_scope }
					}
					add_opinion = {
						target = scope:ruler_scope
						modifier = respect_opinion
						opinion = -5
					}
				}
				every_courtier = {
					custom = EVERY_COURTIER_EFFECT
					limit = {
						NOR = {
							is_close_or_extended_family_of = scope:ritual_leader
							this = scope:ritual_leader
							has_relation_friend = scope:ritual_leader
							has_relation_best_friend = scope:ritual_leader
							has_relation_lover = scope:ritual_leader
							has_relation_soulmate = scope:ritual_leader
						}
					}
					add_opinion = {
						target = scope:ritual_leader
						modifier = disappointed_opinion
						opinion = -10
					}
				}
			}
			scope:ritual_leader = {
				calyver_favor_minor_loss_effect = yes
				add_piety = medium_piety_loss
				if = {
					limit = {
						religion_is_east_asian_trigger = yes
					}
					stress_impact = {
						zealous = minor_stress_impact_gain
					}
				}
			}
		}
        ai_chance = {
            base = 1
        }
    }
}
#####################
## Visit Matriarch ##
#####################
# Base trigger
scripted_trigger is_valid_matriarch_relative_trigger = {
	this != scope:matriarch
	trigger_if = {
		limit = {
			exists = house
		}
		house = {
			any_house_member = {
				this = scope:matriarch
			}
		}
	}
	top_liege ?= scope:matriarch.top_liege
	is_available_healthy_ai_adult = yes
	NOR = {
		has_character_modifier = recently_tortured
		is_consort_of = root
		is_sibling_of = root
		is_child_of = root
		is_diarch = yes
	}
}
# They ask you to favor a consort
scripted_trigger is_valid_consort_for_favor_request_trigger = {
	is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
	is_available_healthy_ai_adult = yes
	OR = {
		house ?= {
			any_house_member = {
				this = scope:matriarch
			}
		}
		has_relation_friend = scope:matriarch
		has_relation_best_friend = scope:matriarch
		has_relation_lover = scope:matriarch
		has_relation_soulmate = scope:matriarch
		reverse_opinion = {
			target = scope:matriarch
			value >= low_positive_opinion
		}
		is_close_or_extended_family_of = scope:matriarch
	}
	harem_politics_favored_consort_trigger = no
	NOT = {
		has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:matriarch }
	}
}
scripted_trigger is_valid_for_consort_favor_request_trigger = {
	any_consort = {
		is_valid_consort_for_favor_request_trigger = yes
	}
	any_consort = {
		is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
		is_imprisoned = no
		count >= 3
	}
}
# They ask you to stop favoring a consort
scripted_trigger is_valid_consort_for_stop_favor_request_trigger = {
	is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
	is_available_ai_adult = yes
	harem_politics_favored_consort_trigger = yes
	NOR = {
		house ?= {
			any_house_member = {
				this = scope:matriarch
			}
		}
		has_relation_friend = scope:matriarch
		has_relation_best_friend = scope:matriarch
		has_relation_lover = scope:matriarch
		has_relation_soulmate = scope:matriarch
		is_close_or_extended_family_of = scope:matriarch
	}
}
scripted_trigger is_valid_for_consort_stop_favor_request_trigger = {
	any_consort = {
		is_valid_consort_for_stop_favor_request_trigger = yes
	}
	any_consort = {
		is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
		is_imprisoned = no
		count >= 3
	}
	scope:matriarch = {
		NOR = {
			has_trait = forgiving
			has_trait = compassionate
			has_trait = content
			has_trait = humble
			has_trait = craven
		}
	}
}
# Another consort is visiting them
scripted_trigger is_valid_filial_consort_trigger = {
	is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
	is_available_healthy_adult = yes
	OR = {
		has_relation_friend = scope:matriarch
		has_relation_best_friend = scope:matriarch
		has_relation_lover = scope:matriarch
		has_relation_soulmate = scope:matriarch
		house ?= {
			any_house_member = {
				this = scope:matriarch
			}
		}
		is_close_family_of = scope:matriarch
		has_trait = content
		has_trait = humble
		has_trait = zealous
		has_trait = ambitious
		has_trait = trusting
		has_trait = compassionate
		has_trait = generous
		has_trait = forgiving
	}
	opinion = {
		target = scope:matriarch
		value >= -15
	}
	reverse_opinion = {
		target = scope:matriarch
		value >= -15
	}
	NOT = {
		has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:matriarch }
	}
}
scripted_trigger is_valid_for_filial_consort_visit_trigger = {
	any_consort = {
		is_valid_filial_consort_trigger = yes
	}
	any_consort = {
		is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
		is_imprisoned = no
		count >= 3
	}
}
# Requesting a title for a relative
scripted_trigger is_valid_matriarch_relative_for_title_grant_trigger = {
	is_valid_matriarch_relative_trigger = yes
	any_held_title = { count = 0 }
	NOR = {
		any_heir_title = {} # Not heir to anything
	}
	trigger_if = {
		limit = { is_female = yes }
		ROOT = { faith_dominant_gender_female_or_equal = yes }
	}
	trigger_else = { ROOT = { faith_dominant_gender_male_or_equal = yes } }
	character_gender_can_inherit_from_trigger = {
		CHARACTER = root
	}
}
scripted_trigger is_valid_for_title_request_trigger = {
	OR = {
		any_held_title = {
			tier = tier_barony
			is_capital_barony = no
			is_leased_out = no
			NOR = { 
				THIS = ROOT.capital_barony 
				title_province = { 
					OR = {
						has_holding_type = city_holding 
						has_holding_type = church_holding
					}
				}
			}
		}
		any_held_title = {
			count >= 4
			tier = tier_county
		}
	}
	scope:matriarch = {
		trigger_if = {
			limit = {
				exists = house
			}
			house = {
				any_house_member = {
					is_valid_matriarch_relative_for_title_grant_trigger = yes
				}
			}
		}
		trigger_else = {
			any_close_family_member = {
				is_valid_matriarch_relative_for_title_grant_trigger = yes
			}
		}
	}
}
# Requesting a court position for a relative
scripted_trigger is_valid_matriarch_relative_for_court_position_grant_trigger = {
	is_valid_matriarch_relative_trigger = yes
	has_any_court_position = no
	OR = {
		any_held_title = { count = 0 }
		is_vassal_of = root
	}
}
scripted_trigger is_valid_for_court_position_request_trigger = {
	is_landed_or_landless_administrative = yes
	gold > minor_gold_value
	court_positions_currently_filled < court_positions_currently_available
	scope:matriarch = {
		trigger_if = {
			limit = {
				exists = house
			}
			house = {
				any_house_member = {
					is_valid_matriarch_relative_for_court_position_grant_trigger = yes
					save_temporary_scope_as = relative
				}
			}
		}
		trigger_else = {
			any_close_family_member = {
				is_valid_matriarch_relative_for_court_position_grant_trigger = yes
				save_temporary_scope_as = relative
			}
		}
	}
	character_can_be_employed_in_a_court_position_trigger = {
		CHARACTER = scope:relative
	}
}
# Requesting a council position for a relative
scripted_trigger councillor_can_be_fired_by_matriarch_trigger = {
	NOR = {
		is_close_family_of = root
		house ?= {
			any_house_member = {
				this = root
			}
		}
		is_close_or_extended_family_of = scope:matriarch
		house ?= {
			any_house_member = {
				this = scope:matriarch
			}
		}
		is_blocked_from_being_fired_from_council_trigger = { COURT_OWNER = root }
	}
}
scripted_trigger is_valid_matriarch_relative_for_council_position_grant_trigger = {
	is_valid_matriarch_relative_trigger = yes
	OR = {
		any_held_title = { count = 0 }
		is_vassal_of = root
	}
	is_councillor = no
	OR = {
		AND = {
			trigger_if = { # If the liege has a ministry, we check a separate minister trigger
				limit = {
					root = { tgp_has_access_to_ministry_trigger = yes }
				}
				tgp_can_be_a_minister_trigger = { COURT_OWNER = root }
			}
			trigger_else = {
				can_be_chancellor_trigger = { COURT_OWNER = root }
			}
			root.cp:councillor_chancellor ?= {
				councillor_can_be_fired_by_matriarch_trigger = yes
			}
		}
		AND = {
			trigger_if = { # If the liege has a ministry, we check a separate minister trigger
				limit = {
					root = { tgp_has_access_to_ministry_trigger = yes }
				}
				tgp_can_be_a_minister_trigger = { COURT_OWNER = root }
			}
			trigger_else = {
				can_be_steward_trigger = { COURT_OWNER = root }
			}
			root.cp:councillor_steward ?= {
				councillor_can_be_fired_by_matriarch_trigger = yes
			}
		}
		AND = {
			trigger_if = { # If the liege has a ministry, we check a separate minister trigger
				limit = {
					root = { tgp_has_access_to_ministry_trigger = yes }
				}
				tgp_can_be_a_minister_trigger = { COURT_OWNER = root }
			}
			trigger_else = { can_be_marshal_trigger = { COURT_OWNER = root } }
			root.cp:councillor_marshal ?= {
				councillor_can_be_fired_by_matriarch_trigger = yes
			}
		}
		AND = {
			trigger_if = { # If the liege has a ministry, we check a separate minister trigger
				limit = {
					root = { tgp_has_access_to_ministry_trigger = yes }
				}
				tgp_can_be_a_minister_trigger = { COURT_OWNER = root }
			}
			trigger_else = { can_be_spymaster_trigger = { COURT_OWNER = root } }
			# Gender must follow laws in merit based realms
			trigger_if = {
				limit = {
					root = {
						is_landed = yes
						government_has_flag = government_has_merit
					}
				}
				trigger_if = {
					limit = {
						root = {
							OR = {
								has_realm_law = male_only_law
								has_realm_law = male_preference_law
							}
						}
					}
					is_male = yes
				}
				trigger_if = {
					limit = {
						root = {
							OR = {
								has_realm_law = female_only_law
								has_realm_law = female_preference_law
							}
						}
					}
					is_female = yes
				}
			}
			root.cp:councillor_spymaster ?= {
				councillor_can_be_fired_by_matriarch_trigger = yes
			}
		}
		AND = {
			can_be_court_chaplain_trigger = { COURT_OWNER = root }
			root.faith = { has_doctrine = doctrine_clerical_succession_temporal_appointment }
			root.cp:councillor_court_chaplain ?= {
				councillor_can_be_fired_by_matriarch_trigger = yes
			}
		}
	}
}
scripted_trigger is_valid_for_council_position_request_trigger = {
	can_have_imperial_consorts_trigger = yes
	scope:matriarch = {
		trigger_if = {
			limit = {
				exists = house
			}
			house = {
				any_house_member = {
					is_valid_matriarch_relative_for_council_position_grant_trigger = yes
				}
			}
		}
		trigger_else = {
			any_close_family_member = {
				is_valid_matriarch_relative_for_council_position_grant_trigger = yes
			}
		}
		NOR = {
			house ?= {
				any_house_member = {
					is_councillor_of = root
				}
			}
			any_close_family_member = {
				is_councillor_of = root
			}
		}
	}
}
# Offering a consort to you
scripted_trigger is_valid_matriarch_relative_for_consort_offer_trigger = {
	is_valid_matriarch_relative_trigger = yes
	any_held_title = { count = 0 }
	NOR = {
		any_heir_title = {} # Not heir to anything
	}
	can_become_concubine_of_character_trigger = { CHARACTER = root }
	age <= 25
	is_virgin_trigger = yes
	has_any_disease_trigger = no
	has_easily_mocked_physical_attribute_trigger = no
	allowed_more_spouses = yes
}
scripted_trigger is_valid_for_consort_offer_trigger = {
	scope:matriarch = {
		trigger_if = {
			limit = {
				exists = house
			}
			house = {
				any_house_member = {
					is_valid_matriarch_relative_for_consort_offer_trigger = yes
				}
			}
		}
		trigger_else = {
			any_close_family_member = {
				is_valid_matriarch_relative_for_consort_offer_trigger = yes
			}
		}
	}
	OR = {
		allowed_more_spouses = yes
		allowed_more_concubines = yes
	}
	NOR = { 
		has_character_modifier = mourner_modifier
		any_consort = {
			OR = {
				house ?= {
					any_house_member = {
						this = scope:matriarch
					}
				}
				is_close_family_of = scope:matriarch
			}
			count >= 2
		}
	}
}
# Requesting you to promote a consort
scripted_trigger is_valid_consort_for_promotion_request_trigger = {
	is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
	is_available_healthy_ai_adult = yes
	OR = {
		house ?= {
			any_house_member = {
				this = scope:matriarch
			}
		}
		has_relation_friend = scope:matriarch
		has_relation_best_friend = scope:matriarch
		has_relation_lover = scope:matriarch
		has_relation_soulmate = scope:matriarch
		reverse_opinion = {
			target = scope:matriarch
			value >= low_positive_opinion
		}
		is_close_or_extended_family_of = scope:matriarch
	}
	NOR = {
		has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:matriarch }
		root.primary_spouse ?= this
		has_character_flag = flag_new_consort
		has_any_bad_relationship_with_root_trigger = yes
	}
	save_temporary_scope_as = temporary_consort
	OR = {
		AND = {
			is_concubine_of = root
			root = {
				allowed_more_spouses = yes
			}
		}
		root = {
			can_employ_char_to_high_consort_court_position_trigger = {
				CONSORT = scope:temporary_consort
			}
		}
	}
}
scripted_trigger is_valid_for_consort_promotion_request_trigger = {
	any_consort = {
		is_valid_consort_for_promotion_request_trigger = yes
	}
	any_consort = {
		is_valid_for_favor_system_trigger = { HAREM_LIEGE = root }
		is_imprisoned = no
		count >= 3
	}
	NOR = { 
		has_character_modifier = mourner_modifier
		any_consort = {
			OR = {
				root.primary_spouse ?= this
				is_high_consort_trigger = {
					LIEGE = root
				}
			}
			OR = {
				house ?= {
					any_house_member = {
						this = scope:matriarch
					}
				}
				has_relation_friend = scope:matriarch
				has_relation_best_friend = scope:matriarch
				has_relation_lover = scope:matriarch
				has_relation_soulmate = scope:matriarch
				reverse_opinion = {
					target = scope:matriarch
					value >= low_positive_opinion
				}
				is_close_or_extended_family_of = scope:matriarch
			}
			count >= 2
		}
	}
}
# Fallback
scripted_effect on_trigger_fail_visit_matriarch_fallback_effect = {
	send_interface_toast = {
		type = event_generic_neutral
		title = harem_events.2100.fallback.title
		right_icon = root
		custom_tooltip = harem_events.2100.fallback.desc
	}
}
harem_events.2100 = {
	hidden = yes
	
	trigger = {
	}
	
	immediate = {
		if = {
			limit = {
				NOR = {
					has_character_modifier = isolating_modifier
				}
				is_available = yes
			}
			# Muslim: mother first, then grandmother
			if = {
				limit = {
					religion = religion:islam_religion
					any_parent = {
						is_eligible_harem_member_trigger = { LIEGE = root }
					}
				}
				random_parent = {
					limit = {
						is_eligible_harem_member_trigger = { LIEGE = root }
					}
					save_scope_as = matriarch
				}
			}
			else_if = {
				limit = {
					any_ancestor = {
						is_eligible_harem_member_trigger = {
							LIEGE = root
						}
						is_grandparent_of = root
					}
				}
				random_ancestor = {
					limit = {
						is_eligible_harem_member_trigger = {
							LIEGE = root
						}
						is_grandparent_of = root
					}
					save_scope_as = matriarch
				}
			}
			else_if = {
				limit = {
					any_parent = {
						is_eligible_harem_member_trigger = { LIEGE = root }
					}
				}
				random_parent = {
					limit = {
						is_eligible_harem_member_trigger = { LIEGE = root }
					}
					save_scope_as = matriarch
				}
			}
		}
		if = {
			limit = {
				exists = scope:matriarch
			}
			random_list = {
				20 = { # They give you a blessing
					opinion_modifier = {
						who = scope:matriarch
						opinion_target = root
						multiplier = 0.25
					}
					modifier = {
						scope:matriarch = {
							has_trait = content
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = humble
						}
						add = 5
					}
					modifier = {
						OR = {
							has_relation_friend = scope:matriarch
							has_relation_lover = scope:matriarch
						}
						add = 5
					}
					modifier = {
						OR = {
							has_relation_best_friend = scope:matriarch
							has_relation_soulmate = scope:matriarch
						}
						add = 10
					}
					trigger_event = harem_events.2101
				}
				20 = { # They ask you to favor a consort
					trigger = {
						is_valid_for_consort_favor_request_trigger = yes
					}
					modifier = {
						any_consort = {
							house ?= scope:matriarch.house
							harem_politics_favored_consort_trigger = no
						}
						add = 10
					}
					modifier = {
						any_consort = {
							OR = {
								has_relation_friend = scope:matriarch
								has_relation_lover = scope:matriarch
							}
							harem_politics_favored_consort_trigger = no
						}
						add = 5
					}
					modifier = {
						any_consort = {
							OR = {
								has_relation_best_friend = scope:matriarch
								has_relation_soulmate = scope:matriarch
							}
							harem_politics_favored_consort_trigger = no
						}
						add = 10
					}
					modifier = {
						has_character_flag = matriarch_requested_favor_flag
						add = -10
					}
					trigger_event = harem_events.2102
				}
				20 = { # They complain of you favoring a consort
					trigger = {
						is_valid_for_consort_stop_favor_request_trigger = yes
					}
					modifier = {
						any_consort = {
							harem_politics_beloved_consort_trigger = yes
							NOR = {
								house ?= scope:matriarch.house
								has_relation_friend = scope:matriarch
								has_relation_best_friend = scope:matriarch
								has_relation_lover = scope:matriarch
								has_relation_soulmate = scope:matriarch
							}
							has_relation_rival = scope:matriarch
						}
						add = 10
					}
					modifier = {
						any_consort = {
							harem_politics_beloved_consort_trigger = yes
							NOR = {
								house ?= scope:matriarch.house
								has_relation_friend = scope:matriarch
								has_relation_best_friend = scope:matriarch
								has_relation_lover = scope:matriarch
								has_relation_soulmate = scope:matriarch
							}
							has_relation_nemesis = scope:matriarch
						}
						add = 20
					}
					modifier = {
						any_consort = {
							house ?= scope:matriarch.house
							harem_politics_favored_consort_trigger = no
						}
						add = 20
					}
					modifier = {
						has_character_flag = matriarch_requested_stop_favor_flag
						add = -10
					}
					trigger_event = harem_events.2103
				}
				20 = { # Another consort is visiting them
					trigger = {
						is_valid_for_filial_consort_visit_trigger = yes
					}
					modifier = {
						any_consort = {
							is_valid_filial_consort_trigger = yes
							OR = {
								root.primary_spouse ?= this
								is_high_consort_trigger = {
									LIEGE = root
								}
							}
						}
						add = 5
					}
					modifier = {
						has_character_flag = matriarch_filial_consort_flag
						add = -10
					}
					trigger_event = harem_events.2109
				}
				15 = { # They ask you to grant a title to a relative
					trigger = {
						is_valid_for_title_request_trigger = yes
					}
					modifier = {
						scope:matriarch = {
							has_trait = ambitious
						}
						add = 10
					}
					modifier = {
						scope:matriarch = {
							has_trait = arrogant
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = greedy
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = humble
						}
						add = -5
					}
					modifier = {
						scope:matriarch = {
							has_trait = content
						}
						add = -5
					}
					modifier = {
						has_character_flag = matriarch_requested_title_flag
						add = -10
					}
					trigger_event = harem_events.2104
				}
				15 = { # They ask you to grant a court position to a relative
					trigger = {
						is_valid_for_court_position_request_trigger = yes
					}
					modifier = {
						scope:matriarch = {
							has_trait = ambitious
						}
						add = 10
					}
					modifier = {
						scope:matriarch = {
							has_trait = arrogant
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = greedy
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = humble
						}
						add = -5
					}
					modifier = {
						scope:matriarch = {
							has_trait = content
						}
						add = -5
					}
					modifier = {
						has_character_flag = matriarch_requested_court_position_flag
						add = -10
					}
					trigger_event = harem_events.2105
				}
				10 = { # They ask you to grant a council position to a relative
					trigger = {
						is_valid_for_council_position_request_trigger = yes
					}
					modifier = {
						has_free_council_slot = yes
						add = 15
					}
					modifier = {
						scope:matriarch = {
							has_trait = ambitious
						}
						add = 15
					}
					modifier = {
						scope:matriarch = {
							has_trait = arrogant
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = greedy
						}
						add = 10
					}
					modifier = {
						scope:matriarch = {
							has_trait = humble
						}
						add = -10
					}
					modifier = {
						scope:matriarch = {
							has_trait = content
						}
						add = -10
					}
					modifier = {
						has_character_flag = matriarch_requested_council_position_flag
						add = -5
					}
					trigger_event = harem_events.2106
				}
				15 = { # They offer you a consort
					trigger = {
						is_valid_for_consort_offer_trigger = yes
					}
					modifier = {
						scope:matriarch = {
							has_trait = ambitious
						}
						add = 10
					}
					modifier = {
						scope:matriarch = {
							has_trait = arrogant
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = greedy
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = humble
						}
						add = -5
					}
					modifier = {
						scope:matriarch = {
							has_trait = content
						}
						add = -5
					}
					modifier = {
						has_character_flag = matriarch_offered_consort_flag
						add = -10
					}
					trigger_event = harem_events.2107
				}
				15 = { # They request you to promote a consort
					trigger = {
						is_valid_for_consort_promotion_request_trigger = yes
					}
					modifier = {
						scope:matriarch = {
							has_trait = ambitious
						}
						add = 10
					}
					modifier = {
						scope:matriarch = {
							has_trait = arrogant
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = greedy
						}
						add = 5
					}
					modifier = {
						scope:matriarch = {
							has_trait = humble
						}
						add = -5
					}
					modifier = {
						scope:matriarch = {
							has_trait = content
						}
						add = -5
					}
					modifier = {
						has_character_flag = matriarch_consort_promotion_flag
						add = -10
					}
					trigger_event = harem_events.2110
				}
				15 = { # They outright reject you
					trigger = {
						scope:matriarch = {
							opinion = {
								target = root
								value < 0
							}
							NOR = {
								has_trait = forgiving
								has_trait = compassionate
								has_trait = content
								has_trait = humble
								has_trait = craven
							}
						}
					}
					opinion_modifier = {
						who = scope:matriarch
						opinion_target = root
						multiplier = -0.25
					}
					modifier = {
						has_relation_rival = scope:matriarch
						add = 10
					}
					modifier = {
						has_relation_nemesis = scope:matriarch
						add = 20
					}
					trigger_event = harem_events.2108
				}
			}
		}
		else = {
			# Send error message
			on_trigger_fail_visit_matriarch_fallback_effect = yes
		}
	}
}
# They give you a blessing
harem_events.2101 = {
	type = character_event
	title = harem_events.2101.t
	desc = harem_events.2101.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = personality_honorable
	}
	left_portrait = {
		character = scope:matriarch
		animation = personality_content
	}
	
	trigger = {
		exists = scope:matriarch
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		random = {
			chance = {
				value = 10
				# Proper education
				if = {
					limit = {
						scope:matriarch = {
							OR = {
								has_education_rank_3_trigger = yes
								has_education_rank_4_trigger = yes
								has_education_rank_5_trigger = yes
							}
						}
					}
					add = 10
				}
				#personality fits
				if = {
					limit = {
						OR = {
							AND = {
								scope:matriarch = {
									has_education_diplomacy_trigger = yes
								}
								has_education_diplomacy_trigger = yes
							}
							AND = {
								scope:matriarch = {
									has_education_martial_trigger = yes
								}
								has_education_martial_trigger = yes
							}
							AND = {
								scope:matriarch = {
									has_education_learning_trigger = yes
								}
								has_education_learning_trigger = yes
							}
							AND = {
								scope:matriarch = {
									has_education_stewardship_trigger = yes
								}
								has_education_stewardship_trigger = yes
							}
							AND = {
								scope:matriarch = {
									has_education_intrigue_trigger = yes
								}
								has_education_intrigue_trigger = yes
							}
						}
					}
					add = 5
				}
			}
			if = {
				limit = {
					scope:matriarch = {
						has_education_diplomacy_trigger = yes
					}
				}
				add_character_modifier = {
					modifier = ancestor_blessing_modifier_diplomacy
					years = 2
				}
			}
			else_if = {
				limit = {
					scope:matriarch = {
						has_education_martial_trigger = yes
					}
				}
				add_character_modifier = {
					modifier = ancestor_blessing_modifier_martial
					years = 2
				}
			}
			else_if = {
				limit = {
					scope:matriarch = {
						has_education_learning_trigger = yes
					}
				}
				add_character_modifier = {
					modifier = ancestor_blessing_modifier_learning
					years = 2
				}
			}
			else_if = {
				limit = {
					scope:matriarch = {
						has_education_stewardship_trigger = yes
					}
				}
				add_character_modifier = {
					modifier = ancestor_blessing_modifier_stewardship
					years = 2
				}
			}
			else = {
				add_character_modifier = {
					modifier = ancestor_blessing_modifier_intrigue
					years = 2
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 5
			}
			add_character_modifier = {
				modifier = filial_care_modifier
				years = 2
			}
		}
	}
	
	option = {
        name = harem_events.2101.a
		add_piety = minor_piety_gain
		add_opinion = {
			target = scope:matriarch
			modifier = pleased_opinion
			opinion = 10
		}
        ai_chance = {
            base = 1
        }
    }
}
# They ask you to favor a consort
harem_events.2102 = {
	type = character_event
	title = harem_events.2102.t
	desc = harem_events.2102.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = personality_honorable
	}
	left_portrait = {
		character = scope:matriarch
		animation = worry
	}
	lower_center_portrait = {
		character = scope:consort
	}
	
	trigger = {
		is_valid_for_consort_favor_request_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		random_consort = {
			limit = {
				is_valid_consort_for_favor_request_trigger = yes
			}
			weight = {
				base = 10
				modifier = {
					house ?= {
						any_house_member = {
							this = scope:matriarch
						}
					}
					add = 20
				}
				modifier = {
					has_character_modifier = unfavored_consort_modifier
					add = 10
				}
				modifier = {
					has_character_modifier = forgotten_consort_modifier
					add = 20
				}
			}
			save_scope_as = consort 
		}
	}
	
	# Favor the consort greatly
	option = {
        name = harem_events.2102.a
		add_piety = medium_piety_gain
		scope:consort = {
			calyver_favor_moderate_gain_effect = yes
			add_opinion = {
				target = root
				modifier = thankful_opinion
				opinion = 10
			}
			hidden_effect = {
				add_opinion = {
					target = scope:matriarch
					modifier = thankful_opinion
					opinion = 15
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
		}
        ai_chance = {
            base = 20
			ai_value_modifier = {
				ai_honor = 0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value >= medium_positive_trait_compatibility
				}
				add = 20
			}
			modifier = {
				has_trait = trusting
				add = 15
			}
        }
    }
	# Favor the consort for the night
	option = {
        name = harem_events.2102.b
		add_piety = minor_piety_gain
		scope:consort = {
			calyver_favor_minor_gain_effect = yes
			add_opinion = {
				target = root
				modifier = thankful_opinion
				opinion = 5
			}
			hidden_effect = {
				add_opinion = {
					target = scope:matriarch
					modifier = thankful_opinion
					opinion = 10
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 5
			}
		}
		ai_chance = {
            base = 30
			ai_value_modifier = {
				ai_honor = 0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = 0.15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value >= low_positive_trait_compatibility
				}
				add = 10
			}
        }
    }
	# Just nod, and do nothing
	option = {
        name = harem_events.2102.c
		add_piety = minor_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -5
			}
		}
		ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = -0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = -0.10
			}
			modifier = {
				has_trait = paranoid
				add = 10
			}
        }
    }
	# Don't get involved in my harem!
	option = {
        name = harem_events.2102.d
		add_piety = medium_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
		}
		scope:consort = {
			calyver_favor_moderate_loss_effect = yes
		}
		stress_impact = {
			callous = minor_stress_impact_loss
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
		}
		ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = -0.2
				ai_compassion = -0.2
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = -0.25
			}
			modifier = {
				has_trait = callous
				add = 25
			}
			modifier = {
				has_trait = compassionate
				add = -15
			}
			modifier = {
				has_trait = forgiving
				add = -15
			}
        }
    }
	after = {
		add_character_flag = {
			flag = matriarch_requested_favor_flag
			years = 4
		}
	}
}
# They ask you to stop favoring a consort
harem_events.2103 = {
	type = character_event
	title = harem_events.2103.t
	desc = harem_events.2103.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = shame
	}
	left_portrait = {
		character = scope:matriarch
		animation = disapproval
	}
	lower_center_portrait = {
		character = scope:consort
	}
	
	trigger = {
		is_valid_for_consort_stop_favor_request_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		random_consort = {
			limit = {
				is_valid_consort_for_stop_favor_request_trigger = yes
			}
			weight = {
				base = 10
				modifier = {
					harem_politics_beloved_consort_trigger = yes
					add = 10
				}
				modifier = {
					has_relation_rival = scope:matriarch
					add = 5
				}
				modifier = {
					has_relation_nemesis = scope:matriarch
					add = 10
				}
				modifier = {
					any_relation = {
						type = rival
						this != scope:matriarch
						OR = {
							house ?= {
								any_house_member = {
									this = scope:matriarch
								}
							}
							has_relation_friend = scope:matriarch
							has_relation_best_friend = scope:matriarch
							has_relation_lover = scope:matriarch
							has_relation_soulmate = scope:matriarch
						}
					}
					add = 10
				}
				modifier = {
					any_relation = {
						type = nemesis
						this != scope:matriarch
						OR = {
							house ?= {
								any_house_member = {
									this = scope:matriarch
								}
							}
							has_relation_friend = scope:matriarch
							has_relation_best_friend = scope:matriarch
							has_relation_lover = scope:matriarch
							has_relation_soulmate = scope:matriarch
						}
					}
					add = 20
				}
			}
			save_scope_as = consort 
		}
	}
	
	# Stop seeing the consort immediately
	option = {
        name = harem_events.2103.a
		add_piety = medium_piety_gain
		scope:consort = {
			calyver_favor_moderate_loss_effect = yes
			if = {
				limit = {
					has_character_modifier = favor_boost_modifier
				}
				calyver_stop_favor_boost_event_effect = {
					HAREM_LIEGE = root
					CONSORT = scope:consort
				}
			}
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -10
			}
			hidden_effect = {
				add_opinion = {
					target = scope:matriarch
					modifier = hatred_spouse_opinion
					opinion = -20
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
		}
        ai_chance = {
            base = 20
			ai_value_modifier = {
				ai_honor = 0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.20
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value <= medium_negative_trait_compatibility
				}
				add = 20
			}
			modifier = {
				has_trait = trusting
				add = 15
			}
			modifier = {
				OR = {
					has_relation_friend = scope:consort
					has_relation_lover = scope:consort
				}
				add = -10
			}
			modifier = {
				OR = {
					has_relation_best_friend = scope:consort
					has_relation_soulmate = scope:consort
				}
				add = -20
			}
			modifier = {
				scope:consort = {
					has_character_modifier = beloved_consort_modifier
				}
				add = -10
			}
			modifier = {
				scope:consort = {
					has_character_modifier = favor_boost_modifier
				}
				add = -5
			}
        }
    }
	# Favor the consort for the night
	option = {
        name = harem_events.2103.b
		add_piety = minor_piety_gain
		scope:consort = {
			calyver_favor_minor_loss_effect = yes
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -5
			}
			hidden_effect = {
				add_opinion = {
					target = scope:matriarch
					modifier = hatred_spouse_opinion
					opinion = -10
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 5
			}
		}
		ai_chance = {
            base = 30
			ai_value_modifier = {
				ai_honor = 0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.20
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value <= neutral_trait_compatibility
				}
				add = 5
			}
			modifier = {
				OR = {
					has_relation_friend = scope:consort
					has_relation_lover = scope:consort
				}
				add = -5
			}
			modifier = {
				OR = {
					has_relation_best_friend = scope:consort
					has_relation_soulmate = scope:consort
				}
				add = -10
			}
			modifier = {
				scope:consort = {
					has_character_modifier = beloved_consort_modifier
				}
				add = -5
			}
			modifier = {
				scope:consort = {
					has_character_modifier = favor_boost_modifier
				}
				add = -5
			}
        }
    }
	# Just nod, and do nothing
	option = {
        name = harem_events.2102.c
		add_piety = minor_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -5
			}
		}
		scope:consort = {
			calyver_favor_minor_gain_effect = yes
		}
		ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = -0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = 0.15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value > neutral_trait_compatibility
				}
				add = 10
			}
			modifier = {
				OR = {
					has_relation_friend = scope:consort
					has_relation_lover = scope:consort
				}
				add = 10
			}
			modifier = {
				scope:consort = {
					harem_politics_beloved_consort_trigger = yes
				}
				add = 10
			}
        }
    }
	# Don't get involved in my harem!
	option = {
        name = harem_events.2102.d
		add_piety = medium_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
		}
		scope:consort = {
			calyver_favor_moderate_gain_effect = yes
		}
		stress_impact = {
			callous = minor_stress_impact_loss
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
		}
		ai_chance = {
            base = 15
			ai_value_modifier = {
				ai_honor = -0.3
				ai_compassion = -0.3
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = -0.35
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = 0.35
			}
			modifier = {
				has_trait = callous
				add = 25
			}
			modifier = {
				has_trait = compassionate
				add = -15
			}
			modifier = {
				has_trait = forgiving
				add = -15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value > medium_positive_trait_compatibility
				}
				add = 20
			}
			modifier = {
				OR = {
					has_relation_best_friend = scope:consort
					has_relation_soulmate = scope:consort
				}
				add = 20
			}
			modifier = {
				scope:consort = {
					harem_politics_beloved_consort_trigger = yes
				}
				add = 20
			}
        }
    }
	after = {
		add_character_flag = {
			flag = matriarch_requested_stop_favor_flag
			years = 4
		}
	}
}
# They ask you to grant a title to a relative
harem_events.2104 = {
	type = character_event
	title = harem_events.2104.t
	desc = harem_events.2104.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = personality_rational
	}
	left_portrait = {
		character = scope:matriarch
		animation = worry
	}
	lower_center_portrait = {
		character = scope:consort_relative
	}
	
	trigger = {
		is_valid_for_title_request_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		scope:matriarch = {
			if = {
				limit = {
					house ?= {
						any_house_member = {
							is_valid_matriarch_relative_for_title_grant_trigger = yes
						}
					}
				}
				house = {
					every_house_member = {
						limit = {
							is_valid_matriarch_relative_for_title_grant_trigger = yes
						}
						add_to_temporary_list = relative_list
					}
				}
			}
			else = {
				every_close_family_member = {
					limit = {
						is_valid_matriarch_relative_for_title_grant_trigger = yes
					}
					add_to_temporary_list = relative_list
				}
			}
		}
		random_in_list = {
			list = relative_list
			weight = {
				base = 10
				modifier = {
					is_close_family_of = scope:matriarch
					add = 20
				}
				modifier = {
					house ?= {
						any_house_member = {
							this = scope:matriarch
						}
					}
					add = 10
				}
				modifier = {
					add = {
						value = sum_of_all_skills_value
						divide = 5
					}
				}
				modifier = {
					house.house_head ?= this
					add = 20
				}
				modifier = {
					add = {
						value = "reverse_opinion(scope:matriarch)"
						multiply = 0.2
					}
				}
				modifier = {
					is_married = yes
					OR = {
						AND = {
							is_female = yes
							matrilinear_marriage = yes
						}
						AND = {
							is_male = yes
							patrilinear_marriage = yes
						}
					}
					add = 20
				}
				modifier = {
					any_child = {
						house ?= {
							any_house_member = {
								this = scope:matriarch
							}
						}
						count > 0
					}
					add = 10
				}
			}
			save_scope_as = consort_relative
		}
		hp_select_random_title_effect = yes
	}

	option = { #Give title away
        name = harem_events.2104.a
		add_piety = medium_piety_gain
		scope:matriarch = {
        	add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 20
			}
        }
		hp_grant_worst_title_effect = {
			CONSORT = scope:matriarch
		}
		if = { #Stress gains unless you are over your domain limit
			limit = {
				domain_size <= domain_limit
			}
			stress_impact = {
				greedy = medium_stress_impact_gain # But, titles
				diligent = medium_stress_impact_gain # But, I like managing stuff
				arrogant = medium_stress_impact_gain # But, my titles
			}
		}
		stress_impact = {
			lazy = minor_stress_impact_loss
			generous = minor_stress_impact_loss
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 20
            ai_value_modifier = {
   				ai_honor = 0.2
   				ai_greed = -1
   			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.3
			}
			modifier = {
				add = {
					value = scope:consort_relative.sum_of_all_skills_value
					divide = 5
				}
			}

            modifier = {	#Weight down for stress.
				add = -25
				has_trait = greedy
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = diligent
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = humble
			}
			modifier = {	#Weight down for stress.
				add = 25
				has_trait = lazy
			}
			modifier = {	#Weight down for stress.
				add = 25
				has_trait = generous
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = arrogant
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = { # To clean the family lineage
				scope:matriarch = {
					has_no_particular_noble_roots_trigger = yes
					is_close_family_of = scope:consort_relative
				}
				add = 15
			}
			modifier = {
				scope:consort_relative = {
					is_lowborn = yes
				}
				add = -25
			}
			modifier = {
				domain_size > domain_limit
				add = 15
			}
        }
    }
	option = { # Make them a noble family head
        name = harem_politics.2104.b
		trigger = {
			gold >= massive_gold_value
			government_allows = noble_families
			is_independent_ruler = yes
			scope:matriarch.house.house_head ?= scope:consort_relative
		}
		show_as_unavailable = { NOT = { gold >= massive_gold_value } }
		remove_short_term_gold = massive_gold_value
		hidden_effect = {
			scope:consort_relative = {
				if = {
					limit = {
						NOT = { is_courtier_of = root }
					}
					root = {
						add_courtier = scope:consort_relative
					}
					return_to_court = yes
				}
			}
		}
		scope:consort_relative = {
			create_noble_family_effect = { GOVERNMENT_GIVER = root }
			create_title_and_vassal_change = {
				type = swear_fealty
				add_claim_on_loss = no
				save_scope_as = title_change
			}
			change_liege = {
				liege = root
				change = scope:title_change
			}
			resolve_title_and_vassal_change = scope:title_change
			hidden_effect = {
				domicile ?= {
					if = {
						limit = {
							NOT = { domicile_location = root.capital_province }
						}
						move_domicile = root.capital_province
					}
				}
			}
		}
		add_piety = minor_piety_gain
		scope:matriarch = {
        	add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
        }
		stress_impact = {
			greedy = medium_stress_impact_gain
			generous = minor_stress_impact_loss
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 15
            ai_value_modifier = {
   				ai_honor = 0.1
   				ai_greed = -0.75
   			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.3
			}

            modifier = {	#Weight down for stress.
				add = -25
				has_trait = greedy
			}

			modifier = {	#Weight down for stress.
				add = 25
				has_trait = generous
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = {
				add = 10
				has_trait = arrogant
				has_no_particular_noble_roots_trigger = yes
			}
			modifier = { # To clean the family lineage
				scope:matriarch = {
					has_no_particular_noble_roots_trigger = yes
					is_close_family_of = scope:consort_relative
				}
				add = 15
			}
			modifier = {
				gold <= massive_gold_value
				add = -15
			}
        }
    }
	option = { # Compromise - give them gold
        name = harem_politics.2104.c
		trigger = {
			gold >= medium_gold_value
		}
		show_as_unavailable = { NOT = { gold >= medium_gold_value } }
		save_scope_value_as = {
			name = gold_to_pay
			value = medium_gold_value
		}
		pay_short_term_gold = {
			target = scope:consort_relative
			gold = scope:gold_to_pay
		}
		add_piety = minor_piety_gain
		scope:matriarch = {
        	add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
        }
		scope:consort_relative = {
			add_opinion = {
				target = scope:matriarch
				modifier = grateful_opinion
				opinion = 10
			}
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 10
			}
			hidden_effect = {
				if = {
					limit = {
						NOT = { is_courtier_of = root }
					}
					root = {
						add_courtier = scope:consort_relative
					}
					return_to_court = yes
				}
			}
		}
        stress_impact = {
			greedy = medium_stress_impact_gain
			generous = minor_stress_impact_loss
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 20
            ai_value_modifier = {
				ai_honor = 0.1
				ai_greed = -0.5
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.3
			}
			modifier = {
				gold <= medium_gold_value
				add = -20
			}
			modifier = { # It's better than giving them titles
				gold >= major_gold_value
				add = 15
			}

            modifier = {	#Weight down for stress.
				add = -25
				has_trait = greedy
			}
			modifier = {	#Weight down for stress.
				add = 25
				has_trait = generous
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = { #Influential consort
				domain_size <= domain_limit
				add = 10
			}
        }
    }
	# Don't talk about government matters
	option = {
        name = harem_events.2104.d
		add_piety = medium_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
		}
		stress_impact = {
			trusting = minor_stress_impact_gain
			generous = minor_stress_impact_gain
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			callous = minor_stress_impact_loss
		}
		ai_chance = {
            base = 15
			ai_value_modifier = {
				ai_compassion = -0.5
				ai_honor = -0.5
				ai_greed = 0.5
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = -0.5
			}
			modifier = {
				has_trait = trusting
				add = -25
			}
			modifier = {
				has_trait = generous
				add = -25
			}
			modifier = {
				has_trait = forgiving
				add = -25
			}
			modifier = {
				has_trait = compassionate
				add = -25
			}
			modifier = {
				has_trait = callous
				add = 25
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
			modifier = {
				has_trait = greedy
				add = 15
			}
        }
    }
	after = {
		add_character_flag = {
			flag = matriarch_requested_title_flag
			years = 4
		}
	}
}
# They ask you to grant a court position to a relative
harem_events.2105 = {
	type = character_event
	title = harem_events.2105.t
	desc = harem_events.2105.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = personality_rational
	}
	left_portrait = {
		character = scope:matriarch
		animation = personality_honorable
	}
	lower_center_portrait = {
		character = scope:consort_relative
	}
	
	trigger = {
		is_valid_for_court_position_request_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		scope:matriarch = {
			if = {
				limit = {
					house ?= {
						any_house_member = {
							is_valid_matriarch_relative_for_court_position_grant_trigger = yes
							save_temporary_scope_as = relative
						}
					}
					root = {
						character_can_be_employed_in_a_court_position_trigger = {
							CHARACTER = scope:relative
						}
					}
				}
				house = {
					every_house_member = {
						limit = {
							is_valid_matriarch_relative_for_court_position_grant_trigger = yes
							save_temporary_scope_as = relative
							root = {
								character_can_be_employed_in_a_court_position_trigger = {
									CHARACTER = scope:relative
								}
							}
						}
						add_to_temporary_list = relative_list
					}
				}
			}
			else = {
				every_close_family_member = {
					limit = {
						is_valid_matriarch_relative_for_court_position_grant_trigger = yes
						save_temporary_scope_as = relative
						root = {
							character_can_be_employed_in_a_court_position_trigger = {
								CHARACTER = scope:relative
							}
						}
					}
					add_to_temporary_list = relative_list
				}
			}
		}
		random_in_list = {
			list = relative_list
			weight = {
				base = 10
				modifier = {
					is_close_family_of = scope:matriarch
					add = 20
				}
				modifier = {
					house ?= {
						any_house_member = {
							this = scope:matriarch
						}
					}
					add = 10
				}
				modifier = {
					add = {
						value = sum_of_all_skills_value
						divide = 5
					}
				}
				modifier = {
					house.house_head ?= this
					add = 20
				}
				modifier = {
					add = {
						value = "reverse_opinion(scope:matriarch)"
						multiply = 0.2
					}
				}
			}
			save_scope_as = consort_relative
		}
	}

	option = { # Grant them a court position
        name = harem_events.2105.a
		trigger = {
			court_positions_currently_filled < court_positions_currently_available
			character_can_be_employed_in_a_court_position_trigger = {
				CHARACTER = scope:consort_relative
			}
		}
		add_piety = medium_piety_gain
		scope:matriarch = {
        	add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 15
			}
        }
		scope:consort_relative = {
			custom_tooltip = consort_relative_gained_court_position_tooltip
			add_opinion = {
				target = scope:matriarch
				modifier = grateful_opinion
				opinion = 15
			}
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 15
			}
			hidden_effect = {
				if = {
					limit = {
						NOT = { is_courtier_of = root }
					}
					root = {
						add_courtier = scope:consort_relative
					}
					return_to_court = yes
				}
			}

		}
		if = {
        	limit = {
        		court_positions_currently_filled < court_positions_currently_available
        		scope:consort_relative = {
        			has_any_court_position = no
					can_be_employed_as_any_court_position_trigger = yes
        		}
        	}
        	employ_character_as_any_free_position_effect = {
        		CHARACTER = scope:consort_relative
        	}
        }
		stress_impact = {
			generous = minor_stress_impact_loss
			greedy = minor_stress_impact_gain
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 20
            ai_value_modifier = {
   				ai_honor = 0.2
   				ai_greed = -0.2
   			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.3
			}
			modifier = {
				add = {
					value = scope:consort_relative.sum_of_all_skills_value
					divide = 5
				}
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = {	#Weight down for stress.
				add = 25
				has_trait = generous
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = greedy
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}

			modifier = { # To clean the family lineage
				scope:matriarch = {
					has_no_particular_noble_roots_trigger = yes
					is_close_family_of = scope:consort_relative
				}
				add = 15
			}
			modifier = {
				scope:consort_relative.sum_of_all_skills_value <= sum_of_all_skills_threshold_poor
				add = -10
			}
			modifier = {
				scope:consort_relative.sum_of_all_skills_value >= sum_of_all_skills_threshold_good
				add = 10
			}
        }
    }
	option = { # Compromise - give them gold
        name = harem_politics.2104.c
		trigger = {
			gold >= minor_gold_value
		}
		show_as_unavailable = { NOT = { gold >= minor_gold_value } }
		save_scope_value_as = {
			name = gold_to_pay
			value = minor_gold_value
		}
		pay_short_term_gold = {
			target = scope:consort_relative
			gold = scope:gold_to_pay
		}
		add_piety = minor_piety_gain
		scope:matriarch = {
        	add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
        }
		scope:consort_relative = {
			add_opinion = {
				target = scope:matriarch
				modifier = grateful_opinion
				opinion = 10
			}
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 10
			}
			hidden_effect = {
				if = {
					limit = {
						NOT = { is_courtier_of = root }
					}
					root = {
						add_courtier = scope:consort_relative
					}
					return_to_court = yes
				}
			}
		}
        stress_impact = {
			greedy = medium_stress_impact_gain
			generous = minor_stress_impact_loss
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 20
            ai_value_modifier = {
				ai_honor = 0.1
				ai_greed = -0.5
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.3
			}
			modifier = {
				gold <= minor_gold_value
				add = -20
			}
			modifier = {
				gold >= medium_gold_value
				add = 15
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}
            modifier = {	#Weight down for stress.
				add = -25
				has_trait = greedy
			}
			modifier = {	#Weight down for stress.
				add = 25
				has_trait = generous
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = {
				scope:consort_relative.sum_of_all_skills_value <= sum_of_all_skills_threshold_average
				add = 10
			}
        }
    }
	option = { # They can enjoy my hospitality
        name = harem_events.2105.c
		trigger = {
			scope:consort_relative = {
				NOT = { is_courtier_of = root }
			}
		}
		add_piety = minor_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -5
			}
		}
		scope:consort_relative = {
			add_opinion = {
				target = scope:matriarch
				modifier = grateful_opinion
				opinion = 5
			}
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 5
			}
			root = {
				add_courtier = scope:consort_relative
			}
			return_to_court = yes
		}
		stress_impact = {
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 20
            ai_value_modifier = {
				ai_honor = 0.1
				ai_greed = 0.2
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.2
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort_relative
				multiplier = -0.2
			}
			modifier = {
				scope:consort_relative.sum_of_all_skills_value <= sum_of_all_skills_threshold_average
				add = 10
			}
			modifier = {
				has_trait = paranoid
				add = -25
			}
			modifier = {
				has_trait = generous
				add = 15
			}
			modifier = {
				has_trait = trusting
				add = 15
			}
        }
    }
	# Don't talk about government matters
	option = {
        name = harem_events.2104.d
		add_piety = medium_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
		}
		stress_impact = {
			trusting = minor_stress_impact_gain
			generous = minor_stress_impact_gain
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			callous = minor_stress_impact_loss
		}
		ai_chance = {
            base = 15
			ai_value_modifier = {
				ai_compassion = -0.5
				ai_honor = -0.5
				ai_greed = 0.2
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = -0.5
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort_relative
				multiplier = -0.5
			}
			modifier = {
				has_trait = trusting
				add = -25
			}
			modifier = {
				has_trait = generous
				add = -25
			}
			modifier = {
				has_trait = forgiving
				add = -25
			}
			modifier = {
				has_trait = compassionate
				add = -25
			}
			modifier = {
				has_trait = callous
				add = 25
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
			modifier = {
				has_trait = greedy
				add = 15
			}
        }
    }
	after = {
		add_character_flag = {
			flag = matriarch_requested_court_position_flag
			years = 4
		}
	}
}
# They ask you to grant a council position to a relative
harem_events.2106 = {
	type = character_event
	title = harem_events.2106.t
	desc = harem_events.2106.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = personality_rational
	}
	left_portrait = {
		character = scope:matriarch
		animation = personality_honorable
	}
	lower_left_portrait = {
		trigger = { exists = scope:second_party }
		character = scope:consort_relative
	}
	lower_center_portrait = {
		trigger = {
			NOT = { exists = scope:second_party }
		}
		character = scope:consort_relative
	}
	lower_right_portrait = {
		trigger = { exists = scope:second_party }
		character = scope:second_party
	}
	
	trigger = {
		is_valid_for_council_position_request_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		scope:matriarch = {
			if = {
				limit = {
					house ?= {
						any_house_member = {
							is_valid_matriarch_relative_for_council_position_grant_trigger = yes
						}
					}
				}
				house = {
					every_house_member = {
						limit = {
							is_valid_matriarch_relative_for_council_position_grant_trigger = yes
						}
						add_to_temporary_list = relative_list
					}
				}
			}
			else = {
				every_close_family_member = {
					limit = {
						is_valid_matriarch_relative_for_council_position_grant_trigger = yes
					}
					add_to_temporary_list = relative_list
				}
			}
		}
		random_in_list = {
			list = relative_list
			weight = {
				base = 10
				modifier = {
					is_close_family_of = scope:matriarch
					add = 20
				}
				modifier = {
					house ?= {
						any_house_member = {
							this = scope:matriarch
						}
					}
					add = 10
				}
				modifier = {
					add = {
						value = sum_of_all_skills_value
						divide = 5
					}
				}
				modifier = {
					house.house_head ?= this
					add = 20
				}
				modifier = {
					add = {
						value = "reverse_opinion(scope:matriarch)"
						multiply = 0.2
					}
				}
			}
			save_scope_as = consort_relative
		}
		root = { save_scope_as = petition_liege }
		scope:consort_relative = { save_scope_as = petition_vassal }
		petition_liege_save_council_seat_effect = {
			JOB_TAKER = scope:consort_relative
			LIEGE = root
		}
	}

	option = { # Grant them a council position
		name = harem_events.2106.a
		trigger = {
			scope:consort_relative = {
				is_valid_matriarch_relative_for_council_position_grant_trigger = yes
			}
		}
		if = {
			limit = {
				exists = scope:second_party
			}
			custom_tooltip = councilor_will_be_fired_tooltip
		}
		add_piety = medium_piety_gain
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 15
			}
		}
		scope:consort_relative = {
			add_opinion = {
				target = scope:matriarch
				modifier = grateful_opinion
				opinion = 15
			}
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 15
			}
			hidden_effect = {
				if = {
					limit = {
						NOT = { is_courtier_of = root }
					}
					root = {
						add_courtier = scope:consort_relative
					}
					return_to_court = yes
				}
			}
		}
		# Fire current councillor and assign consort_relative to the chosen seat
		# if = {
		# 	limit = {
		# 		exists = scope:second_party
		# 	}
		# 	fire_councillor = scope:second_party
		# }
		switch = {
			trigger = scope:consort_relative.var:petition_liege_council_first
			flag:chancellor = {
				assign_councillor_type = {
					type = councillor_chancellor
					remove_existing_councillor = yes
					target = scope:consort_relative
				}
			}
			flag:marshal = {
				assign_councillor_type = {
					type = councillor_marshal
					remove_existing_councillor = yes
					target = scope:consort_relative
				}
			}
			flag:steward = {
				assign_councillor_type = {
					type = councillor_steward
					remove_existing_councillor = yes
					target = scope:consort_relative
				}
			}
			flag:spymaster = {
				assign_councillor_type = {
					type = councillor_spymaster
					remove_existing_councillor = yes
					target = scope:consort_relative
				}
			}
			flag:court_chaplain = {
				assign_councillor_type = {
					type = councillor_court_chaplain
					remove_existing_councillor = yes
					target = scope:consort_relative
				}
			}
		}
		petition_liege_block_firing_councillor_effect = {
			COURT_OWNER = root
			JOB_TAKER = scope:consort_relative
		}
		stress_impact = {
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 10
            ai_value_modifier = {
   				ai_rationality = -0.2
				ai_honor = -0.2
   			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.3
			}
			modifier = {
				add = {
					value = scope:consort_relative.sum_of_all_skills_value
					divide = 5
				}
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}

			modifier = { # To clean the family lineage
				scope:matriarch = {
					has_no_particular_noble_roots_trigger = yes
					is_close_family_of = scope:consort_relative
				}
				add = 15
			}
			modifier = { # Powerful vassal
				scope:consort_relative = {
					is_powerful_vassal_of = root
				}
				add = 15
			}
			# Low skill level
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:chancellor
					diplomacy < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.diplomacy
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:marshal
					martial < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.martial
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:steward
					stewardship < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.stewardship
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:spymaster
					intrigue < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.intrigue
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:court_chaplain
					learning < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.learning
					multiply = -1
				}
			}
			# High skill level
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:chancellor
					diplomacy > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.diplomacy
					subtract = decent_skill_rating
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:marshal
					martial > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.martial
					subtract = decent_skill_rating
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:steward
					stewardship > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.stewardship
					subtract = decent_skill_rating
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:spymaster
					intrigue > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.intrigue
					subtract = decent_skill_rating
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:court_chaplain
					learning > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.learning
					subtract = decent_skill_rating
				}
			}
			# Current councillor considerations (scope:second_party set by petition_liege_save_council_seat_effect)
			modifier = {
				scope:second_party ?= {
					OR = {
						is_powerful_vassal_of = root
						house ?= { is_powerful_family = yes }
					}
				}
				add = -25
			}
			modifier = {
				scope:second_party.house ?= { is_dominant_family = yes }
				add = -25
			}
			modifier = {
				exists = scope:second_party
				add = {
					value = "root.opinion(scope:second_party)"
					multiply = -0.3
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:chancellor
				exists = scope:second_party
				scope:consort_relative.diplomacy > scope:second_party.diplomacy
				add ={ # We add the difference in skills
					value = scope:consort_relative.diplomacy
					subtract = scope:second_party.diplomacy
					multiply = 5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:marshal
				exists = scope:second_party
				scope:consort_relative.martial > scope:second_party.martial
				add ={ # We add the difference in skills
					value = scope:consort_relative.martial
					subtract = scope:second_party.martial
					multiply = 5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:steward
				exists = scope:second_party
				scope:consort_relative.stewardship > scope:second_party.stewardship
				add ={ # We add the difference in skills
					value = scope:consort_relative.stewardship
					subtract = scope:second_party.stewardship
					multiply = 5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:spymaster
				exists = scope:second_party
				scope:consort_relative.intrigue > scope:second_party.intrigue
				add ={ # We add the difference in skills
					value = scope:consort_relative.intrigue
					subtract = scope:second_party.intrigue
					multiply = 5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:court_chaplain
				exists = scope:second_party
				scope:consort_relative.learning > scope:second_party.learning
				add ={ # We add the difference in skills
					value = scope:consort_relative.learning
					subtract = scope:second_party.learning
					multiply = 5
				}
			}
			modifier = {
				government_has_flag = government_is_celestial
				government_has_flag = government_has_merit
				highest_held_title_tier > tier_empire
				scope:consort_relative.merit_level < 7
				add = -25
			}
			modifier = {
				government_has_flag = government_is_celestial
				government_has_flag = government_has_merit
				highest_held_title_tier > tier_empire
				scope:consort_relative.merit_level >= 7
				add = 10
			}
			modifier = {
				government_has_flag = government_is_celestial
				government_has_flag = government_has_merit
				highest_held_title_tier > tier_empire
				scope:consort_relative.merit_level >= 8
				add = 10
			}
			modifier = {
				government_has_flag = government_is_celestial
				government_has_flag = government_has_merit
				highest_held_title_tier > tier_empire
				scope:consort_relative.merit_level >= 9
				add = 10
			}
        }
    }
	# Don't talk about government matters
	option = {
        name = harem_events.2104.d
		add_piety = medium_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
		}
		stress_impact = {
			trusting = minor_stress_impact_gain
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			callous = minor_stress_impact_loss
		}
		ai_chance = {
            base = 15
			ai_value_modifier = {
				ai_compassion = -0.5
				ai_rationality = 0.2
				ai_honor = 0.2
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = -0.5
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort_relative
				multiplier = -0.5
			}
			modifier = {
				has_trait = trusting
				add = -25
			}
			modifier = {
				has_trait = forgiving
				add = -25
			}
			modifier = {
				has_trait = compassionate
				add = -25
			}
			modifier = {
				has_trait = callous
				add = 25
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
			# Low skill level
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:chancellor
					diplomacy < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.diplomacy
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:marshal
					martial < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.martial
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:steward
					stewardship < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.stewardship
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:spymaster
					intrigue < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.intrigue
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:court_chaplain
					learning < medium_skill_rating
				}
				add = {
					value = medium_skill_rating
					subtract = scope:consort_relative.learning
				}
			}
			# High skill level
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:chancellor
					diplomacy > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.diplomacy
					subtract = decent_skill_rating
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:marshal
					martial > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.martial
					subtract = decent_skill_rating
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:steward
					stewardship > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.stewardship
					subtract = decent_skill_rating
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:spymaster
					intrigue > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.intrigue
					subtract = decent_skill_rating
					multiply = -1
				}
			}
			modifier = {
				NOT = { exists = scope:second_party }
				scope:consort_relative = {
					var:petition_liege_council_first ?= flag:court_chaplain
					learning > decent_skill_rating
				}
				add = {
					value = scope:consort_relative.learning
					subtract = decent_skill_rating
					multiply = -1
				}
			}
			modifier = { # Powerful vassal
				scope:consort_relative = {
					is_powerful_vassal_of = root
				}
				add = -15
			}
			# Current councillor considerations (scope:second_party set by petition_liege_save_council_seat_effect)
			modifier = {
				scope:second_party ?= { is_powerful_vassal_of = root }
				add = 25
			}
			modifier = {
				exists = scope:second_party
				add = {
					value = "root.opinion(scope:second_party)"
					multiply = 0.3
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:chancellor
				exists = scope:second_party
				scope:consort_relative.diplomacy > scope:second_party.diplomacy
				add ={ # We add the difference in skills
					value = scope:consort_relative.diplomacy
					subtract = scope:second_party.diplomacy
					multiply = -5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:marshal
				exists = scope:second_party
				scope:consort_relative.martial > scope:second_party.martial
				add ={ # We add the difference in skills
					value = scope:consort_relative.martial
					subtract = scope:second_party.martial
					multiply = -5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:steward
				exists = scope:second_party
				scope:consort_relative.stewardship > scope:second_party.stewardship
				add ={ # We add the difference in skills
					value = scope:consort_relative.stewardship
					subtract = scope:second_party.stewardship
					multiply = -5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:spymaster
				exists = scope:second_party
				scope:consort_relative.intrigue > scope:second_party.intrigue
				add ={ # We add the difference in skills
					value = scope:consort_relative.intrigue
					subtract = scope:second_party.intrigue
					multiply = -5
				}
			}
			modifier = {
				scope:consort_relative.var:petition_liege_council_first ?= flag:court_chaplain
				exists = scope:second_party
				scope:consort_relative.learning > scope:second_party.learning
				add ={ # We add the difference in skills
					value = scope:consort_relative.learning
					subtract = scope:second_party.learning
					multiply = -5
				}
			}
        }
    }
	after = {
		add_character_flag = {
			flag = matriarch_requested_council_position_flag
			years = 4
		}
	}
}
# They offer you a consort
harem_events.2107 = {
	type = character_event
	title = harem_events.2107.t
	desc = harem_events.2107.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = personality_rational
	}
	left_portrait = {
		character = scope:matriarch
		animation = personality_honorable
	}
	lower_center_portrait = {
		character = scope:consort_relative
	}
	
	trigger = {
		is_valid_for_consort_offer_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}

	immediate = {
		scope:matriarch = {
			if = {
				limit = {
					house ?= {
						any_house_member = {
							is_valid_matriarch_relative_for_consort_offer_trigger = yes
						}
					}
				}
				house = {
					every_house_member = {
						limit = {
							is_valid_matriarch_relative_for_consort_offer_trigger = yes
						}
						add_to_temporary_list = relative_list
					}
				}
			}
			else = {
				every_close_family_member = {
					limit = {
						is_valid_matriarch_relative_for_consort_offer_trigger = yes
					}
					add_to_temporary_list = relative_list
				}
			}
		}
		random_in_list = {
			list = relative_list
			weight = {
				base = 10
				modifier = {
					is_close_family_of = scope:matriarch
					add = 20
				}
				modifier = {
					house ?= {
						any_house_member = {
							this = scope:matriarch
						}
					}
					add = 10
				}
				modifier = {
					add = {
						value = "reverse_opinion(scope:matriarch)"
						multiply = 0.3
					}
				}
				modifier = {
					add = diplomacy
				}
				modifier = {
					add = learning
				}
				modifier = {
					add = intrigue
				}
				modifier = {
					hp_accepts_harems = yes
					add = 15
				}
			}
			save_scope_as = consort_relative
		}
	}

	option = { # Make them your concubine
		name = harem_politics.2107.a
		trigger = {
			allowed_more_concubines = yes
			scope:consort_relative = {
				is_valid_matriarch_relative_for_consort_offer_trigger = yes
			}
		}
		add_piety = medium_piety_gain
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 15
			}
		}
		scope:consort_relative = {
			if = {
				limit = {
					hp_accepts_harems = yes
				}
				add_opinion = {
					target = scope:matriarch
					modifier = grateful_opinion
					opinion = 15
				}
				add_opinion = {
					target = root
					modifier = grateful_opinion
					opinion = 15
				}
			}
			hidden_effect = {
				if = {
					limit = {
						NOT = { is_courtier_of = root }
					}
					root = {
						add_courtier = scope:consort_relative
					}
					return_to_court = yes
				}
			}
		}
		# Make them your concubine
		if = {
			limit = {
				is_character_interaction_valid = {
					recipient = scope:consort_relative
					interaction = ai_make_concubine_interaction
				}
			}
			run_interaction = {
				interaction = ai_make_concubine_interaction
				actor = root
				recipient = scope:consort_relative
				execute_threshold = accept
			}
		}
		stress_impact = {
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 10
            ai_value_modifier = {
				ai_rationality = -0.2
   				ai_honor = 0.2
   			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.4
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort_relative
				multiplier = 0.1
			}
			simple_attraction_modifier = {
				WHO = root
				TARGET = scope:consort_relative
				MAX_PERSONALITY = 15
				MAX_PHYSICAL = 15
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}

			modifier = { # To give power to their family
				scope:matriarch = {
					has_no_particular_noble_roots_trigger = yes
					is_close_family_of = scope:consort_relative
				}
				add = 15
			}
        }
    }
	option = { # Make them your spouse
		name = harem_politics.2107.b
		trigger = {
			allowed_more_spouses = yes
			allowed_more_concubines = no
			scope:consort_relative = {
				is_valid_matriarch_relative_for_consort_offer_trigger = yes
			}
		}
		add_piety = medium_piety_gain
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 15
			}
		}
		scope:consort_relative = {
			if = {
				limit = {
					OR = {
						AND = {
							hp_accepts_harems = yes
							root = { hp_accepts_harems = yes }
						}
						AND = {
							hp_accepts_harems = no
							root = { hp_accepts_harems = no }
						}
					}
				}
				add_opinion = {
					target = scope:matriarch
					modifier = grateful_opinion
					opinion = 15
				}
				add_opinion = {
					target = root
					modifier = grateful_opinion
					opinion = 15
				}
			}
			hidden_effect = {
				if = {
					limit = {
						NOT = { is_courtier_of = root }
					}
					root = {
						add_courtier = scope:consort_relative
					}
					return_to_court = yes
				}
				save_scope_as = secondary_recipient
			}
		}
		# Make them your spouse
		if = {
			limit = {
				is_female = yes
			}
			marry_matrilineal = scope:consort_relative
		}
		else = {
			marry = scope:consort_relative
		}
		
		#Marriage effects
		save_scope_as = actor
		save_scope_as = recipient
		save_scope_as = secondary_actor
		marriage_interaction_on_accept_effect = yes
		stress_impact = {
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 10
            ai_value_modifier = {
				ai_rationality = -0.2
   				ai_honor = 0.2
   			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.4
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort_relative
				multiplier = 0.1
			}
			simple_attraction_modifier = {
				WHO = root
				TARGET = scope:consort_relative
				MAX_PERSONALITY = 15
				MAX_PHYSICAL = 15
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = trusting
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = paranoid
			}

			modifier = { # To give power to their family
				scope:matriarch = {
					has_no_particular_noble_roots_trigger = yes
					is_close_family_of = scope:consort_relative
				}
				add = 15
			}
			modifier = {
				scope:consort_relative = {
					is_lowborn = yes
				}
				add = -25
			}
        }
    }
	# Don't talk about government matters
	option = {
        name = harem_events.2107.c
		add_piety = medium_piety_loss
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
		}
		stress_impact = {
			trusting = minor_stress_impact_gain
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			callous = minor_stress_impact_loss
		}
		ai_chance = {
            base = 15
            ai_value_modifier = {
				ai_rationality = 0.2
   				ai_honor = -0.2
   			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = -0.3
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort_relative
				multiplier = 0.05
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = trusting
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = forgiving
			}
			modifier = {	#Weight down for stress.
				add = -25
				has_trait = compassionate
			}
			modifier = {	#Weight down for stress.
				add = 25
				has_trait = callous
			}
			modifier = {	#Weight down for stress.
				add = 15
				has_trait = paranoid
			}
			modifier = {
				NOT = { is_attracted_to_gender_of = scope:consort_relative }
				add = 10
			}
        }
    }
	after = {
		add_character_flag = {
			flag = matriarch_offered_consort_flag
			years = 4
		}
	}
}
# They outright reject you
harem_events.2108 = {
	type = character_event
	title = harem_events.2108.t
	desc = harem_events.2108.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = shame
	}
	left_portrait = {
		character = scope:matriarch
		animation = disapproval
	}
	
	trigger = {
		exists = scope:matriarch
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		random = {
			chance = 50
			add_character_modifier = {
				modifier = unfilial_opinion_modifier
				years = 3
			}
		}
	}
	
	option = {
        name = harem_events.2108.a
		add_piety = minor_piety_loss
		add_opinion = {
			target = scope:matriarch
			modifier = insult_opinion
			opinion = -10
		}
        ai_chance = {
            base = 1
        }
    }
}
# A consort is visiting them
harem_events.2109 = {
	type = character_event
	title = harem_events.2109.t
	desc = harem_events.2109.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = scope:matriarch
		animation = personality_honorable
	}
	left_portrait = {
		character = scope:consort
		animation = serving_tray
	}
	
	trigger = {
		exists = scope:matriarch
		is_valid_for_filial_consort_visit_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		random_consort = {
			limit = {
				is_valid_filial_consort_trigger = yes
			}
			weight = {
				base = 10
				modifier = {
					house ?= {
						any_house_member = {
							this = scope:matriarch
						}
					}
					add = 20
				}
				modifier = {
					OR = {
						has_relation_friend = scope:matriarch
						has_relation_lover = scope:matriarch
					}
					add = 10
				}
				modifier = {
					OR = {
						has_relation_best_friend = scope:matriarch
						has_relation_soulmate = scope:matriarch
					}
					add = 20
				}
				modifier = {
					is_high_consort_trigger = {
						LIEGE = root
					}
					add = 10
				}
				modifier = {
					has_court_position = virtuous_consort_court_position
					add = 5
				}
				modifier = {
					root.primary_spouse ?= this
					add = 20
				}
				modifier = {
					harem_politics_unfavored_consort_trigger = yes
					add = 10
				}
				modifier = {
					harem_politics_forgotten_consort_trigger = yes
					add = 20
				}
				modifier = {
					add = {
						value = ai_honor
						multiply = 0.25
					}
				}
			}
			save_scope_as = consort
		}
		scope:consort = {
			add_piety = minor_piety_gain
			hidden_effect = {
				if = {
					limit = {
						NOR = {
							has_relation_friend = scope:matriarch
							has_relation_best_friend = scope:matriarch
						}
					}
					progress_towards_friend_effect = {
						REASON = friend_bonding_at_court
						CHARACTER = scope:matriarch
						TARGET_CHARACTER_2 = root
						OPINION = default_friend_opinion
					}
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = scope:consort
				modifier = pleased_opinion
				opinion = 10
			}
			add_character_modifier = {
				modifier = filial_care_modifier
				years = 2
			}
		}
	}
	
	# You agree
	option = {
        name = harem_events.2109.a
		add_piety = minor_piety_gain
		scope:consort = {
			calyver_favor_minor_gain_effect = yes
			add_opinion = {
				target = root
				modifier = thankful_opinion
				opinion = 5
			}
			hidden_effect = {
				add_opinion = {
					target = scope:matriarch
					modifier = thankful_opinion
					opinion = 10
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
		}
		stress_impact = {
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 20
			ai_value_modifier = {
				ai_honor = 0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value >= medium_positive_trait_compatibility
				}
				add = 20
			}
			modifier = {
				has_trait = trusting
				add = 15
			}
			modifier = {
				has_trait = zealous
				add = 15
			}
			modifier = {
				has_trait = compassionate
				add = 15
			}
			modifier = {
				has_trait = forgiving
				add = 15
			}
			modifier = {
				has_trait = paranoid
				add = -25
			}
			modifier = {
				primary_spouse ?= scope:consort
				add = 15
			}
			modifier = {
				scope:consort = {
					is_high_consort_trigger = {
						LIEGE = root
					}
				}
				add = 10
			}
			modifier = {
				OR = {
					has_relation_friend = scope:consort
					has_relation_lover = scope:consort
				}
				add = 10
			}
			modifier = {
				OR = {
					has_relation_best_friend = scope:consort
					has_relation_soulmate = scope:consort
				}
				add = 20
			}
			modifier = {
				scope:consort = {
					any_close_family_member = {
						OR = {
							is_powerful_vassal_of = root
							is_councillor_of = root
							house ?= {
								is_dominant_family = yes
								is_powerful_family = yes
							}
						}
					}
				}
				add = 15
			}
        }
    }
	# You dismiss the consort
	option = {
        name = harem_events.2109.b
		add_piety = minor_piety_loss
		scope:consort = {
			calyver_favor_minor_loss_effect = yes
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -5
			}
		}
		ai_chance = {
            base = 30
			ai_value_modifier = {
				ai_honor = -0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = -0.15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value < neutral_trait_compatibility
				}
				add = 10
			}
			modifier = {
				has_trait = trusting
				add = -15
			}
			modifier = {
				has_trait = zealous
				add = -15
			}
			modifier = {
				has_trait = compassionate
				add = -15
			}
			modifier = {
				has_trait = forgiving
				add = -15
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
        }
    }
	# You think the consort is suspicious
	option = {
        name = harem_events.2109.c
		add_piety = medium_piety_loss
		scope:consort = {
			calyver_favor_moderate_loss_effect = yes
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -15
			}
		}
		stress_impact = {
			trusting = minor_stress_impact_gain
			forgiving = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
		}
		ai_chance = {
            base = 25
			ai_value_modifier = {
				ai_honor = -0.2
				ai_compassion = -0.2
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = -0.25
			}
			modifier = {
				has_trait = trusting
				add = -25
			}
			modifier = {
				has_trait = zealous
				add = -15
			}
			modifier = {
				has_trait = compassionate
				add = -25
			}
			modifier = {
				has_trait = forgiving
				add = -25
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
        }
    }
	after = {
		add_character_flag = {
			flag = matriarch_filial_consort_flag
			years = 3
		}
	}
}
# They request you to promote a consort
harem_events.2110 = {
	type = character_event
	title = harem_events.2110.t
	desc = harem_events.2110.desc
	theme = family
	override_background = {
		reference = study
	}
	
	right_portrait = {
		character = root
		animation = personality_rational
	}
	left_portrait = {
		character = scope:matriarch
		animation = personality_honorable
	}
	lower_center_portrait = {
		character = scope:consort
	}
	
	trigger = {
		exists = scope:matriarch
		is_valid_for_consort_promotion_request_trigger = yes
	}
	on_trigger_fail = {
		on_trigger_fail_visit_matriarch_fallback_effect = yes
	}
	
	immediate = {
		random_consort = {
			limit = {
				is_valid_consort_for_promotion_request_trigger = yes
			}
			weight = {
				base = 10
				modifier = {
					house ?= {
						any_house_member = {
							this = scope:matriarch
						}
					}
					add = 20
				}
				modifier = {
					OR = {
						has_relation_friend = scope:matriarch
						has_relation_lover = scope:matriarch
					}
					add = 10
				}
				modifier = {
					OR = {
						has_relation_best_friend = scope:matriarch
						has_relation_soulmate = scope:matriarch
					}
					add = 20
				}
				modifier = {
					is_close_or_extended_family_of = scope:matriarch
					add = 10
				}
				modifier = {
					is_close_family_of = scope:matriarch
					add = 10
				}
				modifier = {
					add = 5
					any_child = {
						even_if_dead = yes
						is_child_of = root
						count >= 1
					}
				}
				modifier = {
					add = 5
					any_child = {
						even_if_dead = yes
						is_child_of = root
						count >= 2
					}
				}
				modifier = {
					add = 5
					any_child = {
						even_if_dead = yes
						is_child_of = root
						count >= 3
					}
				}
				modifier = {
					add = 10
					any_child = {
						is_child_of = root
						is_player_heir_of = root
					}
				}
				opinion_modifier = {
					who = scope:consort
					opinion_target = this
					min = 0
					max = 20
					multiplier = 0.20
				}
			}
			save_scope_as = consort
		}
		scope:consort = {
			hidden_effect = {
				if = {
					limit = {
						NOR = {
							has_relation_friend = scope:matriarch
							has_relation_best_friend = scope:matriarch
						}
					}
					progress_towards_friend_effect = {
						REASON = friend_bonding_at_court
						CHARACTER = scope:matriarch
						TARGET_CHARACTER_2 = root
						OPINION = default_friend_opinion
					}
				}
			}
		}
	}
	
	# You agree
	option = {
		trigger = {
			OR = {
				AND = {
					scope:consort = { is_concubine_of = root }
					allowed_more_spouses = yes
				}
				can_employ_char_to_high_consort_court_position_trigger = {
					CONSORT = scope:consort
				}
			}
		}
        name = harem_events.2110.a
		add_piety = minor_piety_gain
		if = {
			limit = {
				can_employ_char_to_high_consort_court_position_trigger = {
					CONSORT = scope:consort
				}
			}
			appoint_target_to_available_high_consort_court_position_effect = {
				LIEGE = root
				CONSORT = scope:consort
			}
		}
		else_if = {
			limit = {
				scope:consort = { is_concubine_of = root }
				allowed_more_spouses = yes
			}
			# Make them your spouse
			if = {
				limit = {
					is_female = yes
				}
				marry_matrilineal = scope:consort
			}
			else = {
				marry = scope:consort
			}
			scope:consort = {
				save_scope_as = secondary_recipient
			}
			#Marriage effects
			save_scope_as = actor
			save_scope_as = recipient
			save_scope_as = secondary_actor
			marriage_interaction_on_accept_effect = yes
		}
		scope:consort = {
			calyver_favor_minor_gain_effect = yes
			add_opinion = {
				target = root
				modifier = thankful_opinion
				opinion = 5
			}
			hidden_effect = {
				add_opinion = {
					target = scope:matriarch
					modifier = thankful_opinion
					opinion = 10
				}
			}
		}
		scope:matriarch = {
			add_opinion = {
				target = root
				modifier = pleased_opinion
				opinion = 10
			}
		}
		stress_impact = {
			paranoid = minor_stress_impact_gain
		}
        ai_chance = {
            base = 20
			ai_value_modifier = {
				ai_honor = 0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = 0.25
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = 0.15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value >= medium_positive_trait_compatibility
				}
				add = 20
			}
			modifier = {
				has_trait = trusting
				add = 15
			}
			modifier = {
				has_trait = zealous
				add = 15
			}
			modifier = {
				has_trait = compassionate
				add = 15
			}
			modifier = {
				has_trait = forgiving
				add = 15
			}
			modifier = {
				has_trait = paranoid
				add = -25
			}
			modifier = {
				scope:consort = {
					is_high_consort_trigger = {
						LIEGE = root
					}
				}
				add = 10
			}
			modifier = {
				OR = {
					has_relation_friend = scope:consort
					has_relation_lover = scope:consort
				}
				add = 10
			}
			modifier = {
				OR = {
					has_relation_best_friend = scope:consort
					has_relation_soulmate = scope:consort
				}
				add = 20
			}
			modifier = {
				scope:consort = {
					any_close_family_member = {
						OR = {
							is_powerful_vassal_of = root
							is_councillor_of = root
							house ?= {
								is_dominant_family = yes
								is_powerful_family = yes
							}
						}
					}
				}
				add = 15
			}
        }
    }
	# You dismiss the consort
	option = {
        name = harem_events.2110.b
		add_piety = minor_piety_loss
		scope:consort = {
			calyver_favor_minor_loss_effect = yes
			add_opinion = {
				target = root
				modifier = disappointed_opinion
				opinion = -5
			}
		}
		ai_chance = {
            base = 20
			ai_value_modifier = {
				ai_honor = -0.15
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:matriarch
				multiplier = -0.25
			}
			opinion_modifier = {
				who = root
				opinion_target = scope:consort
				multiplier = -0.15
			}
			modifier = {
				trait_compatibility = {
					target = scope:consort
					value < neutral_trait_compatibility
				}
				add = 10
			}
			modifier = {
				has_trait = trusting
				add = -15
			}
			modifier = {
				has_trait = zealous
				add = -15
			}
			modifier = {
				has_trait = compassionate
				add = -15
			}
			modifier = {
				has_trait = forgiving
				add = -15
			}
			modifier = {
				has_trait = paranoid
				add = 15
			}
        }
    }

	after = {
		add_character_flag = {
			flag = matriarch_consort_promotion_flag
			years = 3
		}
	}
}