﻿battlefield_duel_choose_weapon_interaction = {
	common_interaction = yes
	interface_priority = 160
	category = interaction_category_friendly
	desc = battlefield_duel_choose_weapon_interaction_desc

	is_shown = { always = no }
	is_valid_showing_failures_only = { }

	on_accept = {
		scope:actor = { battlefield_duel_signature_weapon = yes }
	}
	
	send_option = {
		flag = sword
		localization = "battlefield_duel_signature_weapon_sword"
		is_shown = { scope:actor = { is_ai = no } }
	}
	send_option = {
		flag = mace
		localization = "battlefield_duel_signature_weapon_mace"
	}
	send_option = {
		flag = axe
		localization = "battlefield_duel_signature_weapon_axe"
	}
	send_option = {
		flag = hammer
		localization = "battlefield_duel_signature_weapon_hammer"
	}
	send_option = {
		flag = spear
		localization = "battlefield_duel_signature_weapon_spear"
	}
	send_option = {
		flag = dagger
		localization = "battlefield_duel_signature_weapon_dagger"
	}
}

battlefield_duel_frequency_interaction = {
	common_interaction = yes
	interface_priority = 160
	category = interaction_category_friendly
	desc = battlefield_duel_frequency_interaction_desc

	is_shown = { always = no }
	is_valid_showing_failures_only = { }

	on_accept = {
		scope:actor = { battlefield_duel_frequency_effect = yes }
	}
	
	send_option = {
		flag = commander
		localization = "battlefield_duel_frequency_commander_option"
	}
	send_option = {
		flag = support
		localization = "battlefield_duel_frequency_support_option"
		is_shown = { scope:actor = { is_ai = no } }
	}
	send_option = {
		flag = second_line
		localization = "battlefield_duel_frequency_second_line_option"
	}
	send_option = {
		flag = first_line
		localization = "battlefield_duel_frequency_first_line_option"
	}
}

