###################################
#
# Better Looking Garbs
#
# Events to alter ethnicity on newly created characters.
#
###################################

namespace = blg

# Ethnic diversity in random courtier spawns.
character_event = {
	id = blg.1
	hide_window = yes
	is_triggered_only = yes

	ai = yes
	min_age = 1
	trigger = {
		trait = blgspawn
	}

	### Post Processing.
	after = {
		remove_trait = blgspawn

		blg_character_processing = yes
	}
}

# Mixed ethnicity for children.
# Called from on_birth
character_event = {
	id = blg.2
	hide_window = yes
	is_triggered_only = yes

	immediate = {
		remove_trait = blgspawn

		if = {
			limit = { blg_ethnicity_static = yes }
			add_trait = blgcaoff
		}
	}
}

# Check when new society quests start.
character_event = {
	id = blg.3
	hide_window = yes
	is_triggered_only = yes

	is_in_society = yes
	trigger = {
		NOT = { trait = blgcaoff }
	}

	immediate = {
		if = {
			limit = {
				has_any_quest = yes
			}
			add_trait = blgquesting
		}
		else_if = {
			limit = {
				NOT = { has_character_modifier = quest_cooldown_timer }
			}
			repeat_event = { id = blg.3 days = 7}
		}
	}
}

# Installatian check event.
character_event = {
	id = blg.4
	title = BETTER_LOOKING_GARBS
	desc = blg.4.desc

	picture = GFX_evt_church_council
	border = GFX_event_normal_frame_intrigue
	hide_from = yes

	is_triggered_only = yes

	ai = no
	trigger = {
		OR = {
			has_dlc = "The Sword of Islam"
			has_dlc = "Legacy of Rome"
			has_dlc = "Sunset Invasion"
			has_dlc = "The Republic"
			has_dlc = "The Old Gods"
			has_dlc = "Sons of Abraham"
			has_dlc = "Rajas of India"
			has_dlc = "Charlemagne"
			has_dlc = "Way of Life"
			has_dlc = "Horse Lords"
			has_dlc = "Conclave"
			has_dlc = "Reapers"
			has_dlc = "Mystics"
			has_dlc = "Jade Dragon"
			has_dlc = "Holy Fury"
		}
	}

	option = {
		name = blg.4.opt
	}
}

# Initial ethnic diversity.
character_event = {
	id = blg.5
	hide_window = yes
	is_triggered_only = yes

	trigger = {
		OR = {
			is_multiplayer_host_character = yes
			is_local_human_observer = yes
		}
	}

	option = {
		any_character = { character_event = { id = blg.1 } }
	}
}

