﻿namespace = riseandfall_diadochi_browser

# The decision can remain available to successor-conflict rulers while truces,
# alliances, or other declaration rules temporarily leave the list empty.
riseandfall_diadochi_browser.0004 = {
	type = character_event
	title = riseandfall_diadochi_browser.0001.t
	desc = riseandfall_diadochi_browser.0001.desc_none
	theme = war

	left_portrait = {
		character = root
		animation = personality_bold
	}

	option = { name = riseandfall_diadochi_browser.0001.b }

	after = { remove_variable = rf_diadochi_browser_page }
}

riseandfall_diadochi_browser.0001 = {
	type = character_event
	title = riseandfall_diadochi_browser.0001.t
	desc = riseandfall_diadochi_browser.0001.desc
	theme = war

	left_portrait = {
		character = root
		animation = personality_bold
	}

	# Target options are informational: they save the selected realm and open a
	# detail page instead of declaring the war directly.
	option = {
		name = riseandfall_diadochi_browser.0001.a_1
		trigger = { exists = scope:rf_diadochi_browser_target_ruler_1 }
		custom_tooltip = riseandfall_diadochi_browser.0001.a_1.tt
		hidden_effect = {
			scope:rf_diadochi_browser_target_ruler_1 = { save_scope_as = rf_diadochi_browser_selected_ruler }
			scope:rf_diadochi_browser_target_title_1 = { save_scope_as = rf_diadochi_browser_selected_title }
			set_variable = { name = rf_diadochi_browser_self_strength value = riseandfall_military_power_with_allies }
			set_variable = { name = rf_diadochi_browser_target_strength value = scope:rf_diadochi_browser_target_ruler_1.riseandfall_military_power_with_allies }
			trigger_event = { id = riseandfall_diadochi_browser.0002 delayed = yes }
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.a_2
		trigger = { exists = scope:rf_diadochi_browser_target_ruler_2 }
		custom_tooltip = riseandfall_diadochi_browser.0001.a_2.tt
		hidden_effect = {
			scope:rf_diadochi_browser_target_ruler_2 = { save_scope_as = rf_diadochi_browser_selected_ruler }
			scope:rf_diadochi_browser_target_title_2 = { save_scope_as = rf_diadochi_browser_selected_title }
			set_variable = { name = rf_diadochi_browser_self_strength value = riseandfall_military_power_with_allies }
			set_variable = { name = rf_diadochi_browser_target_strength value = scope:rf_diadochi_browser_target_ruler_2.riseandfall_military_power_with_allies }
			trigger_event = { id = riseandfall_diadochi_browser.0002 delayed = yes }
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.a_3
		trigger = { exists = scope:rf_diadochi_browser_target_ruler_3 }
		custom_tooltip = riseandfall_diadochi_browser.0001.a_3.tt
		hidden_effect = {
			scope:rf_diadochi_browser_target_ruler_3 = { save_scope_as = rf_diadochi_browser_selected_ruler }
			scope:rf_diadochi_browser_target_title_3 = { save_scope_as = rf_diadochi_browser_selected_title }
			set_variable = { name = rf_diadochi_browser_self_strength value = riseandfall_military_power_with_allies }
			set_variable = { name = rf_diadochi_browser_target_strength value = scope:rf_diadochi_browser_target_ruler_3.riseandfall_military_power_with_allies }
			trigger_event = { id = riseandfall_diadochi_browser.0002 delayed = yes }
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.a_4
		trigger = { exists = scope:rf_diadochi_browser_target_ruler_4 }
		custom_tooltip = riseandfall_diadochi_browser.0001.a_4.tt
		hidden_effect = {
			scope:rf_diadochi_browser_target_ruler_4 = { save_scope_as = rf_diadochi_browser_selected_ruler }
			scope:rf_diadochi_browser_target_title_4 = { save_scope_as = rf_diadochi_browser_selected_title }
			set_variable = { name = rf_diadochi_browser_self_strength value = riseandfall_military_power_with_allies }
			set_variable = { name = rf_diadochi_browser_target_strength value = scope:rf_diadochi_browser_target_ruler_4.riseandfall_military_power_with_allies }
			trigger_event = { id = riseandfall_diadochi_browser.0002 delayed = yes }
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.a_5
		trigger = { exists = scope:rf_diadochi_browser_target_ruler_5 }
		custom_tooltip = riseandfall_diadochi_browser.0001.a_5.tt
		hidden_effect = {
			scope:rf_diadochi_browser_target_ruler_5 = { save_scope_as = rf_diadochi_browser_selected_ruler }
			scope:rf_diadochi_browser_target_title_5 = { save_scope_as = rf_diadochi_browser_selected_title }
			set_variable = { name = rf_diadochi_browser_self_strength value = riseandfall_military_power_with_allies }
			set_variable = { name = rf_diadochi_browser_target_strength value = scope:rf_diadochi_browser_target_ruler_5.riseandfall_military_power_with_allies }
			trigger_event = { id = riseandfall_diadochi_browser.0002 delayed = yes }
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.a_6
		trigger = { exists = scope:rf_diadochi_browser_target_ruler_6 }
		custom_tooltip = riseandfall_diadochi_browser.0001.a_6.tt
		hidden_effect = {
			scope:rf_diadochi_browser_target_ruler_6 = { save_scope_as = rf_diadochi_browser_selected_ruler }
			scope:rf_diadochi_browser_target_title_6 = { save_scope_as = rf_diadochi_browser_selected_title }
			set_variable = { name = rf_diadochi_browser_self_strength value = riseandfall_military_power_with_allies }
			set_variable = { name = rf_diadochi_browser_target_strength value = scope:rf_diadochi_browser_target_ruler_6.riseandfall_military_power_with_allies }
			trigger_event = { id = riseandfall_diadochi_browser.0002 delayed = yes }
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.a_7
		trigger = { exists = scope:rf_diadochi_browser_target_ruler_7 }
		custom_tooltip = riseandfall_diadochi_browser.0001.a_7.tt
		hidden_effect = {
			scope:rf_diadochi_browser_target_ruler_7 = { save_scope_as = rf_diadochi_browser_selected_ruler }
			scope:rf_diadochi_browser_target_title_7 = { save_scope_as = rf_diadochi_browser_selected_title }
			set_variable = { name = rf_diadochi_browser_self_strength value = riseandfall_military_power_with_allies }
			set_variable = { name = rf_diadochi_browser_target_strength value = scope:rf_diadochi_browser_target_ruler_7.riseandfall_military_power_with_allies }
			trigger_event = { id = riseandfall_diadochi_browser.0002 delayed = yes }
		}
	}

	# Keep the main event within the fixed event-window height.
	option = {
		name = riseandfall_diadochi_browser.0003.previous_page
		trigger = { var:rf_diadochi_browser_page > 0 }
		hidden_effect = {
			change_variable = { name = rf_diadochi_browser_page add = -1 }
			riseandfall_diadochi_prepare_browser_targets_se = yes
			trigger_event = riseandfall_diadochi_browser.0001
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.next_page
		trigger = { has_variable = rf_diadochi_browser_has_overflow }
		# Paging is only navigation, so reopen the list immediately instead of
		# waiting a game day as the detail-view transition does.
		hidden_effect = {
			change_variable = { name = rf_diadochi_browser_page add = 1 }
			riseandfall_diadochi_prepare_browser_targets_se = yes
			trigger_event = riseandfall_diadochi_browser.0001
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0001.b
		trigger = { always = yes }
		hidden_effect = {
			riseandfall_diadochi_clear_browser_targets_se = yes
			remove_variable = rf_diadochi_browser_page
		}
	}
}

riseandfall_diadochi_browser.0002 = {
	type = character_event
	title = riseandfall_diadochi_browser.0002.t
	desc = riseandfall_diadochi_browser.0002.desc
	theme = war

	trigger = {
		exists = scope:rf_diadochi_browser_selected_ruler
		exists = scope:rf_diadochi_browser_selected_title
		has_variable = rf_diadochi_browser_self_strength
		has_variable = rf_diadochi_browser_target_strength
	}

	left_portrait = {
		character = root
		animation = personality_bold
	}

	right_portrait = {
		character = scope:rf_diadochi_browser_selected_ruler
		animation = personality_bold
	}

	# Rebuild the list when returning so stale eligibility checks are not reused.
	option = {
		name = riseandfall_diadochi_browser.0002.a
		custom_tooltip = riseandfall_diadochi_browser.0002.a.tt
		hidden_effect = {
			clear_saved_scope = rf_diadochi_browser_selected_ruler
			clear_saved_scope = rf_diadochi_browser_selected_title
			remove_variable = rf_diadochi_browser_self_strength
			remove_variable = rf_diadochi_browser_target_strength
			riseandfall_diadochi_prepare_browser_targets_se = yes
			if = {
				limit = { exists = scope:rf_diadochi_browser_target_ruler_1 }
				trigger_event = { id = riseandfall_diadochi_browser.0001 delayed = yes }
			}
		}
	}

	option = {
		name = riseandfall_diadochi_browser.0002.b
		# Closing from the detail page must also discard the list retained for paging.
		hidden_effect = {
			riseandfall_diadochi_clear_browser_targets_se = yes
			remove_variable = rf_diadochi_browser_page
		}
	}

	after = {
		clear_saved_scope = rf_diadochi_browser_selected_ruler
		clear_saved_scope = rf_diadochi_browser_selected_title
		remove_variable = rf_diadochi_browser_self_strength
		remove_variable = rf_diadochi_browser_target_strength
	}
}
