﻿# Leo VI's Mass Vassal Directives. Exempt marker, by-name override.
#
# Redefines two of vanilla's vassal-directive customizable-localization
# functions: vassal_directive_icon and vassal_directive_text. Each vanilla text
# entry gets a preceding twin with the same trigger plus
# has_variable = leo_mvd_exempt, pointing at a leo_mvd_x_* key that renders the
# exempt version (a gray icon, or the text plus an exempt note).
#
# Customizable-localization functions override by name, last loaded wins, so
# this file does not replace vanilla's 00_vassal_custom_loc.txt. It redefines
# only these two functions and leaves the rest of that file, and any future
# vanilla additions to it, in place. The zz_ prefix loads it last.
#
# Re-diff these two functions against vanilla's 00_vassal_custom_loc.txt after
# every game patch. A new directive means new twin entries here.

vassal_directive_icon = {
	type = character

	text = {
		localization_key = leo_mvd_x_no_directive_icon
		trigger = {
			has_variable = leo_mvd_exempt
			NOR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
		}
	}

	text = {
		localization_key = no_directive_icon
		trigger = {
			NOR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
		}
	}

	text = {
		localization_key = leo_mvd_x_directive_refusal_icon
		trigger = {
			has_variable = leo_mvd_exempt
			OR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
			save_temporary_scope_as = vassal_scope
			NOT = { vassal_is_valid_and_follows_directive_trigger = { VASSAL = scope:vassal_scope LIEGE = scope:vassal_scope.liege } }
		}
	}

	text = {
		localization_key = directive_refusal_icon
		trigger = {
			OR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
			save_temporary_scope_as = vassal_scope
			NOT = { vassal_is_valid_and_follows_directive_trigger = { VASSAL = scope:vassal_scope LIEGE = scope:vassal_scope.liege } }
		}
	}

	text = {
		localization_key = leo_mvd_x_improve_development_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_improve_development
		}
	}

	text = {
		localization_key = improve_development_icon
		trigger = {
			has_character_flag = vassal_directive_improve_development
		}
	}

	text = {
		localization_key = leo_mvd_x_train_commanders_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_train_commanders
		}
	}

	text = {
		localization_key = train_commanders_icon
		trigger = {
			has_character_flag = vassal_directive_train_commanders
		}
	}

	text = {
		localization_key = leo_mvd_x_build_maa_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_build_maa
		}
	}

	text = {
		localization_key = build_maa_icon
		trigger = {
			has_character_flag = vassal_directive_build_maa
		}
	}

	text = {
		localization_key = leo_mvd_x_convert_faith_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_convert_faith
		}
	}

	text = {
		localization_key = convert_faith_icon
		trigger = {
			has_character_flag = vassal_directive_convert_faith
		}
	}

	text = {
		localization_key = leo_mvd_x_convert_culture_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_convert_culture
		}
	}

	text = {
		localization_key = convert_culture_icon
		trigger = {
			has_character_flag = vassal_directive_convert_culture
		}
	}

	text = {
		localization_key = leo_mvd_x_improve_cultural_acceptance_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_improve_cultural_acceptance
		}
	}

	text = {
		localization_key = improve_cultural_acceptance_icon
		trigger = {
			has_character_flag = vassal_directive_improve_cultural_acceptance
		}
	}

	text = {
		localization_key = leo_mvd_x_building_focus_fortification_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_building_focus_fortification
		}
	}

	text = {
		localization_key = building_focus_fortification_icon
		trigger = {
			has_character_flag = vassal_directive_building_focus_fortification
		}
	}

	text = {
		localization_key = leo_mvd_x_building_focus_military_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_building_focus_military
		}
	}

	text = {
		localization_key = building_focus_military_icon
		trigger = {
			has_character_flag = vassal_directive_building_focus_military
		}
	}

	text = {
		localization_key = leo_mvd_x_building_focus_economy_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_building_focus_economy
		}
	}

	text = {
		localization_key = building_focus_economy_icon
		trigger = {
			has_character_flag = vassal_directive_building_focus_economy
		}
	}

	text = {
		localization_key = leo_mvd_x_manage_fertility_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_manage_fertility
		}
	}

	text = {
		localization_key = manage_fertility_icon
		trigger = {
			has_character_flag = vassal_directive_manage_fertility
		}
	}
	text = {
		localization_key = leo_mvd_x_explore_cultures_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_explore_cultures
		}
	}
	text = {
		localization_key = explore_cultures_icon
		trigger = {
			has_character_flag = vassal_directive_explore_cultures
		}
	}
	text = {
		localization_key = leo_mvd_x_raid_innovation_intent_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_raid_innovation_intent
		}
	}
	text = {
		localization_key = raid_innovation_intent_icon
		trigger = {
			has_character_flag = vassal_directive_raid_innovation_intent
		}
	}
	text = {
		localization_key = leo_mvd_x_raid_herd_intent_icon
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_raid_herd_intent
		}
	}
	text = {
		localization_key = raid_herd_intent_icon
		trigger = {
			has_character_flag = vassal_directive_raid_herd_intent
		}
	}

	text = {
		localization_key = blank_line
		trigger = {
			always = no
		}
		fallback = yes
	}
}

