﻿### Character Editor title and authority helpers ###

DI_ce_apply_to_edit_targets_effect = {
    random_owned_story = {
        limit = {
            story_type = DI_misc_variables_story
        }
        save_scope_as = DI_story
    }

    if = {
        limit = {
            scope:DI_story = {
                has_variable = DI_pinned_char_var
            }
        }
        every_living_character = {
            limit = {
                has_character_flag = pinned_for_edit
            }
            $TARGET_EFFECT$ = yes
        }
    }
    else = {
        $TARGET_EFFECT$ = yes
    }
}

DI_ce_apply_to_pinned_characters_effect = {
    every_living_character = {
        limit = {
            has_character_flag = pinned_for_edit
        }
        $TARGET_EFFECT$ = yes
    }
}

DI_ce_take_realm_titles_target_effect = {
    save_scope_as = DI_ce_title_recipient

    top_liege ?= {
        every_sub_realm_title = {
            limit = {
                tier >= tier_county
                is_noble_family_title = no
                is_landless_type_title = no
                NOT = {
                    holder = scope:DI_ce_title_recipient
                }
            }
            scope:DI_ce_title_recipient = {
                DI_get_title_effect = { TITLE = prev }
            }
        }
    }
}

DI_ce_take_sub_realm_titles_target_effect = {
    save_scope_as = DI_ce_title_recipient

    every_sub_realm_title = {
        limit = {
            tier >= tier_county
            is_noble_family_title = no
            is_landless_type_title = no
            NOT = {
                holder = scope:DI_ce_title_recipient
            }
        }
        scope:DI_ce_title_recipient = {
            DI_get_title_effect = { TITLE = prev }
        }
    }
}

DI_ce_take_vassal_titles_target_effect = {
    save_scope_as = DI_ce_title_recipient

    every_vassal_or_below = {
        every_held_title = {
            limit = {
                tier >= tier_county
                is_noble_family_title = no
                is_landless_type_title = no
                NOT = {
                    holder = scope:DI_ce_title_recipient
                }
            }
            scope:DI_ce_title_recipient = {
                DI_get_title_effect = { TITLE = prev }
            }
        }
    }
}

DI_ce_take_personal_titles_target_effect = {
    every_held_title = {
        limit = {
            tier >= tier_county
            is_noble_family_title = no
            is_landless_type_title = no
            NOT = {
                holder = scope:DI_ce_title_recipient
            }
        }
        scope:DI_ce_title_recipient = {
            DI_get_title_effect = { TITLE = prev }
        }
    }
}

DI_ce_take_primary_title_target_effect = {
    primary_title ?= {
        if = {
            limit = {
                tier >= tier_county
                is_noble_family_title = no
                is_landless_type_title = no
                NOT = {
                    holder = scope:DI_ce_title_recipient
                }
            }
            scope:DI_ce_title_recipient = {
                DI_get_title_effect = { TITLE = prev }
            }
        }
    }
}

DI_ce_set_crown_authority_target_effect = {
    if = {
        limit = {
            OR = {
                has_realm_law = crown_authority_0
                has_realm_law = crown_authority_1
                has_realm_law = crown_authority_2
                has_realm_law = crown_authority_3
            }
            NOT = {
                has_realm_law = $LAW$
            }
        }
        add_realm_law = $LAW$
    }
}

DI_ce_set_crown_authority_1_target_effect = {
    DI_ce_set_crown_authority_target_effect = {
        LAW = crown_authority_0
    }
}

DI_ce_set_crown_authority_2_target_effect = {
    DI_ce_set_crown_authority_target_effect = {
        LAW = crown_authority_1
    }
}

DI_ce_set_crown_authority_3_target_effect = {
    DI_ce_set_crown_authority_target_effect = {
        LAW = crown_authority_2
    }
}

DI_ce_set_crown_authority_4_target_effect = {
    DI_ce_set_crown_authority_target_effect = {
        LAW = crown_authority_3
    }
}