battlefield_duel_seek_combat_interaction = {
	icon = declare_war_interaction
	interface_priority = 190
	send_name = battlefield_duel_seek_combat_send_name

	category = interaction_category_diplomacy
	common_interaction = yes
	auto_accept = {
		always = yes
	}
	desc = {

		first_valid = {

			triggered_desc = {
				trigger = {
					OR = {
						scope:actor = { has_variable = engaged_in_single_combat }
						scope:recipient = { has_variable = engaged_in_single_combat }
						scope:actor = { has_character_flag = battlefield_duel_pending_prompt }
						scope:recipient = { has_character_flag = battlefield_duel_pending_prompt }
					}
				}
				desc = battlefield_duel_seek_combat_interaction_desc_already_engaged
			}

			triggered_desc = {
				trigger = {
					scope:recipient = { has_character_flag = battlefiel_duel_recipient_spare }
				}
				desc = battlefield_duel_seek_combat_interaction_desc_recently_spared
			}
			triggered_desc = {
				trigger = {
					has_game_rule = agot_battlefield_duel_cooldown_on
					scope:actor = { has_character_flag = agot_battlefield_duel_cooldown }
				}
				desc = battlefield_duel_seek_combat_interaction_desc_actor_recovering
			}
			triggered_desc = {
				trigger = {
					has_game_rule = agot_battlefield_duel_cooldown_on
					scope:recipient = { has_character_flag = agot_battlefield_duel_cooldown }
				}
				desc = battlefield_duel_seek_combat_interaction_desc_recipient_recovering
			}

			triggered_desc = {
				trigger = {
					OR = {
						scope:actor = { has_character_flag = already_fighting }
						scope:recipient = { has_character_flag = already_fighting }
					}
				}
				desc = battlefield_duel_seek_combat_interaction_desc_already_engaged
			}
			triggered_desc = {
				trigger = { scope:actor = { is_current_dragonrider_warfare = yes } }
				desc = battlefield_duel_seek_combat_interaction_desc_actor_dragonrider
			}
			triggered_desc = {
				trigger = { scope:recipient = { is_current_dragonrider_warfare = yes } }
				desc = battlefield_duel_seek_combat_interaction_desc_recipient_dragonrider
			}
			triggered_desc = {
				trigger = {
					scope:recipient = {
						NOT = { battlefield_duel_agot_not_war_decider_from_actor_army_trigger = yes }
					}
				}
				desc = battlefield_duel_seek_combat_interaction_desc_war_leader
			}
			triggered_desc = {
				trigger = {
					scope:recipient = {
						bdp_seek_reputation_only_target_trigger = yes
						bdp_battlefield_stature_value >= 35
						NOT = { bdp_seek_reputation_rank_access_trigger = yes }
					}
				}
				desc = battlefield_duel_seek_combat_interaction_desc_legendary_reputation_required
			}
			triggered_desc = {
				trigger = {
					scope:recipient = {
						bdp_seek_reputation_only_target_trigger = yes
						bdp_battlefield_stature_value >= 18
						bdp_battlefield_stature_value < 35
						NOT = { bdp_seek_reputation_rank_access_trigger = yes }
					}
				}
				desc = battlefield_duel_seek_combat_interaction_desc_renowned_reputation_required
			}
			triggered_desc = {
				trigger = {
					scope:recipient = {
						bdp_seek_reputation_only_target_trigger = yes
						bdp_battlefield_stature_value < 18
						NOT = { bdp_seek_reputation_rank_access_trigger = yes }
					}
				}
				desc = battlefield_duel_seek_combat_interaction_desc_proven_reputation_required
			}
			triggered_desc = {
				trigger = {
					scope:recipient = {
						NOT = {
							OR = {
								bdp_seek_existing_opposing_combatant_trigger = yes
								bdp_seek_landed_enemy_force_owner_trigger = yes
							}
						}
					}
				}
				desc = battlefield_duel_seek_combat_interaction_desc_out_of_reach
			}
			desc = battlefield_duel_seek_combat_interaction_desc
		}
	}

	is_shown = {
		NOT = { scope:recipient = scope:actor }
		scope:actor = {
			is_ai = no
			is_alive = yes
			is_imprisoned = no
			is_commanding_army = yes
			commanding_army = { is_army_in_combat = yes }
		}
		scope:recipient = { is_alive = yes }
	}

	is_valid_showing_failures_only = {
		scope:actor = {
			is_alive = yes
			is_imprisoned = no
			is_commanding_army = yes
			is_current_dragonrider_warfare = no
			NOT = { has_character_flag = battlefield_duel_combat_finished_flag }

			custom_description = {
				text = battlefield_duel_seek_actor_not_already_fighting_tt
				NOT = {
					OR = {
						has_character_flag = already_fighting
						has_variable = engaged_in_single_combat
					}
				}
			}
			trigger_if = {
				limit = { has_game_rule = agot_battlefield_duel_cooldown_on }
				custom_description = {
					text = battlefield_duel_seek_actor_not_on_cooldown_tt
					NOT = { has_character_flag = agot_battlefield_duel_cooldown }
				}
			}
			commanding_army = { is_army_in_combat = yes }
		}
		scope:recipient = {

			custom_description = {
				text = battlefield_duel_seek_not_war_decider_tt
				battlefield_duel_agot_not_war_decider_from_actor_army_trigger = yes
			}
			is_alive = yes
			is_imprisoned = no
			is_current_dragonrider_warfare = no

			trigger_if = {
				limit = {
					scope:actor = {
						NOT = {
							OR = {
								has_character_flag = already_fighting
								has_variable = engaged_in_single_combat
							}
						}
					}
				}
				custom_description = {
					text = battlefield_duel_seek_recipient_not_already_fighting_tt
					NOT = {
						OR = {
							has_character_flag = already_fighting
							has_variable = engaged_in_single_combat
						}
					}
				}
			}

			custom_description = {
				text = battlefield_duel_seek_recipient_recently_spared_tt
				NOT = { has_character_flag = battlefiel_duel_recipient_spare }
			}
			trigger_if = {
				limit = { has_game_rule = agot_battlefield_duel_cooldown_on }
				custom_description = {
					text = battlefield_duel_seek_recipient_not_on_cooldown_tt
					NOT = { has_character_flag = agot_battlefield_duel_cooldown }
				}
			}

			trigger_if = {
				limit = { bdp_seek_reputation_only_target_trigger = yes }
				trigger_if = {
					limit = { bdp_battlefield_stature_value >= 35 }
					custom_description = {
						text = battlefield_duel_seek_legendary_reputation_required_tt
						bdp_seek_reputation_rank_access_trigger = yes
					}
				}
				trigger_else_if = {
					limit = { bdp_battlefield_stature_value >= 18 }
					custom_description = {
						text = battlefield_duel_seek_renowned_reputation_required_tt
						bdp_seek_reputation_rank_access_trigger = yes
					}
				}
				trigger_else = {
					custom_description = {
						text = battlefield_duel_seek_proven_reputation_required_tt
						bdp_seek_reputation_rank_access_trigger = yes
					}
				}
			}
			trigger_else = {
				custom_description = {
					text = battlefield_duel_seek_opposing_side_tt
					bdp_seek_existing_opposing_combatant_trigger = yes
				}
			}
		}
	}

	on_accept = {

		scope:actor = { save_scope_as = battlefield_duel_manual_actor }
		scope:recipient = { save_scope_as = battlefield_duel_manual_target }

		scope:actor = {

			battlefield_duel_lunatic_manual_seek_entry_effect = yes
		}
	}
}
