﻿rtd_effect_remove_coexistence_modifiers = { #scope:the_reincarnated
	if = {
		limit = {
			has_character_modifier = rtd_modifier_coexistence_2
		}
		remove_character_modifier = rtd_modifier_coexistence_2
	}
	else_if = {
		limit = {
			has_character_modifier = rtd_modifier_coexistence_3
		}
		remove_character_modifier = rtd_modifier_coexistence_3
	}
	else_if = {
		limit = {
			has_character_modifier = rtd_modifier_coexistence_4
		}
		remove_character_modifier = rtd_modifier_coexistence_4
	}
	else_if = {
		limit = {
			has_character_modifier = rtd_modifier_coexistence_5
		}
		remove_character_modifier = rtd_modifier_coexistence_5
	}
}

rtd_effect_refresh_coexistence_modifiers = { #scope:the_reincarnated
	rtd_effect_remove_coexistence_modifiers	= yes
	if = {
		limit = {
			rtd_value_num_of_alter_egos = 2
		}
		add_character_modifier = rtd_modifier_coexistence_2
	}
	else_if = {
		limit = {
			rtd_value_num_of_alter_egos = 3
		}
		add_character_modifier = rtd_modifier_coexistence_3
	}
	else_if = {
		limit = {
			rtd_value_num_of_alter_egos = 4
		}
		add_character_modifier = rtd_modifier_coexistence_4
	}
	else_if = {
		limit = {
			rtd_value_num_of_alter_egos >= 5
		}
		add_character_modifier = rtd_modifier_coexistence_5
	}
}

rtd_effect_add_to_reincarnated_list = { #scope:the_reincarnated
	save_temporary_scope_as = rtd_effect_scope_to_be_added
	add_to_global_variable_list = {
		name = living_reincarnated
		target = scope:rtd_effect_scope_to_be_added
	}
}

rtd_effect_remove_from_reincarnated_list = { #scope:the_reincarnated
	save_temporary_scope_as = rtd_effect_scope_to_be_removed
	remove_list_global_variable = {
		name = living_reincarnated
		target = scope:rtd_effect_scope_to_be_removed
	}
}

rtd_effect_refresh_coexistence_from_reincarnated_list = { #scope:the_reincarnated
	if = {
		limit = {
			exists = var:reincarnation_of
		}
		var:reincarnation_of = {
			save_temporary_scope_as = rtd_effect_scope_to_be_checked
		}
		every_in_global_list = {
			variable = living_reincarnated
			limit = {
				exists = var:reincarnation_of
				var:reincarnation_of = scope:rtd_effect_scope_to_be_checked
			}
			rtd_effect_refresh_coexistence_modifiers = yes
		}
	}
}

