#  ________   ______   _______   ______   ______   __    __   ______    ______   ________        __       __   ______    ______            _____   ______   __       __  ________   ______         _______    ______   __    __  _______  
#  /        | /      \ /       \ /      | /      \ /  \  /  | /      \  /      \ /        |      /  |  _  /  | /      \  /      \          /     | /      \ /  \     /  |/        | /      \       /       \  /      \ /  \  /  |/       \ 
#  $$$$$$$$/ /$$$$$$  |$$$$$$$  |$$$$$$/ /$$$$$$  |$$  \ $$ |/$$$$$$  |/$$$$$$  |$$$$$$$$/       $$ | / \ $$ |/$$$$$$  |/$$$$$$  |         $$$$$ |/$$$$$$  |$$  \   /$$ |$$$$$$$$/ /$$$$$$  |      $$$$$$$  |/$$$$$$  |$$  \ $$ |$$$$$$$  |
#  $$ |__    $$ \__$$/ $$ |__$$ |  $$ |  $$ |  $$ |$$$  \$$ |$$ |__$$ |$$ | _$$/ $$ |__          $$ |/$  \$$ |$$ |  $$ |$$ |  $$ |            $$ |$$ |__$$ |$$$  \ /$$$ |$$ |__    $$ \__$$/       $$ |__$$ |$$ |  $$ |$$$  \$$ |$$ |  $$ |
#  $$    |   $$      \ $$    $$/   $$ |  $$ |  $$ |$$$$  $$ |$$    $$ |$$ |/    |$$    |         $$ /$$$  $$ |$$ |  $$ |$$ |  $$ |       __   $$ |$$    $$ |$$$$  /$$$$ |$$    |   $$      \       $$    $$< $$ |  $$ |$$$$  $$ |$$ |  $$ |
#  $$$$$/     $$$$$$  |$$$$$$$/    $$ |  $$ |  $$ |$$ $$ $$ |$$$$$$$$ |$$ |$$$$ |$$$$$/          $$ $$/$$ $$ |$$ |  $$ |$$ |  $$ |      /  |  $$ |$$$$$$$$ |$$ $$ $$/$$ |$$$$$/     $$$$$$  |      $$$$$$$  |$$ |  $$ |$$ $$ $$ |$$ |  $$ |
#  $$ |_____ /  \__$$ |$$ |       _$$ |_ $$ \__$$ |$$ |$$$$ |$$ |  $$ |$$ \__$$ |$$ |_____       $$$$/  $$$$ |$$ \__$$ |$$ \__$$ |      $$ \__$$ |$$ |  $$ |$$ |$$$/ $$ |$$ |_____ /  \__$$ |      $$ |__$$ |$$ \__$$ |$$ |$$$$ |$$ |__$$ |
#  $$       |$$    $$/ $$ |      / $$   |$$    $$/ $$ | $$$ |$$ |  $$ |$$    $$/ $$       |      $$$/    $$$ |$$    $$/ $$    $$/       $$    $$/ $$ |  $$ |$$ | $/  $$ |$$       |$$    $$/       $$    $$/ $$    $$/ $$ | $$$ |$$    $$/ 
#  $$$$$$$$/  $$$$$$/  $$/       $$$$$$/  $$$$$$/  $$/   $$/ $$/   $$/  $$$$$$/  $$$$$$$$/       $$/      $$/  $$$$$$/   $$$$$$/         $$$$$$/  $$/   $$/ $$/      $$/ $$$$$$$$/  $$$$$$/        $$$$$$$/   $$$$$$/  $$/   $$/ $$$$$$$/  
#Scripted Localization

#################################################
##=|     Espionage Mechanic Scripted Loc     |=##
##======================| |====================##
#################################################

#Index; Search for these names using ctrl+f and you'll find the section they entitle.
#	Titles
#		getIntelAgency
#		getIntelAgencyCaps
#		getIntelAgencyShort
#		getIntelAgencyFancy
#
#	General
#		TNO_Espionage_GetAgencyDesc
#		TNO_Espionage_GetLeader
#		TNO_Espionage_GetLeaderDesc
#		TNO_Espionage_GetLeaderTitle
#		TNO_Espionage_GetTrainingStatus
#		TNO_Espionage_GetBudget
#		TNO_Espionage_GetInvestment
#
#	Map & Regional Info
#		TNO_Espionage_GetRegionTitle
#		TNO_Espionage_GetSelectedRegionTitle
#		TNO_Espionage_GetRegionDelayedDesc
#		TNO_Espionage_GetRegionTitleTooltip
#
#	Research
#		TNO_Espionage_GetResearchWindowTitle
#		TNO_Espionage_GetResearchState
#		TNO_Espionage_GetResearch
#		TNO_Espionage_GetResearchDesc
#		TNO_Espionage_GetResearchCurrent
#		TNO_Espionage_GetResearchDone
#
#	Recursive Tooltips
#		TNO_Espionage_GetRegionalValues
#		TNO_Espionage_GetRegionalValuesEntry
#		TNO_Espionage_GetRegionalNetwork

