# ============================================================
# INTRIGUE & SCHEME CHAINS TRIGGERS
# ============================================================

# Spy Network Prerequisites
qyv_ai_should_build_spy_network = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        intrigue >= 8
        any_courtier = {
            limit = {
                is_spymaster = yes
                NOT = { has_spy_network_in = root }
            }
            save_scope_as = spymaster
        }
        any_character = {
            limit = {
                NOT = { is_friend_of = root }
                NOT = { is_lover_of = root }
                OR = {
                    is_rival_of = root
                    is_heir = yes
                    has_claim_on = root
                    is_vassal_of = root
                    opinion_of_self < -25
                    is_faction_leader = yes
                }
            }
            save_scope_as = spy_target
        }
    }
}

qyv_ai_spy_network_ready = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_courtier = {
            is_spymaster = yes
            has_spy_network_in = scope:target
            spy_network_progress >= 30
        }
    }
}

qyv_ai_spy_network_high = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_courtier = {
            is_spymaster = yes
            has_spy_network_in = scope:target
            spy_network_progress >= 50
        }
    }
}

# Scheme Chain Triggers (require spy network)
qyv_ai_should_scheme_murder = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        qyv_ai_spy_network_high = { target = scope:murder_target }
        any_character = {
            limit = {
                NOT = { is_friend_of = root }
                NOT = { is_lover_of = root }
                OR = {
                    is_rival_of = root
                    is_heir = yes
                    has_claim_on = root
                    is_vassal_of = root
                    opinion_of_self < -50
                }
            }
            save_scope_as = murder_target
        }
    }
}

qyv_ai_should_scheme_abduct = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        qyv_ai_spy_network_ready = { target = scope:abduct_target }
        any_character = {
            limit = {
                is_heir = yes
                NOT = { is_friend_of = root }
                NOT = { is_lover_of = root }
                is_male = yes
            }
            save_scope_as = abduct_target
        }
    }
}

qyv_ai_should_scheme_hook = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        qyv_ai_spy_network_ready = { target = scope:hook_target }
        any_character = {
            limit = {
                is_vassal_of = root
                opinion_of_self < 20
                NOT = { has_hook_on = root }
            }
            save_scope_as = hook_target
        }
    }
}

qyv_ai_should_scheme_claim = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        qyv_ai_spy_network_ready = { target = scope:claim_target }
        any_character = {
            limit = {
                has_claim_on = root
                NOT = { is_friend_of = root }
            }
            save_scope_as = claim_target
        }
    }
}

qyv_ai_should_scheme_antiking = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        qyv_ai_spy_network_ready = { target = scope:claimant }
        any_character = {
            limit = {
                has_claim_on = root.liege
                NOT = { is_friend_of = root }
                NOT = { is_vassal_of = root }
            }
            save_scope_as = claimant
        }
    }
}

# Secret Exploitation
qyv_ai_should_use_secrets = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        intrigue >= 10
        any_character = {
            limit = {
                has_secret = yes
                NOT = { is_friend_of = root }
                NOT = { is_lover_of = root }
            }
            save_scope_as = secret_holder
        }
    }
}

qyv_ai_should_blackmail = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_character = {
            limit = {
                has_secret = yes
                NOT = { is_friend_of = root }
                opinion_of_self < 0
            }
            save_scope_as = blackmail_target
        }
    }
}

# Spymaster Assignment
qyv_ai_should_assign_spymaster = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_council_position = {
            position = spymaster
            holder = { NOT = { exists = yes } }
        }
        any_realm_courtier = {
            limit = {
                intrigue >= 14
                NOT = { is_on_council = yes }
                NOT = { is_rival_of = root }
            }
            save_scope_as = new_spymaster
        }
    }
}

qyv_ai_should_replace_spymaster = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_council_position = {
            position = spymaster
            holder = {
                exists = yes
                OR = {
                    intrigue < 10
                    is_rival_of = root
                    opinion_of_self < -25
                }
            }
        }
    }
}

# Scheme Chain Detection
qyv_ai_has_hook_on_rival = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_character = {
            is_rival_of = root
            has_hook_on = root
        }
    }
}

qyv_ai_can_force_vassalization_via_hook = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_character = {
            is_vassal_of = root
            has_hook_on = root
            is_powerful = yes
        }
    }
}

qyv_ai_should_expose_secret = {
    trigger = {
        is_ai = yes
        is_ruler = yes
        any_character = {
            has_secret = yes
            is_rival_of = root
        }
    }
}