rtd_effect_add_skill_bonus = { #scope:the_reincarnated
	if = {
		limit = { has_character_flag = rtd_template_worst }
		add_diplomacy_skill = { rtd_min_template_skill_bonus_worst rtd_max_template_skill_bonus_worst }
		add_martial_skill = { rtd_min_template_skill_bonus_worst rtd_max_template_skill_bonus_worst }
		add_stewardship_skill = { rtd_min_template_skill_bonus_worst rtd_max_template_skill_bonus_worst }
		add_intrigue_skill = { rtd_min_template_skill_bonus_worst rtd_max_template_skill_bonus_worst }
		add_learning_skill = { rtd_min_template_skill_bonus_worst rtd_max_template_skill_bonus_worst }
		add_prowess_skill = { rtd_min_template_skill_bonus_worst rtd_max_template_skill_bonus_worst }
		remove_character_flag = rtd_template_worst
	}
	else_if = {
		limit = { has_character_flag = rtd_template_bad }
		add_diplomacy_skill = { rtd_min_template_skill_bonus_bad rtd_max_template_skill_bonus_bad }
		add_martial_skill = { rtd_min_template_skill_bonus_bad rtd_max_template_skill_bonus_bad }
		add_stewardship_skill = { rtd_min_template_skill_bonus_bad rtd_max_template_skill_bonus_bad }
		add_intrigue_skill = { rtd_min_template_skill_bonus_bad rtd_max_template_skill_bonus_bad }
		add_learning_skill = { rtd_min_template_skill_bonus_bad rtd_max_template_skill_bonus_bad }
		add_prowess_skill = { rtd_min_template_skill_bonus_bad rtd_max_template_skill_bonus_bad }
		remove_character_flag = rtd_template_bad
	}
	else_if = {
		limit = { has_character_flag = rtd_template_plain }
		add_diplomacy_skill = { rtd_min_template_skill_bonus_plain rtd_max_template_skill_bonus_plain }
		add_martial_skill = { rtd_min_template_skill_bonus_plain rtd_max_template_skill_bonus_plain }
		add_stewardship_skill = { rtd_min_template_skill_bonus_plain rtd_max_template_skill_bonus_plain }
		add_intrigue_skill = { rtd_min_template_skill_bonus_plain rtd_max_template_skill_bonus_plain }
		add_learning_skill = { rtd_min_template_skill_bonus_plain rtd_max_template_skill_bonus_plain }
		add_prowess_skill = { rtd_min_template_skill_bonus_plain rtd_max_template_skill_bonus_plain }
		remove_character_flag = rtd_template_plain
	}
	else_if = {
		limit = { has_character_flag = rtd_template_good }
		add_diplomacy_skill = { rtd_min_template_skill_bonus_good rtd_max_template_skill_bonus_good }
		add_martial_skill = { rtd_min_template_skill_bonus_good rtd_max_template_skill_bonus_good }
		add_stewardship_skill = { rtd_min_template_skill_bonus_good rtd_max_template_skill_bonus_good }
		add_intrigue_skill = { rtd_min_template_skill_bonus_good rtd_max_template_skill_bonus_good }
		add_learning_skill = { rtd_min_template_skill_bonus_good rtd_max_template_skill_bonus_good }
		add_prowess_skill = { rtd_min_template_skill_bonus_good rtd_max_template_skill_bonus_good }
		remove_character_flag = rtd_template_good
	}
	else_if = {
		limit = { has_character_flag = rtd_template_best }
		add_diplomacy_skill = { rtd_min_template_skill_bonus_best rtd_max_template_skill_bonus_best }
		add_martial_skill = { rtd_min_template_skill_bonus_best rtd_max_template_skill_bonus_best }
		add_stewardship_skill = { rtd_min_template_skill_bonus_best rtd_max_template_skill_bonus_best }
		add_intrigue_skill = { rtd_min_template_skill_bonus_best rtd_max_template_skill_bonus_best }
		add_learning_skill = { rtd_min_template_skill_bonus_best rtd_max_template_skill_bonus_best }
		add_prowess_skill = { rtd_min_template_skill_bonus_best rtd_max_template_skill_bonus_best }
		remove_character_flag = rtd_template_best
	}
	else_if = {
		limit = { has_character_flag = rtd_template_random }
		add_diplomacy_skill = { rtd_min_template_skill_bonus_random rtd_max_template_skill_bonus_random }
		add_martial_skill = { rtd_min_template_skill_bonus_random rtd_max_template_skill_bonus_random }
		add_stewardship_skill = { rtd_min_template_skill_bonus_random rtd_max_template_skill_bonus_random }
		add_intrigue_skill = { rtd_min_template_skill_bonus_random rtd_max_template_skill_bonus_random }
		add_learning_skill = { rtd_min_template_skill_bonus_random rtd_max_template_skill_bonus_random }
		add_prowess_skill = { rtd_min_template_skill_bonus_random rtd_max_template_skill_bonus_random }
		remove_character_flag = rtd_template_random
	}
}

rtd_effect_after_creation = {
	if = {
		limit = {
			age > 0
		}
		set_variable = {
			name = reincarnation_of
			value = scope:gui_character
		}
		copy_traits = scope:gui_character
		add_trait = reincarnation
		rtd_effect_add_skill_bonus = yes

		if = {
			limit = {
				NOT = { has_game_rule = rtd_rule_coexistence_limit_free }
			}
			rtd_effect_add_to_reincarnated_list = yes
			rtd_effect_refresh_coexistence_from_reincarnated_list = yes
		}
	}
	else = {
		set_variable = {
			days = 6205 #Must last until child's 16th birthday
			name = rtd_reincarnation_of
			value = scope:gui_character
		}

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

		trigger_event = {
			id = rtd_child_personality.9900
			years = 16
			delayed = yes
		}
	}
	if = {
		limit = {
		scope:gui_character = {
			type = female
			}
		}
		set_mother = scope:gui_character
		}
	if = {
		limit = {
		scope:gui_character = {
			type = male
			}
		}
		set_father = scope:gui_character
		}
}