#################################################
#                    Titles                     #
#################################################

# Returns the title of the relevant Intel Agency
defined_text = {
	name = getIntelAgency
	text = { localization_key = "[?TNO_Espionage_Agency.GetTokenLocalizedKey]" }
}

# Returns the title of the relevant Intel Agency, in caps
defined_text = {
	name = getIntelAgencyCaps
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { caps_var = token:[AGENCY]_Caps } }
				AGENCY = "[?TNO_Espionage_Agency.GetTokenKey]"
			}
		}
		localization_key = "[?caps_var.GetTokenLocalizedKey]"
	}
}

# Returns the acronym of the relevant Intel Agency
defined_text = {
	name = getIntelAgencyShort
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { short_var = token:[AGENCY]_Short } }
				AGENCY = "[?TNO_Espionage_Agency.GetTokenKey]"
			}
		}
		localization_key = "[?short_var.GetTokenLocalizedKey]"
	}
}

# Returns the acronym of the relevant Intel Agency, but it's prettyed up
defined_text = {
	name = getIntelAgencyFancy
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { fancy_var = token:[AGENCY]_Fancy } }
				AGENCY = "[?TNO_Espionage_Agency.GetTokenKey]"
			}
		}
		localization_key = "[?fancy_var.GetTokenLocalizedKey]"
	}
}

#################################################
#                    General                    #
#################################################

# Returns the Agency's GUI description
defined_text = {
	name = TNO_Espionage_GetAgencyDesc
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { description_var = token:[AGENCY]_Desc } }
				AGENCY = "[?TNO_Espionage_Agency.GetTokenKey]"
			}
		}
		localization_key = "[?description_var.GetTokenLocalizedKey]"
	}
}

# Returns the Agency's leader
defined_text = {
	name = TNO_Espionage_GetLeader
	text = { localization_key = "[?TNO_Espionage_AgencyLeader.GetTokenLocalizedKey]" }
}

# Returns the Agency's leader bio
defined_text = {
	name = TNO_Espionage_GetLeaderDesc
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { bio_var = token:[LEADER]_Desc } }
				LEADER = "[?TNO_Espionage_AgencyLeader.GetTokenKey]"
			}
		}
		localization_key = "[?bio_var.GetTokenLocalizedKey]"
	}
}

# Returns the Agency's leader title
defined_text = {
	name = TNO_Espionage_GetLeaderTitle
	text = { # President (RND)
		trigger = { check_variable = { TNO_Espionage_Agency = token:Espionage_RND } }
		localization_key = "TNO_Espionage_GUI_Leader_Title_President"
	}
	text = { # President (OrPo)
		trigger = { check_variable = { TNO_Espionage_Agency = token:Espionage_HVA } }
		localization_key = "TNO_Espionage_GUI_Leader_Title_President"
	}
	text = { # Chief of SiPo and SD (RSHA)
		trigger = { check_variable = { TNO_Espionage_Agency = token:Espionage_RSHA } }
		localization_key = "TNO_Espionage_GUI_Leader_Title_Chief"
	}
	text = { # Director (default)
		localization_key = "TNO_Espionage_GUI_Leader_Title_Director"
	}
}

# Returns the status of Agent Training
defined_text = {
	name = TNO_Espionage_GetTrainingStatus
	text = { # Active
		trigger = { has_country_flag = TNO_Espionage_IsRecruiting }
		localization_key = "TNO_Espionage_GUI_TrainingProgress_Active_tt"
	}
	text = { # Inactive
		localization_key = "TNO_Espionage_GUI_TrainingProgress_Inactive_tt"
	}
}

# Budget & Investment value displays
defined_text = {
	name = TNO_Espionage_GetBudget
	text = {
		trigger = { set_temp_variable = { BudgetDisp = TNO_Espionage_Budget } multiply_temp_variable = { BudgetDisp = 1000 } }
		localization_key = "[?BudgetDisp]"
	}
}
defined_text = {
	name = TNO_Espionage_GetInvestment
	text = {
		trigger = { set_temp_variable = { InvestmentTemp = TNO_Espionage_Investment } multiply_temp_variable = { InvestmentTemp = 1000 } }
		localization_key = "[?InvestmentTemp]"
	}
}

#################################################
#              Map & Regional Info              #
#################################################

# Returns a Region's title
defined_text = {
	name = TNO_Espionage_GetRegionTitle
	text = { localization_key = "[?Region_v.GetTokenLocalizedKey]" }
}

# Returns the name of the currently selected region
defined_text = {
	name = TNO_Espionage_GetSelectedRegionTitle
	text = {
		trigger = { set_temp_variable = { Region_v = Espionage_SelectedRegion } }
		localization_key = "[TNO_Espionage_GetRegionTitle]"
	}
}

