﻿#Events for children developing personality traits

namespace = rtd_child_personality

##############################
# REINCARNATION, by Mathilda Bjarnehed
##############################

scripted_effect rtd_reincarnation_pick_trait_effect = {
	if = {
		limit = {
			scope:rtd_event_scope_ancestor = { has_trait = $TRAIT$ }
		}
		add_trait = $TRAIT$
	}
}

rtd_child_personality.9900 = { #by Mathilda Bjarnehed
	type = character_event
	title = child_personality.9900.t
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					OR = {
						has_character_flag = rtd_template_worst
						has_character_flag = rtd_template_bad
						has_character_flag = rtd_template_plain
						has_character_flag = rtd_template_random
					}
				}
				desc = child_personality.9900.start.sinful.desc
			}
			desc = child_personality.9900.start.desc
		}
		first_valid = {
			triggered_desc = {
				trigger = {
					mother ?= {
						is_alive = yes
					}
				}
				desc = child_personality.9900.mother.desc
			}
			triggered_desc = {
				trigger = {
					father ?= {
						is_alive = yes
					}
				}
				desc = child_personality.9900.father.desc
			}
			desc = child_personality.9900.nurse.desc
		}
		first_valid = {
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_worst
				}
				desc = child_personality.9900.sinful.calm.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_bad
				}
				desc = child_personality.9900.sinful.greedy.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_plain
				}
				desc = child_personality.9900.sinful.temperate.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_good
				}
				desc = child_personality.9900.shrewd.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_best
				}
				desc = child_personality.9900.ambitious.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_random
				}
				desc = child_personality.9900.lunatic.desc
			}
		}
		desc = child_personality.9900.end.desc
		triggered_desc = {
			trigger = {
				OR = {
					has_character_flag = rtd_template_worst
					has_character_flag = rtd_template_bad
					has_character_flag = rtd_template_plain
					has_character_flag = rtd_template_random
				}
			}
			desc = child_personality.9900.sinful.postscript.desc
		}
	}
	theme = faith
	left_portrait = root
	right_portrait = scope:rtd_event_scope_ancestor
	
	trigger = {
		exists = var:rtd_reincarnation_of
	}

	immediate = {
		play_music_cue = "mx_cue_faith_conversion"
		save_scope_as = rtd_event_scope_child

		#Resave the variable as permanent
		var:rtd_reincarnation_of = {
			save_scope_as = rtd_event_scope_ancestor
		}
		set_variable = {
			name = reincarnation_of
			value = scope:rtd_event_scope_ancestor
		}
	}

	option = {
		name = {
			text = {
				first_valid = {
					triggered_desc = {
						trigger = {
							OR = {
								has_character_flag = rtd_template_worst
								has_character_flag = rtd_template_bad
								has_character_flag = rtd_template_random
							}
						}
						desc = child_personality.9900.a.dull
					}
					triggered_desc = {
						trigger = {
							has_character_flag = rtd_template_plain
						}
						desc = child_personality.9900.a.sinful
					}
					desc = child_personality.9900.a
				}
			}
		}
		
		add_trait = reincarnation
		remove_variable = rtd_reincarnation_of
		rtd_effect_add_skill_bonus = yes

		rtd_reincarnation_pick_trait_effect = { TRAIT = depressed_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = depressed_genetic }
		rtd_reincarnation_pick_trait_effect = { TRAIT = lunatic_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = lunatic_genetic }
		rtd_reincarnation_pick_trait_effect = { TRAIT = possessed_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = possessed_genetic }
		rtd_reincarnation_pick_trait_effect = { TRAIT = beauty_bad_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = beauty_bad_2 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = beauty_bad_3 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = beauty_good_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = beauty_good_2 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = beauty_good_3 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = intellect_bad_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = intellect_bad_2 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = intellect_bad_3 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = intellect_good_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = intellect_good_2 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = intellect_good_3 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = physique_bad_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = physique_bad_2 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = physique_bad_3 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = physique_good_1 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = physique_good_2 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = physique_good_3 }
		rtd_reincarnation_pick_trait_effect = { TRAIT = pure_blooded }
		rtd_reincarnation_pick_trait_effect = { TRAIT = fecund }
		rtd_reincarnation_pick_trait_effect = { TRAIT = strong }
		rtd_reincarnation_pick_trait_effect = { TRAIT = shrewd }
		rtd_reincarnation_pick_trait_effect = { TRAIT = clubfooted }
		rtd_reincarnation_pick_trait_effect = { TRAIT = hunchbacked }
		rtd_reincarnation_pick_trait_effect = { TRAIT = lisping }
		rtd_reincarnation_pick_trait_effect = { TRAIT = stuttering }
		rtd_reincarnation_pick_trait_effect = { TRAIT = dwarf }
		rtd_reincarnation_pick_trait_effect = { TRAIT = giant }
		rtd_reincarnation_pick_trait_effect = { TRAIT = inbred }
		rtd_reincarnation_pick_trait_effect = { TRAIT = weak }
		rtd_reincarnation_pick_trait_effect = { TRAIT = dull }
		rtd_reincarnation_pick_trait_effect = { TRAIT = spindly }
		rtd_reincarnation_pick_trait_effect = { TRAIT = scaly }
		rtd_reincarnation_pick_trait_effect = { TRAIT = albino }
		rtd_reincarnation_pick_trait_effect = { TRAIT = wheezing }
		rtd_reincarnation_pick_trait_effect = { TRAIT = bleeder }
		rtd_reincarnation_pick_trait_effect = { TRAIT = infertile }

		rtd_reincarnation_pick_trait_effect = { TRAIT = sayyid }
		rtd_reincarnation_pick_trait_effect = { TRAIT = saoshyant }
		rtd_reincarnation_pick_trait_effect = { TRAIT = saoshyant_descendant }
		rtd_reincarnation_pick_trait_effect = { TRAIT = savior }
		rtd_reincarnation_pick_trait_effect = { TRAIT = divine_blood }
		rtd_reincarnation_pick_trait_effect = { TRAIT = blood_of_prophet }
		rtd_reincarnation_pick_trait_effect = { TRAIT = faith_warrior }
		rtd_reincarnation_pick_trait_effect = { TRAIT = saint }

		rtd_reincarnation_pick_trait_effect = { TRAIT = berserker }
		rtd_reincarnation_pick_trait_effect = { TRAIT = shieldmaiden }
		rtd_reincarnation_pick_trait_effect = { TRAIT = poet }
		rtd_reincarnation_pick_trait_effect = { TRAIT = born_in_the_purple }
		rtd_reincarnation_pick_trait_effect = { TRAIT = augustus }
		rtd_reincarnation_pick_trait_effect = { TRAIT = viking }
		rtd_reincarnation_pick_trait_effect = { TRAIT = adventurer }
		rtd_reincarnation_pick_trait_effect = { TRAIT = heresiarch }
		rtd_reincarnation_pick_trait_effect = { TRAIT = peasant_leader }
		rtd_reincarnation_pick_trait_effect = { TRAIT = witch }
		rtd_reincarnation_pick_trait_effect = { TRAIT = crusader_king }
		rtd_reincarnation_pick_trait_effect = { TRAIT = chakravarti }
		rtd_reincarnation_pick_trait_effect = { TRAIT = greatest_of_khans }
		rtd_reincarnation_pick_trait_effect = { TRAIT = paragon }
		rtd_reincarnation_pick_trait_effect = { TRAIT = consecrated_blood }

		if = {
			limit = {
				NOT = { has_game_rule = rtd_rule_coexistence_limit_free }
			}
			rtd_effect_refresh_coexistence_from_reincarnated_list = yes
		}

		if = {
			limit = {
				exists = dynasty
				dynasty.dynast = { faith = root.faith }
			}
			dynasty = {
				add_dynasty_prestige = minor_dynasty_prestige_gain
			}
		}

		#Notifications
		every_close_family_member = {
			limit = {
				is_ruler = yes
				OR = {
					is_parent_of = root
					is_grandparent_of = root
					is_great_grandparent_of = root
					is_sibling_of = root
				}
			}
			trigger_event = rtd_child_personality.9901
		}
		every_relation = {
			type = guardian
			limit = {
				is_ruler = yes
				NOR = {
					is_parent_of = root
					is_grandparent_of = root
					is_great_grandparent_of = root
					is_sibling_of = root
				}
			}
			trigger_event = rtd_child_personality.9901
		}
	}
}

