updating character interactions

This commit is contained in:
trashb0at 2025-04-11 14:29:56 -04:00
parent c7cd996463
commit 9e9e27cc5b
22 changed files with 846 additions and 342 deletions

View file

@ -96,10 +96,13 @@ grant_vassal_interaction = {
trigger_if = {
limit = { scope:actor.liege = scope:recipient }
NOT = {
primary_title = {
any_this_title_or_de_jure_above = {
holder = scope:actor
custom_tooltip = {
text = is_de_jure_liege_of_target
NOT = {
primary_title = {
any_this_title_or_de_jure_above = {
holder = scope:actor
}
}
}
}
@ -279,6 +282,8 @@ retract_vassal_interaction = {
pause_on_receive = yes
icon = icon_liege
interface_priority = 109 #after revoke title
desc = retract_vassal_interaction_desc
on_decline_summary = general_rebellion_decline_summary
@ -1142,6 +1147,7 @@ join_independence_faction_interaction = {
create_claimant_faction_against_interaction = {
icon = vassal_claim_liege_title_interaction
category = interaction_category_vassal
interface_priority = 270
use_diplomatic_range = no
desc = create_claimant_faction_against_interaction_desc
@ -1446,6 +1452,7 @@ invite_to_council_position_interaction = {
force_onto_council = {
category = interaction_category_vassal
interface_priority = 120
icon = council
desc = force_onto_council_desc
@ -2377,7 +2384,8 @@ pardon_interaction = {
}
vassal_claim_liege_title_interaction = {
category = interaction_category_diplomacy
category = interaction_category_vassal
interface_priority = 269 # after Start Claimant Faction
desc = vassal_claim_liege_title_interaction_desc
target_type = title
target_filter = recipient_domain_titles
@ -2888,7 +2896,7 @@ vassal_claim_liege_title_interaction = {
give_vassal_directive_interaction = {
category = interaction_category_vassal
icon = icon_scheme_challenge_status
interface_priority = 60
desc = give_vassal_directive_interaction_desc
auto_accept = yes
@ -3224,3 +3232,114 @@ give_vassal_directive_interaction = {
}
}
}
request_court_position = {
category = interaction_category_vassal
interface_priority = 120
icon = seneschal_court_position
desc = request_court_position_desc
special_interaction = request_court_position
interface = court_task_interaction
target_type = court_position_type
should_use_extra_icon = {
scope:actor = { has_usable_hook = scope:recipient }
}
extra_icon = "gfx/interface/icons/character_interactions/hook_icon.dds"
is_shown = {
NOT = { scope:recipient = scope:actor }
scope:actor.liege ?= scope:recipient
}
on_accept = {
scope:recipient = {
appoint_court_position = {
recipient = scope:actor
court_position = scope:target
}
}
scope:actor = {
if = {
limit = { always = scope:claim_hook }
use_hook = scope:recipient
}
}
}
auto_accept = {
custom_description = {
text = "spending_hook"
subject = scope:actor
object = scope:recipient
scope:claim_hook = yes
scope:actor = { has_strong_hook = scope:recipient }
}
}
send_option = {
is_shown = {
NOT = { scope:actor = scope:recipient }
}
is_valid = {
scope:actor = {
has_usable_hook = scope:recipient
}
}
flag = claim_hook
localization = GENERIC_SPEND_A_HOOK
}
send_options_exclusive = no
ai_accept = {
base = -75
modifier = {
scope:claim_hook ?= yes
add = 100
desc = SCHEME_WEAK_HOOK_USED
}
opinion_modifier = { # More likely if Recipient likes Actor
who = scope:recipient
opinion_target = scope:actor
multiplier = 0.5
desc = AI_OPINION_REASON
}
}
force_notification = yes
}
grant_court_position = {
category = interaction_category_vassal
interface_priority = 120
icon = seneschal_court_position
desc = grant_court_position_desc
special_interaction = grant_court_position
interface = court_task_interaction
target_type = court_position_type
is_shown = {
NOT = { scope:recipient = scope:actor }
scope:recipient.liege ?= scope:actor
}
on_accept = {
scope:actor = {
appoint_court_position = {
recipient = scope:recipient
court_position = scope:target
}
}
}
auto_accept = yes
}