vassal_directive_text = {
	type = character

	text = {
		localization_key = leo_mvd_x_no_directive_text
		trigger = {
			has_variable = leo_mvd_exempt
			NOR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
		}
	}

	text = {
		localization_key = no_directive_text
		trigger = {
			NOR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
		}
	}

	text = {
		localization_key = leo_mvd_x_refusing_directive_text
		trigger = {
			has_variable = leo_mvd_exempt
			OR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
			save_temporary_scope_as = vassal_scope
			NOT = { vassal_is_valid_and_follows_directive_trigger = { VASSAL = scope:vassal_scope LIEGE = scope:vassal_scope.liege } }
		}
	}

	text = {
		localization_key = refusing_directive_text
		trigger = {
			OR = {
				has_character_flag = vassal_directive_improve_development
				has_character_flag = vassal_directive_train_commanders
				has_character_flag = vassal_directive_build_maa
				has_character_flag = vassal_directive_convert_faith
				has_character_flag = vassal_directive_convert_culture
				has_character_flag = vassal_directive_improve_cultural_acceptance
				has_character_flag = vassal_directive_building_focus_fortification
				has_character_flag = vassal_directive_building_focus_military
				has_character_flag = vassal_directive_building_focus_economy
				has_character_flag = vassal_directive_manage_fertility
				has_character_flag = vassal_directive_explore_cultures
				has_character_flag = vassal_directive_raid_innovation_intent
				has_character_flag = vassal_directive_raid_herd_intent
			}
			save_temporary_scope_as = vassal_scope
			NOT = { vassal_is_valid_and_follows_directive_trigger = { VASSAL = scope:vassal_scope LIEGE = scope:vassal_scope.liege } }
		}
	}

	text = {
		localization_key = leo_mvd_x_improve_development_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_improve_development
		}
	}

	text = {
		localization_key = improve_development_text
		trigger = {
			has_character_flag = vassal_directive_improve_development
		}
	}

	text = {
		localization_key = leo_mvd_x_train_commanders_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_train_commanders
		}
	}

	text = {
		localization_key = train_commanders_text
		trigger = {
			has_character_flag = vassal_directive_train_commanders
		}
	}

	text = {
		localization_key = leo_mvd_x_build_maa_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_build_maa
		}
	}

	text = {
		localization_key = build_maa_text
		trigger = {
			has_character_flag = vassal_directive_build_maa
		}
	}

	text = {
		localization_key = leo_mvd_x_convert_faith_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_convert_faith
		}
	}

	text = {
		localization_key = convert_faith_text
		trigger = {
			has_character_flag = vassal_directive_convert_faith
		}
	}

	text = {
		localization_key = leo_mvd_x_convert_culture_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_convert_culture
		}
	}

	text = {
		localization_key = convert_culture_text
		trigger = {
			has_character_flag = vassal_directive_convert_culture
		}
	}

	text = {
		localization_key = leo_mvd_x_improve_cultural_acceptance_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_improve_cultural_acceptance
		}
	}

	text = {
		localization_key = improve_cultural_acceptance_text
		trigger = {
			has_character_flag = vassal_directive_improve_cultural_acceptance
		}
	}

	text = {
		localization_key = leo_mvd_x_building_focus_fortification_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_building_focus_fortification
		}
	}

	text = {
		localization_key = building_focus_fortification_text
		trigger = {
			has_character_flag = vassal_directive_building_focus_fortification
		}
	}

	text = {
		localization_key = leo_mvd_x_building_focus_military_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_building_focus_military
		}
	}

	text = {
		localization_key = building_focus_military_text
		trigger = {
			has_character_flag = vassal_directive_building_focus_military
		}
	}

	text = {
		localization_key = leo_mvd_x_building_focus_economy_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_building_focus_economy
		}
	}

	text = {
		localization_key = building_focus_economy_text
		trigger = {
			has_character_flag = vassal_directive_building_focus_economy
		}
	}

	text = {
		localization_key = leo_mvd_x_county_fertility_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_manage_fertility
		}
	}

	text = {
		localization_key = county_fertility_text
		trigger = {
			has_character_flag = vassal_directive_manage_fertility
		}
	}
	text = {
		localization_key = leo_mvd_x_explore_cultures_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_explore_cultures
		}
	}
	text = {
		localization_key = explore_cultures_text
		trigger = {
			has_character_flag = vassal_directive_explore_cultures
		}
	}
	text = {
		localization_key = leo_mvd_x_culture_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_raid_innovation_intent
		}
	}
	text = {
		localization_key = culture_text
		trigger = {
			has_character_flag = vassal_directive_raid_innovation_intent
		}
	}
	text = {
		localization_key = leo_mvd_x_herd_text
		trigger = {
			has_variable = leo_mvd_exempt
			has_character_flag = vassal_directive_raid_herd_intent
		}
	}
	text = {
		localization_key = herd_text
		trigger = {
			has_character_flag = vassal_directive_raid_herd_intent
		}
	}

	text = {
		localization_key = blank_line
		trigger = {
			always = no
		}
		fallback = yes
	}
}