#Notification
rtd_child_personality.9901 = { #by Mathilda Bjarnehed
	type = character_event
	title = child_personality.9901.t
	desc = {
		desc = child_personality.9901.start.desc
		first_valid = {
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_worst
				}
				desc = child_personality.9900.sinful.calm.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_bad
				}
				desc = child_personality.9900.sinful.greedy.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_plain
				}
				desc = child_personality.9900.sinful.temperate.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_good
				}
				desc = child_personality.9900.shrewd.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_best
				}
				desc = child_personality.9900.ambitious.desc
			}
			triggered_desc = {
				trigger = {
					has_character_flag = rtd_template_random
				}
				desc = child_personality.9900.lunatic.desc
			}
		}
		desc = child_personality.9901.end.desc
	}
	theme = faith
	left_portrait = scope:rtd_event_scope_child
	right_portrait = scope:rtd_event_scope_ancestor

	immediate = {
		play_music_cue = "mx_cue_faith_conversion"
	}

	option = {
		name = child_personality.9901.a

			show_as_tooltip = {
				scope:rtd_event_scope_child = {
					if = {
					limit = {
						exists = dynasty
						exists = root.dynasty
						dynasty = root.dynasty
						dynasty.dynast = { faith = root.faith }
					}
					dynasty = {
						add_dynasty_prestige = minor_dynasty_prestige_gain
					}
				}
			}
		}
	}
}	