# Replacement for the original event since Paradox fucked up on the father scope.
# Add additional freckled graphical cultures.
character_event = {
	id = HFP.30030
	hide_window = yes
	is_triggered_only = yes

	trigger = {
		NOR = {
			trait = freckles
			trait = freckles_2
			trait = freckles_3
			trait = freckles_4
			trait = freckles_5
		}
		OR = {
			blg_freckles_common = yes
			mother_even_if_dead = {
				OR = {
					trait = freckles_3
					trait = freckles_2
					trait = freckles
					trait = freckles_4
					trait = freckles_5
					mother_even_if_dead = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
					true_father_even_if_dead = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
					blg_freckles_common = yes
				}
			}
			trigger_if = {
				limit = { is_father_real_father = yes }
				father_even_if_dead = {
					OR = {
						trait = freckles_3
						trait = freckles_2
						trait = freckles
						trait = freckles_4
						trait = freckles_5
						mother_even_if_dead = {
							OR = {
								trait = freckles_3
								trait = freckles_2
								trait = freckles
								trait = freckles_4
								trait = freckles_5
							}
						}
						true_father_even_if_dead = {
							OR = {
								trait = freckles_3
								trait = freckles_2
								trait = freckles
								trait = freckles_4
								trait = freckles_5
							}
						}
						blg_freckles_common = yes
					}
				}
			}
			trigger_else = {
				real_father_even_if_dead = {
					OR = {
						trait = freckles_3
						trait = freckles_2
						trait = freckles
						trait = freckles_4
						trait = freckles_5
						mother_even_if_dead = {
							OR = {
								trait = freckles_3
								trait = freckles_2
								trait = freckles
								trait = freckles_4
								trait = freckles_5
							}
						}
						true_father_even_if_dead = {
							OR = {
								trait = freckles_3
								trait = freckles_2
								trait = freckles
								trait = freckles_4
								trait = freckles_5
							}
						}
						blg_freckles_common = yes
					}
				}
			}
		}
	}

	immediate = {
		if = {
			limit = { is_father_real_father = yes }
			father_even_if_dead = { save_event_target_as = father }
		}
		else = {
			real_father_even_if_dead = { save_event_target_as = father }
		}
		event_target:father = {
			if = {
				limit = { is_father_real_father = yes }
				father_even_if_dead = { save_event_target_as = paternalgrandfather }
			}
			else = {
				real_father_even_if_dead = { save_event_target_as = paternalgrandfather }
			}
		}
		mother_even_if_dead = {
			if = {
				limit = { is_father_real_father = yes }
				father_even_if_dead = { save_event_target_as = maternalgrandfather }
			}
			else = {
				real_father_even_if_dead = { save_event_target_as = maternalgrandfather }
			}
		}

		random_list = {
			2 = {
				add_trait = freckles_5
				modifier = {
					factor = 5
					mother_even_if_dead = { trait = freckles_5 }
				}
				modifier = {
					factor = 5
					event_target:father = { trait = freckles_5 }
				}
				#Grandparents
				modifier = {
					factor = 4
					event_target:paternalgrandfather = { trait = freckles_5 }
				}
				modifier = {
					factor = 4
					event_target:father = { mother_even_if_dead = { trait = freckles_5 } }
				}
				modifier = {
					factor = 4
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles_5 } }
				}
				modifier = {
					factor = 4
					event_target:maternalgrandfather = { trait = freckles_5 }
				}

				modifier = {
					factor = 3
					mother_even_if_dead = { trait = freckles_4 }
				}
				modifier = {
					factor = 3
					event_target:father = { trait = freckles_4 }
				}
				#Grandparents
				modifier = {
					factor = 2
					event_target:paternalgrandfather = { trait = freckles_4 }
				}
				modifier = {
					factor = 2
					event_target:father = { mother_even_if_dead = { trait = freckles_4 } }
				}
				modifier = {
					factor = 2
					event_target:maternalgrandfather = { trait = freckles_4 }
				}
				modifier = {
					factor = 2
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles_4 } }
				}
				#Multiplier bonus
				modifier = {
					factor = 2
					event_target:father = { trait = freckles_4 }
					mother_even_if_dead = { trait = freckles_4 }
				}
				#The thickest versions should only appear if a parent already has the freckles gene, not appear out of nowhere.
				trigger = {
					mother_even_if_dead = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
					event_target:father = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
				}
			}
			6 = {
				add_trait = freckles_4
				modifier = {
					factor = 4
					mother_even_if_dead = { trait = freckles_4 }
				}
				modifier = {
					factor = 4
					event_target:father = { trait = freckles_4 }
				}
				#Grandparents
				modifier = {
					factor = 3
					event_target:paternalgrandfather = { trait = freckles_4 }
				}
				modifier = {
					factor = 3
					event_target:father = { mother_even_if_dead = { trait = freckles_4 } }
				}
				modifier = {
					factor = 3
					event_target:maternalgrandfather = { trait = freckles_4 }
				}
				modifier = {
					factor = 3
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles_4 } }
				}

				modifier = {
					factor = 2
					mother_even_if_dead = { trait = freckles }
				}
				modifier = {
					factor = 2
					event_target:father = { trait = freckles }
				}
				#Grandparents
				modifier = {
					factor = 1.5
					event_target:paternalgrandfather = { trait = freckles }
				}
				modifier = {
					factor = 1.5
					event_target:father = { mother_even_if_dead = { trait = freckles } }
				}
				modifier = {
					factor = 1.5
					event_target:maternalgrandfather = { trait = freckles }
				}
				modifier = {
					factor = 1.5
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles } }
				}
				#Multiplier bonus
				modifier = {
					factor = 2
					event_target:father = { trait = freckles }
					mother_even_if_dead = { trait = freckles }
				}
				#The thickest versions should only appear if a parent already has the freckles gene, not appear out of nowhere.
				trigger = {
					mother_even_if_dead = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
					event_target:father = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
				}
			}
			7 = {
				add_trait = freckles
				modifier = {
					factor = 4
					mother_even_if_dead = { trait = freckles }
				}
				modifier = {
					factor = 4
					event_target:father = { trait = freckles }
				}
				#Grandparents
				modifier = {
					factor = 3
					event_target:paternalgrandfather = { trait = freckles }
				}
				modifier = {
					factor = 3
					event_target:father = { mother_even_if_dead = { trait = freckles } }
				}
				modifier = {
					factor = 3
					event_target:maternalgrandfather = { trait = freckles }
				}
				modifier = {
					factor = 3
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles } }
				}

				modifier = {
					factor = 2
					mother_even_if_dead = { trait = freckles_2 }
				}
				modifier = {
					factor = 2
					event_target:father = { trait = freckles_2 }
				}
				#Grandparents
				modifier = {
					factor = 1.5
					event_target:paternalgrandfather = { trait = freckles_2 }
				}
				modifier = {
					factor = 1.5
					event_target:father = { mother_even_if_dead = { trait = freckles_2 } }
				}
				modifier = {
					factor = 1.5
					event_target:maternalgrandfather = { trait = freckles_2 }
				}
				modifier = {
					factor = 1.5
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles_2 } }
				}
				#Multiplier bonus
				modifier = {
					factor = 2
					event_target:father = { trait = freckles_2 }
					mother_even_if_dead = { trait = freckles_2 }
				}
				#The thickest versions should only appear if a parent already has the freckles gene, not appear out of nowhere.
				trigger = {
					mother_even_if_dead = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
					event_target:father = {
						OR = {
							trait = freckles_3
							trait = freckles_2
							trait = freckles
							trait = freckles_4
							trait = freckles_5
						}
					}
				}
			}
			7 = {
				add_trait = freckles_2
				modifier = {
					factor = 4
					mother_even_if_dead = { trait = freckles_2 }
				}
				modifier = {
					factor = 4
					event_target:father = { trait = freckles_2 }
				}
				#Grandparents
				modifier = {
					factor = 2
					event_target:paternalgrandfather = { trait = freckles_2 }
				}
				modifier = {
					factor = 2
					event_target:father = { mother_even_if_dead = { trait = freckles_2 } }
				}
				modifier = {
					factor = 2
					event_target:maternalgrandfather = { trait = freckles_2 }
				}
				modifier = {
					factor = 2
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles_2 } }
				}

				modifier = {
					factor = 2
					mother_even_if_dead = { trait = freckles_3 }
				}
				modifier = {
					factor = 2
					event_target:father = { trait = freckles_3 }
				}
				#Grandparents
				modifier = {
					factor = 1.5
					event_target:paternalgrandfather = { trait = freckles_3 }
				}
				modifier = {
					factor = 1.5
					event_target:father = { mother_even_if_dead = { trait = freckles_3 } }
				}
				modifier = {
					factor = 1.5
					event_target:maternalgrandfather = { trait = freckles_3 }
				}
				modifier = {
					factor = 1.5
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles_3 } }
				}
				#Multiplier bonus
				modifier = {
					factor = 2
					event_target:father = { trait = freckles_3 }
					mother_even_if_dead = { trait = freckles_3 }
				}
			}
			10 = {
				add_trait = freckles_3
				modifier = {
					factor = 2
					mother_even_if_dead = { trait = freckles_3 }
				}
				modifier = {
					factor = 2
					event_target:father = { trait = freckles_3 }
				}
				#Grandparents
				modifier = {
					factor = 1.5
					event_target:paternalgrandfather = { trait = freckles_3 }
				}
				modifier = {
					factor = 1.5
					event_target:father = { mother_even_if_dead = { trait = freckles_3 } }
				}
				modifier = {
					factor = 1.5
					event_target:maternalgrandfather = { trait = freckles_3 }
				}
				modifier = {
					factor = 1.5
					mother_even_if_dead = { mother_even_if_dead = { trait = freckles_3 } }
				}
			}
			80 = { } #Nothing
		}
	}
}