# Returns a Region's Delayed Description
defined_text = {
	name = TNO_Espionage_GetRegionDelayedDesc
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { description_var = token:[REGION]_Desc_[TAG] } }
				REGION = "[?Region_v.GetTokenKey]"
				TAG = "[THIS.GetTag]"
			}
		}
		localization_key = "[?description_var.GetTokenLocalizedKey]"
	}
}

# Returns a Region's title, used in some effect tooltips
defined_text = {
	name = TNO_Espionage_GetRegionTitleTooltip
	text = {
		trigger = { set_temp_variable = { Region_v = RegionID } }
		localization_key = "[TNO_Espionage_GetRegionTitle]"
	}
}

#################################################
#                   Research                    #
#################################################

# Returns title for the Research Window title textbox
defined_text = {
	name = TNO_Espionage_GetResearchWindowTitle
	text = { # GER
		trigger = { tag = GER }
		localization_key = "TNO_Espionage_GUI_TechnologyWindow_Title_GER"
	}
	text = { # USA/Default
		localization_key = "TNO_Espionage_GUI_TechnologyWindow_Title_USA"
	}
}

# Returns activity status of R&D operations
defined_text = {
	name = TNO_Espionage_GetResearchState
	text = { # Inactive
		trigger = { check_variable = { TNO_Espionage_CurrentResearch = -1 } }
		localization_key = "TNO_Espionage_GUI_Research_Inactive"
	}
	text = { # Active
		localization_key = "TNO_Espionage_GUI_Research_Active"
	}
}

# Returns the Title for a particular Tech
defined_text = {
	name = TNO_Espionage_GetResearch
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { tech_var = token:Espionage_[TAG]_Tech_[ID] } }
				ID = "[?Tech_i]"
				TAG = "[THIS.GetTag]"
			}
		}
		localization_key = "[?tech_var.GetTokenLocalizedKey]"
	}
}

# Returns the Desc for a particular Tech
defined_text = {
	name = TNO_Espionage_GetResearchDesc
	text = {
		trigger = {
			meta_trigger = {
				text = { set_temp_variable = { tech_var = token:Espionage_[TAG]_Tech_[ID]_Desc } }
				ID = "[?Tech_i]"
				TAG = "[THIS.GetTag]"
			}
		}
		localization_key = "[?tech_var.GetTokenLocalizedKey]"
	}
}

# Returns the title for a particular Tech being researched
defined_text = {
	name = TNO_Espionage_GetResearchCurrent
	text = {
		trigger = { set_temp_variable = { Tech_i = TNO_Espionage_CurrentResearch } }
		localization_key = "[TNO_Espionage_GetResearch]"
	}
}

# Returns the title for a particular Tech on the Research Complete notification
defined_text = {
	name = TNO_Espionage_GetResearchDone
	text = {
		trigger = { set_temp_variable = { Tech_i = TNO_Espionage_PastResearch } }
		localization_key = "[TNO_Espionage_GetResearch]"
	}
}

#################################################
#               Recursive Tooltips              #
#################################################

# Dynamic list for each Agency's regional Network level
defined_text = {
	name = TNO_Espionage_GetRegionalValues
	text = {
		trigger = {
			NOT = { check_variable = { global.TNO_Espionage_CountriesWithAgencies^num = 0 } }
			set_temp_variable = { Recursion_i = -1 }
		}
		localization_key = "[TNO_Espionage_GetRegionalValuesEntry]"
	}
}
defined_text = {
	name = TNO_Espionage_GetRegionalValuesEntry
	text = {
		trigger = {
			add_to_temp_variable = { Recursion_i = 1 } # Continues the loop
			check_variable = { global.TNO_Espionage_CountriesWithAgencies^num > Recursion_i } # Used to terminate the loop
			var:global.TNO_Espionage_CountriesWithAgencies^Recursion_i = { has_country_flag = TNO_Espionage_Mech_Active }
		}
		localization_key = "[TNO_Espionage_GetRegionalNetwork]"
	}
	text = {
		trigger = { check_variable = { global.TNO_Espionage_CountriesWithAgencies^num > Recursion_i } } # If the above conditions return false for the region but the loop still hasn't been terminated, it will simply just skip the region and continue
		localization_key = "[TNO_Espionage_GetRegionalValuesEntry]"
	}
}

# Returns the actual Network level for each tag's Agency
defined_text = {
	name = TNO_Espionage_GetRegionalNetwork
	text = { # USA
		trigger = { var:global.TNO_Espionage_CountriesWithAgencies^Recursion_i = { tag = USA } }
		localization_key = "TNO_Espionage_GUI_RegionalNetwork_USA"
	}
	text = { # GER
		trigger = { var:global.TNO_Espionage_CountriesWithAgencies^Recursion_i = { tag = GER } }
		localization_key = "TNO_Espionage_GUI_RegionalNetwork_GER"
	}
	text = { # JAP
		trigger = { var:global.TNO_Espionage_CountriesWithAgencies^Recursion_i = { tag = JAP } }
		localization_key = "TNO_Espionage_GUI_RegionalNetwork_JAP"
	}
}