﻿on_game_start_after_lobby = {
    on_actions = {
        udd_apply_unlimited_domain_on_game_start
    }
}

quarterly_playable_pulse = {
    on_actions = {
        udd_apply_unlimited_domain_quarterly
    }
}

on_title_gain = {
    on_actions = {
        udd_apply_unlimited_domain_on_title_gain
    }
}

on_title_gain_inheritance = {
    on_actions = {
        udd_apply_unlimited_domain_on_title_gain_inheritance
    }
}

on_primary_title_change = {
    on_actions = {
        udd_apply_unlimited_domain_on_primary_title_change
    }
}

# Called after succession setup. Vanilla scopes from player_select_destiny_on_actions.txt:
# root = previous/dead character, scope:heir = current player heir/current player character at this point.
on_player_select_destiny_setup = {
    on_actions = {
        udd_apply_unlimited_domain_on_player_select_destiny_setup
    }
}

# Called after the player confirms a destiny character. Root is already the current player character.
on_player_select_destiny_confirmed = {
    on_actions = {
        udd_apply_unlimited_domain_on_player_select_destiny_confirmed
    }
}

udd_apply_unlimited_domain_on_game_start = {
    effect = {
        udd_apply_unlimited_domain_all_players_effect = yes
    }
}

udd_apply_unlimited_domain_quarterly = {
    effect = {
        udd_apply_unlimited_domain_all_players_effect = yes
    }
}

udd_apply_unlimited_domain_on_title_gain = {
    effect = {
        udd_apply_unlimited_domain_all_players_effect = yes
    }
}

udd_apply_unlimited_domain_on_title_gain_inheritance = {
    effect = {
        udd_apply_unlimited_domain_all_players_effect = yes
    }
}

udd_apply_unlimited_domain_on_primary_title_change = {
    effect = {
        udd_apply_unlimited_domain_all_players_effect = yes
    }
}

udd_apply_unlimited_domain_on_player_select_destiny_setup = {
    effect = {
        if = {
            limit = {
                exists = scope:heir
            }
            scope:heir = {
                udd_force_apply_unlimited_domain_player_effect = yes
            }
        }
        udd_apply_unlimited_domain_all_players_effect = yes
    }
}

udd_apply_unlimited_domain_on_player_select_destiny_confirmed = {
    effect = {
        if = {
            limit = {
                exists = scope:previous_player_heir
            }
            scope:previous_player_heir = {
                if = {
                    limit = {
                        has_character_modifier = udd_unlimited_domain_player_modifier
                        NOT = { this = root }
                    }
                    remove_character_modifier = udd_unlimited_domain_player_modifier
                }
            }
        }
        udd_force_apply_unlimited_domain_player_effect = yes
        udd_apply_unlimited_domain_all_players_effect = yes
    }
}
